ffmpeg | branch: master | Michael Niedermayer <[email protected]> | Mon May 11 22:38:21 2015 +0200| [62a1e0035a1438883510f47e8d9af0df5d3e9b53] | committer: Michael Niedermayer
avformat/mlvdec: Use AVFormatContext->open_cb() Signed-off-by: Michael Niedermayer <[email protected]> > http://git.videolan.org/gitweb.cgi/ffmpeg.git/?a=commit;h=62a1e0035a1438883510f47e8d9af0df5d3e9b53 --- libavformat/mlvdec.c | 9 ++++++++- 1 file changed, 8 insertions(+), 1 deletion(-) diff --git a/libavformat/mlvdec.c b/libavformat/mlvdec.c index 9d821bb..aa1ba60 100644 --- a/libavformat/mlvdec.c +++ b/libavformat/mlvdec.c @@ -28,6 +28,7 @@ #include "libavutil/intreadwrite.h" #include "libavutil/rational.h" #include "avformat.h" +#include "avio_internal.h" #include "internal.h" #include "riff.h" @@ -331,11 +332,17 @@ static int read_header(AVFormatContext *avctx) if (strlen(avctx->filename) > 2) { int i; char *filename = av_strdup(avctx->filename); + AVOpenCallback open_func = avctx->open_cb; + if (!filename) return AVERROR(ENOMEM); + + if (!open_func) + open_func = ffio_open2_wrapper; + for (i = 0; i < 100; i++) { snprintf(filename + strlen(filename) - 2, 3, "%02d", i); - if (avio_open2(&mlv->pb[i], filename, AVIO_FLAG_READ, &avctx->interrupt_callback, NULL) < 0) + if (open_func(avctx, &mlv->pb[i], filename, AVIO_FLAG_READ, &avctx->interrupt_callback, NULL) < 0) break; if (check_file_header(mlv->pb[i], guid) < 0) { av_log(avctx, AV_LOG_WARNING, "ignoring %s; bad format or guid mismatch\n", filename); _______________________________________________ ffmpeg-cvslog mailing list [email protected] http://ffmpeg.org/mailman/listinfo/ffmpeg-cvslog
