[FFmpeg-cvslog] avformat/mpeg: Use av_find_input_format() instead of directly linking to the demuxer
Michael Niedermayer
git at videolan.org
Sat Oct 25 16:39:21 CEST 2014
ffmpeg | branch: master | Michael Niedermayer <michaelni at gmx.at> | Sat Oct 25 16:28:41 2014 +0200| [ff03df6475708d86d48f25bfde0f1602916bb429] | committer: Michael Niedermayer
avformat/mpeg: Use av_find_input_format() instead of directly linking to the demuxer
Signed-off-by: Michael Niedermayer <michaelni at gmx.at>
> http://git.videolan.org/gitweb.cgi/ffmpeg.git/?a=commit;h=ff03df6475708d86d48f25bfde0f1602916bb429
---
libavformat/mpeg.c | 6 +++++-
1 file changed, 5 insertions(+), 1 deletion(-)
diff --git a/libavformat/mpeg.c b/libavformat/mpeg.c
index 369affd..e8e1b08 100644
--- a/libavformat/mpeg.c
+++ b/libavformat/mpeg.c
@@ -683,6 +683,7 @@ static int vobsub_read_header(AVFormatContext *s)
int stream_id = -1;
char id[64] = {0};
char alt[MAX_LINE_SIZE] = {0};
+ AVInputFormat *iformat;
sub_name = av_strdup(s->filename);
fname_len = strlen(sub_name);
@@ -696,6 +697,9 @@ static int vobsub_read_header(AVFormatContext *s)
memcpy(ext, !strncmp(ext, "IDX", 3) ? "SUB" : "sub", 3);
av_log(s, AV_LOG_VERBOSE, "IDX/SUB: %s -> %s\n", s->filename, sub_name);
+ if (!(iformat = av_find_input_format("mpeg")))
+ return AVERROR_DEMUXER_NOT_FOUND;
+
vobsub->sub_ctx = avformat_alloc_context();
if (!vobsub->sub_ctx)
return AVERROR(ENOMEM);
@@ -703,7 +707,7 @@ static int vobsub_read_header(AVFormatContext *s)
if ((ret = ff_copy_whitelists(vobsub->sub_ctx, s)) < 0)
goto end;
- ret = avformat_open_input(&vobsub->sub_ctx, sub_name, &ff_mpegps_demuxer, NULL);
+ ret = avformat_open_input(&vobsub->sub_ctx, sub_name, iformat, NULL);
if (ret < 0) {
av_log(s, AV_LOG_ERROR, "Unable to open %s as MPEG subtitles\n", sub_name);
goto end;
More information about the ffmpeg-cvslog
mailing list