48#define OUTPUT_BIT_RATE 96000
50#define OUTPUT_CHANNELS 2
71 fprintf(stderr,
"Could not open input file '%s' (error '%s')\n",
73 *input_format_context = NULL;
79 fprintf(stderr,
"Could not open find stream info (error '%s')\n",
86 if ((*input_format_context)->nb_streams != 1) {
87 fprintf(stderr,
"Expected one audio input stream, but found %d\n",
88 (*input_format_context)->nb_streams);
93 stream = (*input_format_context)->streams[0];
97 fprintf(stderr,
"Could not find input codec\n");
105 fprintf(stderr,
"Could not allocate a decoding context\n");
120 fprintf(stderr,
"Could not open input codec (error '%s')\n",
131 *input_codec_context = avctx;
154 const AVCodec *output_codec = NULL;
158 if ((error =
avio_open(&output_io_context, filename,
160 fprintf(stderr,
"Could not open output file '%s' (error '%s')\n",
167 fprintf(stderr,
"Could not allocate output format context\n");
172 (*output_format_context)->pb = output_io_context;
175 if (!((*output_format_context)->oformat =
av_guess_format(NULL, filename,
177 fprintf(stderr,
"Could not find output file format\n");
181 if (!((*output_format_context)->url =
av_strdup(filename))) {
182 fprintf(stderr,
"Could not allocate url.\n");
189 fprintf(stderr,
"Could not find an AAC encoder.\n");
195 fprintf(stderr,
"Could not create new stream\n");
202 fprintf(stderr,
"Could not allocate an encoding context\n");
224 if ((error =
avcodec_open2(avctx, output_codec, NULL)) < 0) {
225 fprintf(stderr,
"Could not open output codec (error '%s')\n",
232 fprintf(stderr,
"Could not initialize stream parameters\n");
237 *output_codec_context = avctx;
245 *output_format_context = NULL;
257 fprintf(stderr,
"Could not allocate packet\n");
271 fprintf(stderr,
"Could not allocate input frame\n");
305 fprintf(stderr,
"Could not allocate resample context\n");
316 if ((error =
swr_init(*resample_context)) < 0) {
317 fprintf(stderr,
"Could not open resample context\n");
335 fprintf(stderr,
"Could not allocate FIFO\n");
350 fprintf(stderr,
"Could not write output file header (error '%s')\n",
373 int *data_present,
int *finished)
386 if ((error =
av_read_frame(input_format_context, input_packet)) < 0) {
391 fprintf(stderr,
"Could not read frame (error '%s')\n",
400 fprintf(stderr,
"Could not send packet for decoding (error '%s')\n",
409 if (error ==
AVERROR(EAGAIN)) {
417 }
else if (error < 0) {
418 fprintf(stderr,
"Could not decode frame (error '%s')\n",
455 sizeof(**converted_input_samples)))) {
456 fprintf(stderr,
"Could not allocate converted input sample pointers\n");
467 "Could not allocate converted input samples (error '%s')\n",
469 av_freep(&(*converted_input_samples)[0]);
470 free(*converted_input_samples);
489 uint8_t **converted_data,
const int frame_size,
496 converted_data, frame_size,
497 input_data , frame_size)) < 0) {
498 fprintf(stderr,
"Could not convert input samples (error '%s')\n",
515 uint8_t **converted_input_samples,
516 const int frame_size)