diff utils.c @ 2827:f717dd23fc23 libavformat

Enable av_read_pause(), av_read_play() and the ASF demuxer's av_read_seek() to use the protocol-native functionality if available. Patch by Bj«Órn Axelsson: bjorn point axelsson at intinor dot se Original thread: [FFmpeg-devel] [PATCH][4/4] Enable use of the extended API Date: Thu Nov 22 16:01:06 CET 2007
author benoit
date Mon, 17 Dec 2007 09:28:46 +0000
parents 173b5cb7efde
children ff463ed64256
line wrap: on
line diff
--- a/utils.c	Sun Dec 16 18:51:00 2007 +0000
+++ b/utils.c	Mon Dec 17 09:28:46 2007 +0000
@@ -2030,16 +2030,20 @@
 
 int av_read_play(AVFormatContext *s)
 {
-    if (!s->iformat->read_play)
-        return AVERROR(ENOSYS);
-    return s->iformat->read_play(s);
+    if (s->iformat->read_play)
+        return s->iformat->read_play(s);
+    if (s->pb && s->pb->read_play)
+        return av_url_read_fplay(s->pb);
+    return AVERROR(ENOSYS);
 }
 
 int av_read_pause(AVFormatContext *s)
 {
-    if (!s->iformat->read_pause)
-        return AVERROR(ENOSYS);
-    return s->iformat->read_pause(s);
+    if (s->iformat->read_pause)
+        return s->iformat->read_pause(s);
+    if (s->pb && s->pb->read_pause)
+        return av_url_read_fpause(s->pb);
+    return AVERROR(ENOSYS);
 }
 
 void av_close_input_file(AVFormatContext *s)