Commit d4bff9f1 authored by Luca Barbato's avatar Luca Barbato
Browse files

nut: support textual data

Plain text (utf8 encoded) data can be muxed and demuxed in nut.
parent 07585ffa
......@@ -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
......
......@@ -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){
......
......@@ -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[];
......
......@@ -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);
......
Markdown is supported
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment