Lines Matching refs:par
56 AVCodecParameters *par, int flags)
66 if (!par->codec_tag || par->codec_tag > 0xffff)
69 if (par->codec_id == AV_CODEC_ID_ADPCM_SWF && par->block_align == 0) {
71 avcodec_get_name(par->codec_id));
78 frame_size = av_get_audio_frame_duration2(par, par->block_align);
80 waveformatextensible = (par->ch_layout.order == AV_CHANNEL_ORDER_NATIVE &&
81 av_channel_layout_compare(&par->ch_layout, &(AVChannelLayout)AV_CHANNEL_LAYOUT_MONO) &&
82 av_channel_layout_compare(&par->ch_layout, &(AVChannelLayout)AV_CHANNEL_LAYOUT_STEREO)) ||
83 par->sample_rate > 48000 ||
84 par->codec_id == AV_CODEC_ID_EAC3 || par->codec_id == AV_CODEC_ID_DFPWM ||
85 av_get_bits_per_sample(par->codec_id) > 16;
90 avio_wl16(pb, par->codec_tag);
92 avio_wl16(pb, par->ch_layout.nb_channels);
93 avio_wl32(pb, par->sample_rate);
94 if (par->codec_id == AV_CODEC_ID_ATRAC3 ||
95 par->codec_id == AV_CODEC_ID_G723_1 ||
96 par->codec_id == AV_CODEC_ID_MP2 ||
97 par->codec_id == AV_CODEC_ID_MP3 ||
98 par->codec_id == AV_CODEC_ID_GSM_MS) {
101 if (!(bps = av_get_bits_per_sample(par->codec_id))) {
102 if (par->bits_per_coded_sample)
103 bps = par->bits_per_coded_sample;
108 if (bps != par->bits_per_coded_sample && par->bits_per_coded_sample) {
112 par->bits_per_coded_sample, bps);
115 if (par->codec_id == AV_CODEC_ID_MP2) {
116 blkalign = (144 * par->bit_rate - 1)/par->sample_rate + 1;
117 } else if (par->codec_id == AV_CODEC_ID_MP3) {
118 blkalign = 576 * (par->sample_rate <= (24000 + 32000)/2 ? 1 : 2);
119 } else if (par->codec_id == AV_CODEC_ID_AC3) {
121 } else if (par->codec_id == AV_CODEC_ID_AAC) {
122 blkalign = 768 * par->ch_layout.nb_channels; /* maximum bytes per frame */
123 } else if (par->codec_id == AV_CODEC_ID_G723_1) {
125 } else if (par->block_align != 0) { /* specified by the codec */
126 blkalign = par->block_align;
128 blkalign = bps * par->ch_layout.nb_channels / av_gcd(8, bps);
129 if (par->codec_id == AV_CODEC_ID_PCM_U8 ||
130 par->codec_id == AV_CODEC_ID_PCM_S24LE ||
131 par->codec_id == AV_CODEC_ID_PCM_S32LE ||
132 par->codec_id == AV_CODEC_ID_PCM_F32LE ||
133 par->codec_id == AV_CODEC_ID_PCM_F64LE ||
134 par->codec_id == AV_CODEC_ID_PCM_S16LE) {
135 bytespersec = par->sample_rate * blkalign;
136 } else if (par->codec_id == AV_CODEC_ID_G723_1) {
139 bytespersec = par->bit_rate / 8;
144 if (par->codec_id == AV_CODEC_ID_MP3) {
150 } else if (par->codec_id == AV_CODEC_ID_MP2) {
154 bytestream_put_le32(&riff_extradata, par->bit_rate);
156 bytestream_put_le16(&riff_extradata, par->ch_layout.nb_channels == 2 ? 1 : 8);
167 } else if (par->codec_id == AV_CODEC_ID_G723_1) {
171 } else if (par->codec_id == AV_CODEC_ID_GSM_MS ||
172 par->codec_id == AV_CODEC_ID_ADPCM_IMA_WAV) {
175 } else if (par->extradata_size) {
176 riff_extradata_start = par->extradata;
177 riff_extradata = par->extradata + par->extradata_size;
183 par->ch_layout.u.mask < 0x40000);
189 avio_wl32(pb, write_channel_mask ? par->ch_layout.u.mask : 0);
191 if (par->codec_id == AV_CODEC_ID_EAC3 || par->codec_id == AV_CODEC_ID_DFPWM) {
192 ff_put_guid(pb, ff_get_codec_guid(par->codec_id, ff_codec_wav_guids));
194 avio_wl32(pb, par->codec_tag);
200 par->codec_tag != 0x0001 /* PCM */ ||
216 void ff_put_bmp_header(AVIOContext *pb, AVCodecParameters *par,
219 int flipped_extradata = (par->extradata_size >= 9 &&
220 !memcmp(par->extradata + par->extradata_size - 9, "BottomUp", 9));
222 int extradata_size = par->extradata_size - 9*flipped_extradata;
223 enum AVPixelFormat pix_fmt = par->format;
226 if (pix_fmt == AV_PIX_FMT_NONE && par->bits_per_coded_sample == 1)
235 avio_wl32(pb, par->width);
237 avio_wl32(pb, par->codec_tag || keep_height ? par->height : -par->height);
241 avio_wl16(pb, par->bits_per_coded_sample ? par->bits_per_coded_sample : 24);
243 avio_wl32(pb, par->codec_tag);
244 avio_wl32(pb, (par->width * par->height * (par->bits_per_coded_sample ? par->bits_per_coded_sample : 24)+7) / 8);
250 avio_wl32(pb, pal_avi ? 1 << par->bits_per_coded_sample : 0);
254 if (par->extradata_size) {
255 avio_write(pb, par->extradata, extradata_size);
260 for (i = 0; i < 1 << par->bits_per_coded_sample; i++) {
276 AVCodecParameters *par = st->codecpar;
280 audio_frame_size = av_get_audio_frame_duration2(par, 0);
282 audio_frame_size = par->frame_size;
284 *au_ssize = par->block_align;
285 if (audio_frame_size && par->sample_rate) {
287 *au_rate = par->sample_rate;
288 } else if (par->codec_type == AVMEDIA_TYPE_VIDEO ||
289 par->codec_type == AVMEDIA_TYPE_DATA ||
290 par->codec_type == AVMEDIA_TYPE_SUBTITLE) {
294 *au_scale = par->block_align ? par->block_align * 8 : 8;
295 *au_rate = par->bit_rate ? par->bit_rate :
296 8 * par->sample_rate;