avstream_video->codec->color_range = AVCOL_RANGE_MPEG; // Full vs. limited range (output_ycbcr_format.full_range).
avstream_video->codec->chroma_sample_location = AVCHROMA_LOC_LEFT; // Chroma sample location. See chroma_offset_0[] in Mixer::subsample_chroma().
avstream_video->codec->field_order = AV_FIELD_PROGRESSIVE;
avstream_video->codec->color_range = AVCOL_RANGE_MPEG; // Full vs. limited range (output_ycbcr_format.full_range).
avstream_video->codec->chroma_sample_location = AVCHROMA_LOC_LEFT; // Chroma sample location. See chroma_offset_0[] in Mixer::subsample_chroma().
avstream_video->codec->field_order = AV_FIELD_PROGRESSIVE;
AVCodec *codec_audio = avcodec_find_encoder(AUDIO_OUTPUT_CODEC);
avstream_audio = avformat_new_stream(avctx, codec_audio);
AVCodec *codec_audio = avcodec_find_encoder(AUDIO_OUTPUT_CODEC);
avstream_audio = avformat_new_stream(avctx, codec_audio);
avstream_audio->codec->channels = 2;
avstream_audio->codec->channel_layout = AV_CH_LAYOUT_STEREO;
avstream_audio->codec->time_base = AVRational{1, TIMEBASE};
avstream_audio->codec->channels = 2;
avstream_audio->codec->channel_layout = AV_CH_LAYOUT_STEREO;
avstream_audio->codec->time_base = AVRational{1, TIMEBASE};
AVDictionary *options = NULL;
vector<pair<string, string>> opts = MUX_OPTS;
AVDictionary *options = NULL;
vector<pair<string, string>> opts = MUX_OPTS;