diff options
author | Anssi Hannula <anssi.hannula@iki.fi> | 2013-12-30 09:50:46 +0200 |
---|---|---|
committer | Anssi Hannula <anssi.hannula@iki.fi> | 2013-12-31 03:13:12 +0200 |
commit | 4a4437c0fbc8f7afe0c533070395a42e56b4ee75 (patch) | |
tree | a8332b974af0a167869fceb79ce7693f30a93a0d | |
parent | 61d43a265176e8e724301b7721affbe9f61729d5 (diff) | |
download | ffmpeg-4a4437c0fbc8f7afe0c533070395a42e56b4ee75.tar.gz |
avformat/mpegts: demux timed ID3 metadata
Used in some HLS streams ("Timed Metadata for HTTP Live Streaming").
This is just ID3 tags at arbitrary stream positions, but I still added
"timed" to the codec name to avoid confusion with regular non-stream ID3
tags.
Signed-off-by: Anssi Hannula <anssi.hannula@iki.fi>
-rw-r--r-- | libavcodec/avcodec.h | 1 | ||||
-rw-r--r-- | libavcodec/codec_desc.c | 6 | ||||
-rw-r--r-- | libavformat/mpegts.c | 1 |
3 files changed, 8 insertions, 0 deletions
diff --git a/libavcodec/avcodec.h b/libavcodec/avcodec.h index c614829aaf..37f6807209 100644 --- a/libavcodec/avcodec.h +++ b/libavcodec/avcodec.h @@ -513,6 +513,7 @@ enum AVCodecID { AV_CODEC_ID_OTF = MKBETAG( 0 ,'O','T','F'), AV_CODEC_ID_SMPTE_KLV = MKBETAG('K','L','V','A'), AV_CODEC_ID_DVD_NAV = MKBETAG('D','N','A','V'), + AV_CODEC_ID_TIMED_ID3 = MKBETAG('T','I','D','3'), AV_CODEC_ID_PROBE = 0x19000, ///< codec_id is not known (like AV_CODEC_ID_NONE) but lavf should attempt to identify it diff --git a/libavcodec/codec_desc.c b/libavcodec/codec_desc.c index c62734f69d..1639046570 100644 --- a/libavcodec/codec_desc.c +++ b/libavcodec/codec_desc.c @@ -2622,6 +2622,12 @@ static const AVCodecDescriptor codec_descriptors[] = { .name = "dvd_nav_packet", .long_name = NULL_IF_CONFIG_SMALL("DVD Nav packet"), }, + { + .id = AV_CODEC_ID_TIMED_ID3, + .type = AVMEDIA_TYPE_DATA, + .name = "timed_id3", + .long_name = NULL_IF_CONFIG_SMALL("timed ID3 metadata"), + }, }; diff --git a/libavformat/mpegts.c b/libavformat/mpegts.c index 39b1b5d552..db380cabf5 100644 --- a/libavformat/mpegts.c +++ b/libavformat/mpegts.c @@ -662,6 +662,7 @@ static const StreamType REGD_types[] = { static const StreamType METADATA_types[] = { { MKTAG('K','L','V','A'), AVMEDIA_TYPE_DATA, AV_CODEC_ID_SMPTE_KLV }, + { MKTAG('I','D','3',' '), AVMEDIA_TYPE_DATA, AV_CODEC_ID_TIMED_ID3 }, { 0 }, }; |