[FFmpeg-devel] [PATCH v2] mpegts: demux BluRay text subtitles
Paul B Mahol
onemda at gmail.com
Tue Sep 1 13:41:03 CEST 2015
On 9/1/15, Petri Hintukainen <phintuka at gmail.com> wrote:
> On ti, 2015-09-01 at 09:06 +0000, Paul B Mahol wrote:
>> On 9/1/15, Petri Hintukainen <phintuka at gmail.com> wrote:
>> > ---
>> > libavcodec/avcodec.h | 1 +
>> > libavcodec/codec_desc.c | 7 +++++++
>> > libavformat/mpegts.c | 1 +
>> > 3 files changed, 9 insertions(+)
>> >
>> > diff --git a/libavcodec/avcodec.h b/libavcodec/avcodec.h
>> > index 12a6b54..9d38b59 100644
>> > --- a/libavcodec/avcodec.h
>> > +++ b/libavcodec/avcodec.h
>> > @@ -530,6 +530,7 @@ enum AVCodecID {
>> > AV_CODEC_ID_VPLAYER = MKBETAG('V','P','l','r'),
>> > AV_CODEC_ID_PJS = MKBETAG('P','h','J','S'),
>> > AV_CODEC_ID_ASS = MKBETAG('A','S','S',' '), ///< ASS as
>> > defined
>> > in Matroska
>> > + AV_CODEC_ID_HDMV_TEXT_SUBTITLE = MKBETAG('B','D','T','X'),
>> >
>> > /* other specific kind of codecs (generally used for attachments)
>> > */
>> > AV_CODEC_ID_FIRST_UNKNOWN = 0x18000, ///< A dummy ID
>> > pointing
>> > at the start of various fake codecs.
>> > diff --git a/libavcodec/codec_desc.c b/libavcodec/codec_desc.c
>> > index c172bf8..487bc2f 100644
>> > --- a/libavcodec/codec_desc.c
>> > +++ b/libavcodec/codec_desc.c
>> > @@ -2735,6 +2735,13 @@ static const AVCodecDescriptor
>> > codec_descriptors[] =
>> > {
>> > .long_name = NULL_IF_CONFIG_SMALL("WebVTT subtitle"),
>> > .props = AV_CODEC_PROP_TEXT_SUB,
>> > },
>> > + {
>> > + .id = AV_CODEC_ID_HDMV_TEXT_SUBTITLE,
>>
>> Why it must have _SUBTITLE ? Its kind of redundant.
>
> The other BluRay subtitle codec is AV_CODEC_ID_HDMV_PGS_SUBTITLE.
Ah, I did not know about that one, name is fine than.
>
> How about AV_CODEC_ID_HDMV_TEXTST ? AV_CODEC_ID_HDMV_TEXT sounds bit too
> generic.
>
>> > + .type = AVMEDIA_TYPE_SUBTITLE,
>> > + .name = "hdmv_text_subtitle",
>> > + .long_name = NULL_IF_CONFIG_SMALL("HDMV Text subtitle"),
>> > + .props = AV_CODEC_PROP_TEXT_SUB,
>> > + },
>> >
>> > /* other kind of codecs and pseudo-codecs */
>> > {
>> > diff --git a/libavformat/mpegts.c b/libavformat/mpegts.c
>> > index 625d473..bc5c4fe 100644
>> > --- a/libavformat/mpegts.c
>> > +++ b/libavformat/mpegts.c
>> > @@ -718,6 +718,7 @@ static const StreamType HDMV_types[] = {
>> > { 0xa1, AVMEDIA_TYPE_AUDIO, AV_CODEC_ID_EAC3 }, /*
>> > E-AC3 Secondary Audio */
>> > { 0xa2, AVMEDIA_TYPE_AUDIO, AV_CODEC_ID_DTS }, /*
>> > DTS
>> > Express Secondary Audio */
>> > { 0x90, AVMEDIA_TYPE_SUBTITLE, AV_CODEC_ID_HDMV_PGS_SUBTITLE },
>> > + { 0x92, AVMEDIA_TYPE_SUBTITLE, AV_CODEC_ID_HDMV_TEXT_SUBTITLE },
>> > { 0 },
>> > };
>> >
>> > --
>> > 2.1.4
>> >
>> > _______________________________________________
>> > ffmpeg-devel mailing list
>> > ffmpeg-devel at ffmpeg.org
>> > http://ffmpeg.org/mailman/listinfo/ffmpeg-devel
>> >
>
>
> _______________________________________________
> ffmpeg-devel mailing list
> ffmpeg-devel at ffmpeg.org
> http://ffmpeg.org/mailman/listinfo/ffmpeg-devel
>
More information about the ffmpeg-devel
mailing list