Commit 2e01def0 authored by Stefano Sabatini's avatar Stefano Sabatini

Define ff_nut_video_tags and make Nut muxer and demuxer set it in

codec_tag.

Originally committed as revision 23259 to svn://svn.ffmpeg.org/ffmpeg/trunk
parent 6d9b7a7d
...@@ -31,6 +31,39 @@ const AVCodecTag ff_nut_subtitle_tags[] = { ...@@ -31,6 +31,39 @@ const AVCodecTag ff_nut_subtitle_tags[] = {
{ CODEC_ID_NONE , 0 } { CODEC_ID_NONE , 0 }
}; };
const AVCodecTag ff_nut_video_tags[] = {
{ CODEC_ID_RAWVIDEO, MKTAG('R', 'G', 'B', 15 ) },
{ CODEC_ID_RAWVIDEO, MKTAG('B', 'G', 'R', 15 ) },
{ CODEC_ID_RAWVIDEO, MKTAG('R', 'G', 'B', 16 ) },
{ CODEC_ID_RAWVIDEO, MKTAG('B', 'G', 'R', 16 ) },
{ CODEC_ID_RAWVIDEO, MKTAG(15 , 'B', 'G', 'R') },
{ CODEC_ID_RAWVIDEO, MKTAG(15 , 'R', 'G', 'B') },
{ CODEC_ID_RAWVIDEO, MKTAG(16 , 'B', 'G', 'R') },
{ CODEC_ID_RAWVIDEO, MKTAG(16 , 'R', 'G', 'B') },
{ CODEC_ID_RAWVIDEO, MKTAG('R', 'G', 'B', 'A') },
{ CODEC_ID_RAWVIDEO, MKTAG('B', 'G', 'R', 'A') },
{ CODEC_ID_RAWVIDEO, MKTAG('A', 'B', 'G', 'R') },
{ CODEC_ID_RAWVIDEO, MKTAG('A', 'R', 'G', 'B') },
{ CODEC_ID_RAWVIDEO, MKTAG('R', 'G', 'B', 24 ) },
{ CODEC_ID_RAWVIDEO, MKTAG('B', 'G', 'R', 24 ) },
{ CODEC_ID_RAWVIDEO, MKTAG('4', '1', '1', 'P') },
{ CODEC_ID_RAWVIDEO, MKTAG('4', '2', '2', 'P') },
{ CODEC_ID_RAWVIDEO, MKTAG('4', '2', '2', 'P') },
{ CODEC_ID_RAWVIDEO, MKTAG('4', '4', '0', 'P') },
{ CODEC_ID_RAWVIDEO, MKTAG('4', '4', '0', 'P') },
{ CODEC_ID_RAWVIDEO, MKTAG('4', '4', '4', 'P') },
{ CODEC_ID_RAWVIDEO, MKTAG('4', '4', '4', 'P') },
{ CODEC_ID_RAWVIDEO, MKTAG('B', '1', 'W', '0') },
{ CODEC_ID_RAWVIDEO, MKTAG('B', '0', 'W', '1') },
{ CODEC_ID_RAWVIDEO, MKTAG('B', 'G', 'R', 8 ) },
{ CODEC_ID_RAWVIDEO, MKTAG('R', 'G', 'B', 8 ) },
{ CODEC_ID_RAWVIDEO, MKTAG('B', 'G', 'R', 4 ) },
{ CODEC_ID_RAWVIDEO, MKTAG('R', 'G', 'B', 4 ) },
{ CODEC_ID_RAWVIDEO, MKTAG('R', 'G', 'B', 48 ) },
{ CODEC_ID_RAWVIDEO, MKTAG(48 , 'R', 'G', 'B') },
{ CODEC_ID_NONE , 0 }
};
void ff_nut_reset_ts(NUTContext *nut, AVRational time_base, int64_t val){ void ff_nut_reset_ts(NUTContext *nut, AVRational time_base, int64_t val){
int i; int i;
for(i=0; i<nut->avf->nb_streams; i++){ for(i=0; i<nut->avf->nb_streams; i++){
......
...@@ -99,6 +99,7 @@ typedef struct { ...@@ -99,6 +99,7 @@ typedef struct {
} NUTContext; } NUTContext;
extern const AVCodecTag ff_nut_subtitle_tags[]; extern const AVCodecTag ff_nut_subtitle_tags[];
extern const AVCodecTag ff_nut_video_tags[];
typedef struct { typedef struct {
char str[9]; char str[9];
......
...@@ -924,5 +924,6 @@ AVInputFormat nut_demuxer = { ...@@ -924,5 +924,6 @@ AVInputFormat nut_demuxer = {
read_seek, read_seek,
.extensions = "nut", .extensions = "nut",
.metadata_conv = ff_nut_metadata_conv, .metadata_conv = ff_nut_metadata_conv,
.codec_tag = (const AVCodecTag * const []) { ff_codec_bmp_tags, ff_nut_video_tags, ff_codec_wav_tags, ff_nut_subtitle_tags, 0 },
}; };
#endif #endif
...@@ -824,6 +824,6 @@ AVOutputFormat nut_muxer = { ...@@ -824,6 +824,6 @@ AVOutputFormat nut_muxer = {
write_packet, write_packet,
write_trailer, write_trailer,
.flags = AVFMT_GLOBALHEADER | AVFMT_VARIABLE_FPS, .flags = AVFMT_GLOBALHEADER | AVFMT_VARIABLE_FPS,
.codec_tag= (const AVCodecTag* const []){ff_codec_bmp_tags, ff_codec_wav_tags, ff_nut_subtitle_tags, 0}, .codec_tag = (const AVCodecTag * const []){ ff_codec_bmp_tags, ff_nut_video_tags, ff_codec_wav_tags, ff_nut_subtitle_tags, 0 },
.metadata_conv = ff_nut_metadata_conv, .metadata_conv = ff_nut_metadata_conv,
}; };
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