]> git.sesse.net Git - ffmpeg/blobdiff - libswresample/swresample_internal.h
swr: fix #endif comment ref.
[ffmpeg] / libswresample / swresample_internal.h
index a9f1fe1211fb424c2c3b8a67f7fd65ffa270f075..4764ddfd6f653c06185c178144e49dd9f782aa75 100644 (file)
@@ -33,7 +33,7 @@ typedef struct AudioData{
 } AudioData;
 
 typedef struct SwrContext {          //FIXME find unused fields
-    AVClass *av_class;
+    const AVClass *av_class;
     int log_level_offset;
     void *log_ctx;
     enum AVSampleFormat  in_sample_fmt;
@@ -44,7 +44,9 @@ typedef struct SwrContext {          //FIXME find unused fields
     int      in_sample_rate;
     int     out_sample_rate;
     int flags;
-    float slev, clev;
+    float slev, clev, rematrix_volume;
+    const int *channel_map;             ///< channel index (or -1 if muted channel) map
+    int used_ch_count;                  ///< number of used channels (mapped channel count if channel_map, otherwise in.ch_count)
 
     //below are private
     int int_bps;
@@ -62,7 +64,7 @@ typedef struct SwrContext {          //FIXME find unused fields
     struct AVResampleContext *resample;
 
     float matrix[SWR_CH_MAX][SWR_CH_MAX];
-    int16_t matrix16[SWR_CH_MAX][SWR_CH_MAX];
+    int32_t matrix32[SWR_CH_MAX][SWR_CH_MAX];
     uint8_t matrix_ch[SWR_CH_MAX][SWR_CH_MAX+1];
 
     //TODO callbacks for asm optims
@@ -72,7 +74,7 @@ struct AVResampleContext *swr_resample_init(struct AVResampleContext *, int out_
 void swr_resample_free(struct AVResampleContext **c);
 int swr_multiple_resample(struct AVResampleContext *c, AudioData *dst, int dst_size, AudioData *src, int src_size, int *consumed);
 void swr_resample_compensate(struct AVResampleContext *c, int sample_delta, int compensation_distance);
-int swr_resample(struct AVResampleContext *c, short *dst, short *src, int *consumed, int src_size, int dst_size, int update_ctx);
+int swr_resample(struct AVResampleContext *c, short *dst, const short *src, int *consumed, int src_size, int dst_size, int update_ctx);
 
 int swr_rematrix_init(SwrContext *s);
 int swr_rematrix(SwrContext *s, AudioData *out, AudioData *in, int len, int mustcopy);