Commit 37f0dbbc authored by Andreas Rheinhardt's avatar Andreas Rheinhardt

avformat: Enforce codec_id where appropriate

E.g. chromaprint expects to be fed 16bit signed PCM
in native endianness, yet there was no check for this.
Similarly for other muxers. Use the new
FF_OFMT_FLAG_ONLY_DEFAULT_CODECS to enfore this where
appropriate, e.g. for pcm/raw muxers.
Signed-off-by: 's avatarAndreas Rheinhardt <andreas.rheinhardt@outlook.com>
parent 2ccb4551
......@@ -179,7 +179,8 @@ const FFOutputFormat ff_chromaprint_muxer = {
.p.audio_codec = AV_NE(AV_CODEC_ID_PCM_S16BE, AV_CODEC_ID_PCM_S16LE),
.p.video_codec = AV_CODEC_ID_NONE,
.p.subtitle_codec = AV_CODEC_ID_NONE,
.flags_internal = FF_OFMT_FLAG_MAX_ONE_OF_EACH,
.flags_internal = FF_OFMT_FLAG_MAX_ONE_OF_EACH |
FF_OFMT_FLAG_ONLY_DEFAULT_CODECS,
.write_header = write_header,
.write_packet = write_packet,
.write_trailer = write_trailer,
......
......@@ -64,7 +64,8 @@ const FFOutputFormat ff_daud_muxer = {
.p.video_codec = AV_CODEC_ID_NONE,
.p.subtitle_codec = AV_CODEC_ID_NONE,
.p.flags = AVFMT_NOTIMESTAMPS,
.flags_internal = FF_OFMT_FLAG_MAX_ONE_OF_EACH,
.flags_internal = FF_OFMT_FLAG_MAX_ONE_OF_EACH |
FF_OFMT_FLAG_ONLY_DEFAULT_CODECS,
.init = daud_init,
.write_packet = daud_write_packet,
};
......@@ -67,7 +67,8 @@ const FFOutputFormat ff_filmstrip_muxer = {
.p.audio_codec = AV_CODEC_ID_NONE,
.p.video_codec = AV_CODEC_ID_RAWVIDEO,
.p.subtitle_codec = AV_CODEC_ID_NONE,
.flags_internal = FF_OFMT_FLAG_MAX_ONE_OF_EACH,
.flags_internal = FF_OFMT_FLAG_MAX_ONE_OF_EACH |
FF_OFMT_FLAG_ONLY_DEFAULT_CODECS,
.write_header = write_header,
.write_packet = ff_raw_write_packet,
.write_trailer = write_trailer,
......
......@@ -199,7 +199,8 @@ const FFOutputFormat ff_fits_muxer = {
.p.audio_codec = AV_CODEC_ID_NONE,
.p.video_codec = AV_CODEC_ID_FITS,
.p.subtitle_codec = AV_CODEC_ID_NONE,
.flags_internal = FF_OFMT_FLAG_MAX_ONE_OF_EACH,
.flags_internal = FF_OFMT_FLAG_MAX_ONE_OF_EACH |
FF_OFMT_FLAG_ONLY_DEFAULT_CODECS,
.priv_data_size = sizeof(FITSContext),
.write_header = fits_write_header,
.write_packet = fits_write_packet,
......
......@@ -67,7 +67,8 @@ const FFOutputFormat ff_roq_muxer = {
.p.audio_codec = AV_CODEC_ID_ROQ_DPCM,
.p.video_codec = AV_CODEC_ID_ROQ,
.p.subtitle_codec = AV_CODEC_ID_NONE,
.flags_internal = FF_OFMT_FLAG_MAX_ONE_OF_EACH,
.flags_internal = FF_OFMT_FLAG_MAX_ONE_OF_EACH |
FF_OFMT_FLAG_ONLY_DEFAULT_CODECS,
.write_header = roq_write_header,
.write_packet = ff_raw_write_packet,
};
......@@ -39,7 +39,8 @@ const FFOutputFormat ff_jacosub_muxer = {
.p.video_codec = AV_CODEC_ID_NONE,
.p.audio_codec = AV_CODEC_ID_NONE,
.p.subtitle_codec = AV_CODEC_ID_JACOSUB,
.flags_internal = FF_OFMT_FLAG_MAX_ONE_OF_EACH,
.flags_internal = FF_OFMT_FLAG_MAX_ONE_OF_EACH |
FF_OFMT_FLAG_ONLY_DEFAULT_CODECS,
.write_header = jacosub_write_header,
.write_packet = ff_raw_write_packet,
};
......@@ -320,7 +320,8 @@ const FFOutputFormat ff_mmf_muxer = {
.p.audio_codec = AV_CODEC_ID_ADPCM_YAMAHA,
.p.video_codec = AV_CODEC_ID_NONE,
.p.subtitle_codec = AV_CODEC_ID_NONE,
.flags_internal = FF_OFMT_FLAG_MAX_ONE_OF_EACH,
.flags_internal = FF_OFMT_FLAG_MAX_ONE_OF_EACH |
FF_OFMT_FLAG_ONLY_DEFAULT_CODECS,
.write_header = mmf_write_header,
.write_packet = ff_raw_write_packet,
.write_trailer = mmf_write_trailer,
......
......@@ -70,6 +70,8 @@ const FFOutputFormat ff_mpjpeg_muxer = {
.priv_data_size = sizeof(MPJPEGContext),
.p.audio_codec = AV_CODEC_ID_NONE,
.p.video_codec = AV_CODEC_ID_MJPEG,
.p.subtitle_codec = AV_CODEC_ID_NONE,
.flags_internal = FF_OFMT_FLAG_ONLY_DEFAULT_CODECS,
.write_header = mpjpeg_write_header,
.write_packet = mpjpeg_write_packet,
.p.flags = AVFMT_NOTIMESTAMPS,
......
......@@ -35,7 +35,8 @@ const FFOutputFormat ff_pcm_ ## name_ ## _muxer = { \
.p.video_codec = AV_CODEC_ID_NONE, \
.p.subtitle_codec = AV_CODEC_ID_NONE, \
.p.flags = AVFMT_NOTIMESTAMPS, \
.flags_internal = FF_OFMT_FLAG_MAX_ONE_OF_EACH, \
.flags_internal = FF_OFMT_FLAG_MAX_ONE_OF_EACH | \
FF_OFMT_FLAG_ONLY_DEFAULT_CODECS, \
.write_packet = ff_raw_write_packet, \
};
#define PCMDEF_2(name, long_name, ext, codec, enabled) \
......
This diff is collapsed.
......@@ -169,7 +169,8 @@ const FFOutputFormat ff_tta_muxer = {
.p.audio_codec = AV_CODEC_ID_TTA,
.p.video_codec = AV_CODEC_ID_NONE,
.p.subtitle_codec = AV_CODEC_ID_NONE,
.flags_internal = FF_OFMT_FLAG_MAX_ONE_OF_EACH,
.flags_internal = FF_OFMT_FLAG_MAX_ONE_OF_EACH |
FF_OFMT_FLAG_ONLY_DEFAULT_CODECS,
.init = tta_init,
.deinit = tta_deinit,
.write_header = tta_write_header,
......
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