On 2012-10-29 13:16:20 +0100, Luca Barbato wrote:
> Plain text (utf8 encoded) data can be muxed and demuxed in nut.
> ---
>
> Now with a section for data in the documentation as well.
>
> doc/nut.texi | 6 ++++++
> libavformat/nut.c | 7 ++++++-
> libavformat/nut.h | 1 +
> libavformat/nutdec.c | 1 +
> 4 files changed, 14 insertions(+), 1 deletion(-)
>
> diff --git a/doc/nut.texi b/doc/nut.texi
> index 1c23934..9b84241 100644
> --- a/doc/nut.texi
> +++ b/doc/nut.texi
> @@ -66,6 +66,12 @@ PFD[32] would for example be signed 32 bit little-endian
> IEEE float
> @item DVBS @tab DVB subtitles
> @end multitable
>
> +@section Raw Data
> +
> +@multitable @columnfractions .4 .4
> +@item UTF8 @tab Raw UTF-8
> +@end multitable
> +
> @section Codecs
>
> @multitable @columnfractions .4 .4
> diff --git a/libavformat/nut.c b/libavformat/nut.c
> index e367d1c..85b126b 100644
> --- a/libavformat/nut.c
> +++ b/libavformat/nut.c
> @@ -33,6 +33,11 @@ const AVCodecTag ff_nut_subtitle_tags[] = {
> { AV_CODEC_ID_NONE , 0 }
> };
>
> +const AVCodecTag ff_nut_data_tags[] = {
> + { AV_CODEC_ID_TEXT , MKTAG('U', 'T', 'F', '8') },
> + { AV_CODEC_ID_NONE , 0 }
> +};
> +
> const AVCodecTag ff_nut_video_tags[] = {
> { AV_CODEC_ID_RAWVIDEO, MKTAG('R', 'G', 'B', 15 ) },
> { AV_CODEC_ID_RAWVIDEO, MKTAG('B', 'G', 'R', 15 ) },
> @@ -117,7 +122,7 @@ const AVCodecTag ff_nut_audio_tags[] = {
>
> const AVCodecTag * const ff_nut_codec_tags[] = {
> ff_nut_video_tags, ff_nut_audio_tags, ff_nut_subtitle_tags,
> - ff_codec_bmp_tags, ff_codec_wav_tags, 0
> + ff_codec_bmp_tags, ff_codec_wav_tags, ff_nut_data_tags, 0
> };
>
> void ff_nut_reset_ts(NUTContext *nut, AVRational time_base, int64_t val){
> diff --git a/libavformat/nut.h b/libavformat/nut.h
> index a91a109..5f624eb 100644
> --- a/libavformat/nut.h
> +++ b/libavformat/nut.h
> @@ -106,6 +106,7 @@ typedef struct NUTContext {
> extern const AVCodecTag ff_nut_subtitle_tags[];
> extern const AVCodecTag ff_nut_video_tags[];
> extern const AVCodecTag ff_nut_audio_tags[];
> +extern const AVCodecTag ff_nut_data_tags[];
>
> extern const AVCodecTag * const ff_nut_codec_tags[];
>
> diff --git a/libavformat/nutdec.c b/libavformat/nutdec.c
> index 9b1891f..9ce0519 100644
> --- a/libavformat/nutdec.c
> +++ b/libavformat/nutdec.c
> @@ -371,6 +371,7 @@ static int decode_stream_header(NUTContext *nut)
> break;
> case 3:
> st->codec->codec_type = AVMEDIA_TYPE_DATA;
> + st->codec->codec_id = ff_codec_get_id(ff_nut_data_tags, tmp);
> break;
> default:
> av_log(s, AV_LOG_ERROR, "unknown stream class (%d)\n", class);
ok
Janne
_______________________________________________
libav-devel mailing list
[email protected]
https://lists.libav.org/mailman/listinfo/libav-devel