I'am sorry for incomplete information: A_SAMPLE_RATE_OUT = 8000 //it's output sample rate AUDIO_FORMAT_OUT = SAMPLE_FMT_S16 //or SAMPLE_FMT_U8
finally dec->output_size, dec->ffmpeg_output are obtained here: avcodec_decode_audio3(dec->context, dec->ffmpeg_output, &(dec->output_size), pkt); therefore by my opinion the code is correct: dec->output_size I divide by isamp = av_get_bits_per_sample_format( dec->context->sample_fmt ) >> 3; so isamp should be 4 gimli ______________________________________________________________ > Od: "Ronald S. Bultje" <[email protected]> > Komu: "Libav* user questions and discussions" <[email protected]> > Datum: 18.05.2010 19:50 > Předmět: Re: [libav-user] Audio resampling > >Hi, > >2010/5/18 Honza Blažek <[email protected]>: >> ReSampleContext *ctx = av_audio_resample_init(1, >> dec->context->channels, >> A_SAMPLE_RATE_OUT, dec->context->sample_rate, >> AUDIO_FORMAT_OUT, dec->context->sample_fmt, >> 16, 10, 0, 0.8); > >What is A_SAMPLE_RATE_OUT? What is AUDIO_FORMAT_OUT? > >> extra_samples = audio_resample(ctx, dec->samples+dec->samples_length, >> dec->ffmpeg_output, dec->output_size/isamp); > >What is dec->output_size? If it is the data_size from >avcodec_decode_audio3(), you should divide it by the samplesize >(sizeof(float), so 4). > >Ronald >_______________________________________________ >libav-user mailing list >[email protected] >https://lists.mplayerhq.hu/mailman/listinfo/libav-user > _______________________________________________ libav-user mailing list [email protected] https://lists.mplayerhq.hu/mailman/listinfo/libav-user
