mirror of https://git.ffmpeg.org/ffmpeg.git
avformat/vobsub: compare correct packet stream IDs
The stream ID is essentially an arbitrary number defined by the .idx file headers. They have to match the IDs in the .sub stream. The vobsub demuxer assumed the IDs would just start from 0, increassing by 1 for each stream. This is not correct. In the sample I had, the IDs were starting from 1, leading to no subtitles being displayed at all. Fix this by using the correct stream ID. Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
This commit is contained in:
parent
a0e6e471db
commit
a47ad06baf
|
@ -939,7 +939,7 @@ static int vobsub_read_packet(AVFormatContext *s, AVPacket *pkt)
|
||||||
total_read += pkt_size;
|
total_read += pkt_size;
|
||||||
|
|
||||||
/* the current chunk doesn't match the stream index (unlikely) */
|
/* the current chunk doesn't match the stream index (unlikely) */
|
||||||
if ((startcode & 0x1f) != idx_pkt.stream_index)
|
if ((startcode & 0x1f) != s->streams[idx_pkt.stream_index]->id)
|
||||||
break;
|
break;
|
||||||
|
|
||||||
ret = av_grow_packet(pkt, to_read);
|
ret = av_grow_packet(pkt, to_read);
|
||||||
|
|
Loading…
Reference in New Issue