[FFmpeg-devel] [PATCH]lavf/mpegts: Do not print the character coding as part of service name

Carl Eugen Hoyos ceffmpeg at gmail.com
Fri Feb 8 00:26:15 EET 2019


2019-02-07 23:17 GMT+01:00, Jan Ekström <jeebjp at gmail.com>:
> On Thu, Feb 7, 2019 at 5:46 PM Carl Eugen Hoyos <ceffmpeg at gmail.com> wrote:
>>
>> 2019-02-07 16:34 GMT+01:00, Moritz Barsnick <barsnick at gmx.net>:
>> > On Thu, Feb 07, 2019 at 14:40:40 +0100, Carl Eugen Hoyos wrote:
>> >> +    if (p[0] < 0x20) {
>> >> +        p++;
>> >> +        if (--len < 0)
>> >> +            return NULL;
>> >> +    }
>> >
>> > If I understand section "A.2 Selection of character table" of ETSI EN
>> > 300 468 correctly, you need to drop an additional byte if the first
>> > byte (p[0]) is 0x1F, or an additional two bytes if the first one is
>> > 0x10.
>>
>> New patch attached.
>>
>
> This is weird.
>
> I applied this on top of my WIP ARIB branch
> (https://github.com/jeeb/ffmpeg/commits/mpegts_arib_stuff) and now I
> lost service name / provider altogether...
> I mean, the stuff in the branch is "quick and dirty" at this point,
> but it's still peculiar.
>
> This can be seen with both the PID switch sample I recently posted as
> well as with the ARIB captions sample I posted in the libaribb24
> wrapper thread.

Reason is that instead of "(*p < 0x20)" it has to be "(len && *p < 0x20)".

This is also the missing sample, I don't know if I'll succeed with the
conversion.

Carl Eugen


More information about the ffmpeg-devel mailing list