lavc: add sample rate and channel layout to AVFrame.

Rationale is the same as for video width/height etc.
pull/30/merge
Anton Khirnov 13 years ago
parent 37f4a976b3
commit 828bd088f3
  1. 3
      doc/APIchanges
  2. 16
      libavcodec/avcodec.h
  3. 4
      libavcodec/utils.c
  4. 2
      libavcodec/version.h

@ -13,6 +13,9 @@ libavutil: 2011-04-18
API changes, most recent first:
2012-xx-xx - xxxxxxx - lavc 54.13.0 - avcodec.h
Add sample_rate and channel_layout fields to AVFrame.
2012-xx-xx - xxxxxxx - lavr 0.0.1
Change AV_MIX_COEFF_TYPE_Q6 to AV_MIX_COEFF_TYPE_Q8.

@ -1207,6 +1207,22 @@ typedef struct AVFrame {
* - decoding: Set by libavcodec.
*/
uint8_t motion_subsample_log2;
/**
* Sample rate of the audio data.
*
* - encoding: unused
* - decoding: set by get_buffer()
*/
int sample_rate;
/**
* Channel layout of the audio data.
*
* - encoding: unused
* - decoding: set by get_buffer()
*/
uint64_t channel_layout;
} AVFrame;
struct AVCodecInternal;

@ -356,6 +356,10 @@ static int audio_get_buffer(AVCodecContext *avctx, AVFrame *frame)
else frame->pkt_pts = AV_NOPTS_VALUE;
frame->reordered_opaque = avctx->reordered_opaque;
frame->sample_rate = avctx->sample_rate;
frame->format = avctx->sample_fmt;
frame->channel_layout = avctx->channel_layout;
if (avctx->debug & FF_DEBUG_BUFFERS)
av_log(avctx, AV_LOG_DEBUG, "default_get_buffer called on frame %p, "
"internal audio buffer used\n", frame);

@ -27,7 +27,7 @@
*/
#define LIBAVCODEC_VERSION_MAJOR 54
#define LIBAVCODEC_VERSION_MINOR 12
#define LIBAVCODEC_VERSION_MINOR 13
#define LIBAVCODEC_VERSION_MICRO 0
#define LIBAVCODEC_VERSION_INT AV_VERSION_INT(LIBAVCODEC_VERSION_MAJOR, \

Loading…
Cancel
Save