[FFmpeg-devel] [PATCH 2/2] libavformat/mpegts: demux DVB VBI data
Scott Theisen
scott.the.elm at gmail.com
Sat Nov 23 01:54:11 EET 2024
On 11/22/24 16:12, Marton Balint wrote:
>
>
> On Fri, 15 Nov 2024, Scott Theisen wrote:
>
>> From: ulmus-scott <scott.the.elm at gmail.com>
>>
>> DVB VBI data is defined in ETSI EN 301 775 and can include EBU
>> teletext data
>> as defined in ETSI EN 300 472.
>>
>> ETSI EN 300 468 defines teletext_descriptor, VBI_data_descriptor, and
>> VBI_teletext_descriptor, which has the same definition as, but
>> different use
>> from, teletext_descriptor.
>
> Hmm, adding a new codec for VBI data might be OK, but I am not sure if
> there is a better way to automagically let the framework know if there
> are teletext compatible VBI packets, so the teletext decoder can be used.
Would another AVCodecID AV_CODEC_ID_DVB_VBI_WITH_TELETEXT that would use
the teletext decoder work? Would this be AVMEDIA_TYPE_SUBTITLE even
though it also includes data? (Also, what teletext decoder?)
> Or maybe we should simply set the codec id to DVB_TELETEXT if there is
> a VBI_TELETEXT_DESCRIPTOR, and make the teletext decoder parse all
> data units in search for a comptaible data unit id?
>
That would work only if you don't want to use any of the other VBI data,
which is what MythTV currently does, ignoring packets where
data_identifier is not EBU data and data_field()s where data_unit_id is
not EBU teletext data as defined in ETSI EN 300 472.
My main concern is if someone wants to decode the other types of VBI
data how would they do that, or know to try, if it claims it is just EBU
teletext data?
> Because if we set the codec to VBI for VBI_TELETEXT cases, won't this
> break the automatic probing of unknown codecs? (which otherwise might
> recognize the stream as teletext)? So maybe for
> VBI_TELETEXT_DESCRIPTOR case we should keep the coded id NONE and rely
> entirely on probing?
I have no idea how this would interact with the automatic probing.
Regards,
Scott Theisen
More information about the ffmpeg-devel
mailing list