[FFmpeg-user] BUG in use of extradata and extradata_size with dvb subtitles and teletext

JULIAN GARDNER joolzg at btinternet.com
Thu Dec 19 16:26:44 CET 2013

----- Original Message -----
> From: Clément Bœsch <u at pkh.me>
> To: FFmpeg user questions <ffmpeg-user at ffmpeg.org>
> Cc: 
> Sent: Thursday, 19 December 2013, 16:07
> Subject: Re: [FFmpeg-user] BUG in use of extradata and extradata_size with dvb subtitles and teletext
> On Thu, Dec 19, 2013 at 02:01:57PM +0000, JULIAN GARDNER wrote:
>>  Im trying to work though the problems we have in converting 
> teletext/dvbsubs to the various systems,
> Cool, I'm looking forward this.
> [...]
>>  2. dvbsubs reencoded FAILS
> [...]
>>  3. dvbsubs copied FAILS
>>  Command line
>>  ffmpeg -i ../testStreams/bbc.ts -c:v libx264 -b:v 1300k -c:s copy -y -f 
> mpegts a_dvb.ts
>>  This runs though the encode cycle but i have yet to find anything, 
> vlc/ffplay/etc that will show the subtitles. Get "invalid subtitle stream 
> id" in vlc
>>  Any ideas on the problem in number 2?
>>  I get onto number 3 when i have number 2 fixed.
> Don't you think you should look at the the remuxing problem (3) instead of
> the encoding first, since you need a correct demuxing/muxing for testing
> this?

Remuxing problems go away as soon as you remove the hack in ffmpeg.c for doing the dual packet!, what is needed in ffmpeg.c is a heartbeat which takes the last updated subtitle, adds on the timeout and waits for this to pass before issuing a "0 object region". im looking into the code for the "subs overlay" hack at the moment. What will happen now is the last subtitle will stay on sreen until a new one arrives.

With all the hacks its hard working out what to look at

> Anyway, for the record, details on these problems can be found in #2024
> and #2989 at least. Thanks for your last comment in #2024 BTW.

No i dont think #2024 is what im looking at, this is new. DVBSUBS are decoded and the 4 bytes for the page ids are correctly remembered but crucially when the output stream is created as a dvbsubs stream the extradata and extradata_size are not updated, so these are NULL and 0.

Now my modification to show the teletext page information, and also the code which puts these back into the new TS are dependant on the extradata size being 0, so any transcoded dvbsubs are flagged in the pmt as as teletext.

> So far we have only one working case: dvDsub → dvBsub transcoding. dvBsub
> to dvBsub is broken in both transcoding (but potentially related to a
> demuxing issue) and transmuxing.

Only working ones are

dvbsubs decoded and overlayed
teletext decoded and overlayed

> Clément B.
> _______________________________________________
> ffmpeg-user mailing list
> ffmpeg-user at ffmpeg.org
> http://ffmpeg.org/mailman/listinfo/ffmpeg-user

More information about the ffmpeg-user mailing list