Browse Source

lavc: add sample rate and channel layout to AVFrame.

Rationale is the same as for video width/height etc.
tags/n0.11
Anton Khirnov 13 years ago
parent
commit
828bd088f3
4 changed files with 24 additions and 1 deletions
  1. +3
    -0
      doc/APIchanges
  2. +16
    -0
      libavcodec/avcodec.h
  3. +4
    -0
      libavcodec/utils.c
  4. +1
    -1
      libavcodec/version.h

+ 3
- 0
doc/APIchanges View File

@@ -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.



+ 16
- 0
libavcodec/avcodec.h View File

@@ -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;


+ 4
- 0
libavcodec/utils.c View File

@@ -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);


+ 1
- 1
libavcodec/version.h View File

@@ -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