It makes more sense for a bit mask to use an unsigned type. The change should be source and binary compatible on all supported systems, hence micro version bump. Fixes a few invalid shifts. Signed-off-by: Mans Rullgard <mans@mansr.com>tags/n0.9
| @@ -48,7 +48,7 @@ typedef struct AACAC3ParseContext { | |||||
| int sample_rate; | int sample_rate; | ||||
| int bit_rate; | int bit_rate; | ||||
| int samples; | int samples; | ||||
| int64_t channel_layout; | |||||
| uint64_t channel_layout; | |||||
| int service_type; | int service_type; | ||||
| int remaining_size; | int remaining_size; | ||||
| @@ -90,7 +90,7 @@ static const uint8_t aac_channel_layout_map[7][5][2] = { | |||||
| { { TYPE_CPE, 0 }, { TYPE_SCE, 0 }, { TYPE_LFE, 0 }, { TYPE_CPE, 2 }, { TYPE_CPE, 1 }, }, | { { TYPE_CPE, 0 }, { TYPE_SCE, 0 }, { TYPE_LFE, 0 }, { TYPE_CPE, 2 }, { TYPE_CPE, 1 }, }, | ||||
| }; | }; | ||||
| static const int64_t aac_channel_layout[8] = { | |||||
| static const uint64_t aac_channel_layout[8] = { | |||||
| AV_CH_LAYOUT_MONO, | AV_CH_LAYOUT_MONO, | ||||
| AV_CH_LAYOUT_STEREO, | AV_CH_LAYOUT_STEREO, | ||||
| AV_CH_LAYOUT_SURROUND, | AV_CH_LAYOUT_SURROUND, | ||||
| @@ -118,7 +118,7 @@ typedef struct { | |||||
| uint32_t bit_rate; | uint32_t bit_rate; | ||||
| uint8_t channels; | uint8_t channels; | ||||
| uint16_t frame_size; | uint16_t frame_size; | ||||
| int64_t channel_layout; | |||||
| uint64_t channel_layout; | |||||
| /** @} */ | /** @} */ | ||||
| } AC3HeaderInfo; | } AC3HeaderInfo; | ||||
| @@ -77,7 +77,7 @@ static uint8_t exponent_group_tab[2][3][256]; | |||||
| /** | /** | ||||
| * List of supported channel layouts. | * List of supported channel layouts. | ||||
| */ | */ | ||||
| const int64_t ff_ac3_channel_layouts[19] = { | |||||
| const uint64_t ff_ac3_channel_layouts[19] = { | |||||
| AV_CH_LAYOUT_MONO, | AV_CH_LAYOUT_MONO, | ||||
| AV_CH_LAYOUT_STEREO, | AV_CH_LAYOUT_STEREO, | ||||
| AV_CH_LAYOUT_2_1, | AV_CH_LAYOUT_2_1, | ||||
| @@ -2063,13 +2063,13 @@ av_cold int ff_ac3_encode_close(AVCodecContext *avctx) | |||||
| * Set channel information during initialization. | * Set channel information during initialization. | ||||
| */ | */ | ||||
| static av_cold int set_channel_info(AC3EncodeContext *s, int channels, | static av_cold int set_channel_info(AC3EncodeContext *s, int channels, | ||||
| int64_t *channel_layout) | |||||
| uint64_t *channel_layout) | |||||
| { | { | ||||
| int ch_layout; | int ch_layout; | ||||
| if (channels < 1 || channels > AC3_MAX_CHANNELS) | if (channels < 1 || channels > AC3_MAX_CHANNELS) | ||||
| return AVERROR(EINVAL); | return AVERROR(EINVAL); | ||||
| if ((uint64_t)*channel_layout > 0x7FF) | |||||
| if (*channel_layout > 0x7FF) | |||||
| return AVERROR(EINVAL); | return AVERROR(EINVAL); | ||||
| ch_layout = *channel_layout; | ch_layout = *channel_layout; | ||||
| if (!ch_layout) | if (!ch_layout) | ||||
| @@ -258,7 +258,7 @@ typedef struct AC3EncodeContext { | |||||
| } AC3EncodeContext; | } AC3EncodeContext; | ||||
| extern const int64_t ff_ac3_channel_layouts[19]; | |||||
| extern const uint64_t ff_ac3_channel_layouts[19]; | |||||
| int ff_ac3_encode_init(AVCodecContext *avctx); | int ff_ac3_encode_init(AVCodecContext *avctx); | ||||
| @@ -48,7 +48,7 @@ void avcodec_sample_fmt_string (char *buf, int buf_size, int sample_fmt) | |||||
| } | } | ||||
| #endif | #endif | ||||
| int64_t avcodec_guess_channel_layout(int nb_channels, enum CodecID codec_id, const char *fmt_name) | |||||
| uint64_t avcodec_guess_channel_layout(int nb_channels, enum CodecID codec_id, const char *fmt_name) | |||||
| { | { | ||||
| switch(nb_channels) { | switch(nb_channels) { | ||||
| case 1: return AV_CH_LAYOUT_MONO; | case 1: return AV_CH_LAYOUT_MONO; | ||||
| @@ -80,7 +80,7 @@ int avcodec_channel_layout_num_channels(int64_t channel_layout); | |||||
| * @param fmt_name Format name, or NULL if unknown | * @param fmt_name Format name, or NULL if unknown | ||||
| * @return Channel layout mask | * @return Channel layout mask | ||||
| */ | */ | ||||
| int64_t avcodec_guess_channel_layout(int nb_channels, enum CodecID codec_id, const char *fmt_name); | |||||
| uint64_t avcodec_guess_channel_layout(int nb_channels, enum CodecID codec_id, const char *fmt_name); | |||||
| struct AVAudioConvert; | struct AVAudioConvert; | ||||
| typedef struct AVAudioConvert AVAudioConvert; | typedef struct AVAudioConvert AVAudioConvert; | ||||
| @@ -2696,14 +2696,14 @@ typedef struct AVCodecContext { | |||||
| * - encoding: set by user. | * - encoding: set by user. | ||||
| * - decoding: set by libavcodec. | * - decoding: set by libavcodec. | ||||
| */ | */ | ||||
| int64_t channel_layout; | |||||
| uint64_t channel_layout; | |||||
| /** | /** | ||||
| * Request decoder to use this channel layout if it can (0 for default) | * Request decoder to use this channel layout if it can (0 for default) | ||||
| * - encoding: unused | * - encoding: unused | ||||
| * - decoding: Set by user. | * - decoding: Set by user. | ||||
| */ | */ | ||||
| int64_t request_channel_layout; | |||||
| uint64_t request_channel_layout; | |||||
| /** | /** | ||||
| * Ratecontrol attempt to use, at maximum, <value> of what can be used without an underflow. | * Ratecontrol attempt to use, at maximum, <value> of what can be used without an underflow. | ||||
| @@ -3044,7 +3044,7 @@ typedef struct AVCodec { | |||||
| const char *long_name; | const char *long_name; | ||||
| const int *supported_samplerates; ///< array of supported audio samplerates, or NULL if unknown, array is terminated by 0 | const int *supported_samplerates; ///< array of supported audio samplerates, or NULL if unknown, array is terminated by 0 | ||||
| const enum AVSampleFormat *sample_fmts; ///< array of supported sample formats, or NULL if unknown, array is terminated by -1 | const enum AVSampleFormat *sample_fmts; ///< array of supported sample formats, or NULL if unknown, array is terminated by -1 | ||||
| const int64_t *channel_layouts; ///< array of support channel layouts, or NULL if unknown. array is terminated by 0 | |||||
| const uint64_t *channel_layouts; ///< array of support channel layouts, or NULL if unknown. array is terminated by 0 | |||||
| uint8_t max_lowres; ///< maximum value for lowres supported by the decoder | uint8_t max_lowres; ///< maximum value for lowres supported by the decoder | ||||
| const AVClass *priv_class; ///< AVClass for the private context | const AVClass *priv_class; ///< AVClass for the private context | ||||
| const AVProfile *profiles; ///< array of recognized profiles, or NULL if unknown, array is terminated by {FF_PROFILE_UNKNOWN} | const AVProfile *profiles; ///< array of recognized profiles, or NULL if unknown, array is terminated by {FF_PROFILE_UNKNOWN} | ||||
| @@ -128,7 +128,7 @@ static const int dca_ext_audio_descr_mask[] = { | |||||
| * All 2 channel configurations -> AV_CH_LAYOUT_STEREO | * All 2 channel configurations -> AV_CH_LAYOUT_STEREO | ||||
| */ | */ | ||||
| static const int64_t dca_core_channel_layout[] = { | |||||
| static const uint64_t dca_core_channel_layout[] = { | |||||
| AV_CH_FRONT_CENTER, ///< 1, A | AV_CH_FRONT_CENTER, ///< 1, A | ||||
| AV_CH_LAYOUT_STEREO, ///< 2, A + B (dual mono) | AV_CH_LAYOUT_STEREO, ///< 2, A + B (dual mono) | ||||
| AV_CH_LAYOUT_STEREO, ///< 2, L + R (stereo) | AV_CH_LAYOUT_STEREO, ///< 2, L + R (stereo) | ||||
| @@ -107,7 +107,7 @@ static int truehd_channels(int chanmap) | |||||
| return channels; | return channels; | ||||
| } | } | ||||
| static int64_t truehd_layout(int chanmap) | |||||
| static uint64_t truehd_layout(int chanmap) | |||||
| { | { | ||||
| int layout = 0, i; | int layout = 0, i; | ||||
| @@ -22,7 +22,7 @@ | |||||
| #define LIBAVCODEC_VERSION_MAJOR 53 | #define LIBAVCODEC_VERSION_MAJOR 53 | ||||
| #define LIBAVCODEC_VERSION_MINOR 22 | #define LIBAVCODEC_VERSION_MINOR 22 | ||||
| #define LIBAVCODEC_VERSION_MICRO 0 | |||||
| #define LIBAVCODEC_VERSION_MICRO 1 | |||||
| #define LIBAVCODEC_VERSION_INT AV_VERSION_INT(LIBAVCODEC_VERSION_MAJOR, \ | #define LIBAVCODEC_VERSION_INT AV_VERSION_INT(LIBAVCODEC_VERSION_MAJOR, \ | ||||
| LIBAVCODEC_VERSION_MINOR, \ | LIBAVCODEC_VERSION_MINOR, \ | ||||
| @@ -27,7 +27,7 @@ extern const float ff_vorbis_floor1_inverse_db_table[256]; | |||||
| extern const float * const ff_vorbis_vwin[8]; | extern const float * const ff_vorbis_vwin[8]; | ||||
| extern const uint8_t ff_vorbis_channel_layout_offsets[8][8]; | extern const uint8_t ff_vorbis_channel_layout_offsets[8][8]; | ||||
| extern const uint8_t ff_vorbis_encoding_channel_layout_offsets[8][8]; | extern const uint8_t ff_vorbis_encoding_channel_layout_offsets[8][8]; | ||||
| extern const int64_t ff_vorbis_channel_layouts[9]; | |||||
| extern const uint64_t ff_vorbis_channel_layouts[9]; | |||||
| typedef struct { | typedef struct { | ||||
| uint16_t x; | uint16_t x; | ||||
| @@ -44,7 +44,7 @@ const uint8_t ff_vorbis_encoding_channel_layout_offsets[8][8] = { | |||||
| { 0, 2, 1, 6, 7, 4, 5, 3 }, | { 0, 2, 1, 6, 7, 4, 5, 3 }, | ||||
| }; | }; | ||||
| const int64_t ff_vorbis_channel_layouts[9] = { | |||||
| const uint64_t ff_vorbis_channel_layouts[9] = { | |||||
| AV_CH_LAYOUT_MONO, | AV_CH_LAYOUT_MONO, | ||||
| AV_CH_LAYOUT_STEREO, | AV_CH_LAYOUT_STEREO, | ||||
| AV_CH_LAYOUT_SURROUND, | AV_CH_LAYOUT_SURROUND, | ||||
| @@ -143,7 +143,7 @@ switch(format) {\ | |||||
| case FORMAT_F32: s->reorder_func = alsa_reorder_f32_out_ ##layout; break;\ | case FORMAT_F32: s->reorder_func = alsa_reorder_f32_out_ ##layout; break;\ | ||||
| } | } | ||||
| static av_cold int find_reorder_func(AlsaData *s, int codec_id, int64_t layout, int out) | |||||
| static av_cold int find_reorder_func(AlsaData *s, int codec_id, uint64_t layout, int out) | |||||
| { | { | ||||
| int format; | int format; | ||||
| @@ -194,7 +194,7 @@ av_cold int ff_alsa_open(AVFormatContext *ctx, snd_pcm_stream_t mode, | |||||
| snd_pcm_t *h; | snd_pcm_t *h; | ||||
| snd_pcm_hw_params_t *hw_params; | snd_pcm_hw_params_t *hw_params; | ||||
| snd_pcm_uframes_t buffer_size, period_size; | snd_pcm_uframes_t buffer_size, period_size; | ||||
| int64_t layout = ctx->streams[0]->codec->channel_layout; | |||||
| uint64_t layout = ctx->streams[0]->codec->channel_layout; | |||||
| if (ctx->filename[0] == 0) audio_device = "default"; | if (ctx->filename[0] == 0) audio_device = "default"; | ||||
| else audio_device = ctx->filename; | else audio_device = ctx->filename; | ||||
| @@ -25,7 +25,7 @@ | |||||
| #include "libavutil/audioconvert.h" | #include "libavutil/audioconvert.h" | ||||
| typedef struct { | typedef struct { | ||||
| int64_t channel_layout; | |||||
| uint64_t channel_layout; | |||||
| int64_t sample_rate; | int64_t sample_rate; | ||||
| } ANullContext; | } ANullContext; | ||||
| @@ -349,7 +349,7 @@ fail: | |||||
| AVFilterBufferRef *avfilter_get_audio_buffer(AVFilterLink *link, int perms, | AVFilterBufferRef *avfilter_get_audio_buffer(AVFilterLink *link, int perms, | ||||
| enum AVSampleFormat sample_fmt, int size, | enum AVSampleFormat sample_fmt, int size, | ||||
| int64_t channel_layout, int planar) | |||||
| uint64_t channel_layout, int planar) | |||||
| { | { | ||||
| AVFilterBufferRef *ret = NULL; | AVFilterBufferRef *ret = NULL; | ||||
| @@ -30,7 +30,7 @@ | |||||
| #define LIBAVFILTER_VERSION_MAJOR 2 | #define LIBAVFILTER_VERSION_MAJOR 2 | ||||
| #define LIBAVFILTER_VERSION_MINOR 13 | #define LIBAVFILTER_VERSION_MINOR 13 | ||||
| #define LIBAVFILTER_VERSION_MICRO 0 | |||||
| #define LIBAVFILTER_VERSION_MICRO 1 | |||||
| #define LIBAVFILTER_VERSION_INT AV_VERSION_INT(LIBAVFILTER_VERSION_MAJOR, \ | #define LIBAVFILTER_VERSION_INT AV_VERSION_INT(LIBAVFILTER_VERSION_MAJOR, \ | ||||
| LIBAVFILTER_VERSION_MINOR, \ | LIBAVFILTER_VERSION_MINOR, \ | ||||
| @@ -100,7 +100,7 @@ typedef struct AVFilterBuffer { | |||||
| * per reference properties must be separated out. | * per reference properties must be separated out. | ||||
| */ | */ | ||||
| typedef struct AVFilterBufferRefAudioProps { | typedef struct AVFilterBufferRefAudioProps { | ||||
| int64_t channel_layout; ///< channel layout of audio buffer | |||||
| uint64_t channel_layout; ///< channel layout of audio buffer | |||||
| int nb_samples; ///< number of audio samples | int nb_samples; ///< number of audio samples | ||||
| int size; ///< audio buffer size | int size; ///< audio buffer size | ||||
| uint32_t sample_rate; ///< audio buffer sample rate | uint32_t sample_rate; ///< audio buffer sample rate | ||||
| @@ -376,7 +376,7 @@ struct AVFilterPad { | |||||
| */ | */ | ||||
| AVFilterBufferRef *(*get_audio_buffer)(AVFilterLink *link, int perms, | AVFilterBufferRef *(*get_audio_buffer)(AVFilterLink *link, int perms, | ||||
| enum AVSampleFormat sample_fmt, int size, | enum AVSampleFormat sample_fmt, int size, | ||||
| int64_t channel_layout, int planar); | |||||
| uint64_t channel_layout, int planar); | |||||
| /** | /** | ||||
| * Callback called after the slices of a frame are completely sent. If | * Callback called after the slices of a frame are completely sent. If | ||||
| @@ -465,7 +465,7 @@ AVFilterBufferRef *avfilter_default_get_video_buffer(AVFilterLink *link, | |||||
| /** default handler for get_audio_buffer() for audio inputs */ | /** default handler for get_audio_buffer() for audio inputs */ | ||||
| AVFilterBufferRef *avfilter_default_get_audio_buffer(AVFilterLink *link, int perms, | AVFilterBufferRef *avfilter_default_get_audio_buffer(AVFilterLink *link, int perms, | ||||
| enum AVSampleFormat sample_fmt, int size, | enum AVSampleFormat sample_fmt, int size, | ||||
| int64_t channel_layout, int planar); | |||||
| uint64_t channel_layout, int planar); | |||||
| /** | /** | ||||
| * A helper for query_formats() which sets all links to the same list of | * A helper for query_formats() which sets all links to the same list of | ||||
| @@ -496,7 +496,7 @@ AVFilterBufferRef *avfilter_null_get_video_buffer(AVFilterLink *link, | |||||
| /** get_audio_buffer() handler for filters which simply pass audio along */ | /** get_audio_buffer() handler for filters which simply pass audio along */ | ||||
| AVFilterBufferRef *avfilter_null_get_audio_buffer(AVFilterLink *link, int perms, | AVFilterBufferRef *avfilter_null_get_audio_buffer(AVFilterLink *link, int perms, | ||||
| enum AVSampleFormat sample_fmt, int size, | enum AVSampleFormat sample_fmt, int size, | ||||
| int64_t channel_layout, int planar); | |||||
| uint64_t channel_layout, int planar); | |||||
| /** | /** | ||||
| * Filter definition. This defines the pads a filter contains, and all the | * Filter definition. This defines the pads a filter contains, and all the | ||||
| @@ -589,7 +589,7 @@ struct AVFilterLink { | |||||
| int h; ///< agreed upon image height | int h; ///< agreed upon image height | ||||
| AVRational sample_aspect_ratio; ///< agreed upon sample aspect ratio | AVRational sample_aspect_ratio; ///< agreed upon sample aspect ratio | ||||
| /* These two parameters apply only to audio */ | /* These two parameters apply only to audio */ | ||||
| int64_t channel_layout; ///< channel layout of current buffer (see libavutil/audioconvert.h) | |||||
| uint64_t channel_layout; ///< channel layout of current buffer (see libavutil/audioconvert.h) | |||||
| int64_t sample_rate; ///< samples per second | int64_t sample_rate; ///< samples per second | ||||
| int format; ///< agreed upon media format | int format; ///< agreed upon media format | ||||
| @@ -688,7 +688,7 @@ avfilter_get_video_buffer_ref_from_arrays(uint8_t *data[4], int linesize[4], int | |||||
| */ | */ | ||||
| AVFilterBufferRef *avfilter_get_audio_buffer(AVFilterLink *link, int perms, | AVFilterBufferRef *avfilter_get_audio_buffer(AVFilterLink *link, int perms, | ||||
| enum AVSampleFormat sample_fmt, int size, | enum AVSampleFormat sample_fmt, int size, | ||||
| int64_t channel_layout, int planar); | |||||
| uint64_t channel_layout, int planar); | |||||
| /** | /** | ||||
| * Request an input frame from the filter at the other end of the link. | * Request an input frame from the filter at the other end of the link. | ||||
| @@ -57,7 +57,7 @@ AVFilterBufferRef *avfilter_default_get_video_buffer(AVFilterLink *link, int per | |||||
| AVFilterBufferRef *avfilter_default_get_audio_buffer(AVFilterLink *link, int perms, | AVFilterBufferRef *avfilter_default_get_audio_buffer(AVFilterLink *link, int perms, | ||||
| enum AVSampleFormat sample_fmt, int size, | enum AVSampleFormat sample_fmt, int size, | ||||
| int64_t channel_layout, int planar) | |||||
| uint64_t channel_layout, int planar) | |||||
| { | { | ||||
| AVFilterBuffer *samples = av_mallocz(sizeof(AVFilterBuffer)); | AVFilterBuffer *samples = av_mallocz(sizeof(AVFilterBuffer)); | ||||
| AVFilterBufferRef *ref = NULL; | AVFilterBufferRef *ref = NULL; | ||||
| @@ -292,7 +292,7 @@ AVFilterBufferRef *avfilter_null_get_video_buffer(AVFilterLink *link, int perms, | |||||
| AVFilterBufferRef *avfilter_null_get_audio_buffer(AVFilterLink *link, int perms, | AVFilterBufferRef *avfilter_null_get_audio_buffer(AVFilterLink *link, int perms, | ||||
| enum AVSampleFormat sample_fmt, int size, | enum AVSampleFormat sample_fmt, int size, | ||||
| int64_t channel_layout, int packed) | |||||
| uint64_t channel_layout, int packed) | |||||
| { | { | ||||
| return avfilter_get_audio_buffer(link->dst->outputs[0], perms, sample_fmt, | return avfilter_get_audio_buffer(link->dst->outputs[0], perms, sample_fmt, | ||||
| size, channel_layout, packed); | size, channel_layout, packed); | ||||
| @@ -60,7 +60,7 @@ static const char *get_channel_name(int channel_id) | |||||
| static const struct { | static const struct { | ||||
| const char *name; | const char *name; | ||||
| int nb_channels; | int nb_channels; | ||||
| int64_t layout; | |||||
| uint64_t layout; | |||||
| } channel_layout_map[] = { | } channel_layout_map[] = { | ||||
| { "mono", 1, AV_CH_LAYOUT_MONO }, | { "mono", 1, AV_CH_LAYOUT_MONO }, | ||||
| { "stereo", 2, AV_CH_LAYOUT_STEREO }, | { "stereo", 2, AV_CH_LAYOUT_STEREO }, | ||||
| @@ -77,7 +77,7 @@ static const struct { | |||||
| { 0 } | { 0 } | ||||
| }; | }; | ||||
| int64_t av_get_channel_layout(const char *name) | |||||
| uint64_t av_get_channel_layout(const char *name) | |||||
| { | { | ||||
| int i = 0; | int i = 0; | ||||
| do { | do { | ||||
| @@ -90,7 +90,7 @@ int64_t av_get_channel_layout(const char *name) | |||||
| } | } | ||||
| void av_get_channel_layout_string(char *buf, int buf_size, | void av_get_channel_layout_string(char *buf, int buf_size, | ||||
| int nb_channels, int64_t channel_layout) | |||||
| int nb_channels, uint64_t channel_layout) | |||||
| { | { | ||||
| int i; | int i; | ||||
| @@ -123,7 +123,7 @@ void av_get_channel_layout_string(char *buf, int buf_size, | |||||
| } | } | ||||
| } | } | ||||
| int av_get_channel_layout_nb_channels(int64_t channel_layout) | |||||
| int av_get_channel_layout_nb_channels(uint64_t channel_layout) | |||||
| { | { | ||||
| int count; | int count; | ||||
| uint64_t x = channel_layout; | uint64_t x = channel_layout; | ||||
| @@ -62,7 +62,7 @@ | |||||
| /** Channel mask value used for AVCodecContext.request_channel_layout | /** Channel mask value used for AVCodecContext.request_channel_layout | ||||
| to indicate that the user requests the channel order of the decoder output | to indicate that the user requests the channel order of the decoder output | ||||
| to be the native codec channel order. */ | to be the native codec channel order. */ | ||||
| #define AV_CH_LAYOUT_NATIVE 0x8000000000000000LL | |||||
| #define AV_CH_LAYOUT_NATIVE 0x8000000000000000ULL | |||||
| /** | /** | ||||
| * @} | * @} | ||||
| @@ -92,7 +92,7 @@ | |||||
| /** | /** | ||||
| * Return a channel layout id that matches name, 0 if no match. | * Return a channel layout id that matches name, 0 if no match. | ||||
| */ | */ | ||||
| int64_t av_get_channel_layout(const char *name); | |||||
| uint64_t av_get_channel_layout(const char *name); | |||||
| /** | /** | ||||
| * Return a description of a channel layout. | * Return a description of a channel layout. | ||||
| @@ -101,12 +101,12 @@ int64_t av_get_channel_layout(const char *name); | |||||
| * @param buf put here the string containing the channel layout | * @param buf put here the string containing the channel layout | ||||
| * @param buf_size size in bytes of the buffer | * @param buf_size size in bytes of the buffer | ||||
| */ | */ | ||||
| void av_get_channel_layout_string(char *buf, int buf_size, int nb_channels, int64_t channel_layout); | |||||
| void av_get_channel_layout_string(char *buf, int buf_size, int nb_channels, uint64_t channel_layout); | |||||
| /** | /** | ||||
| * Return the number of channels in the channel layout. | * Return the number of channels in the channel layout. | ||||
| */ | */ | ||||
| int av_get_channel_layout_nb_channels(int64_t channel_layout); | |||||
| int av_get_channel_layout_nb_channels(uint64_t channel_layout); | |||||
| /** | /** | ||||
| * @} | * @} | ||||
| @@ -154,7 +154,7 @@ | |||||
| #define LIBAVUTIL_VERSION_MAJOR 51 | #define LIBAVUTIL_VERSION_MAJOR 51 | ||||
| #define LIBAVUTIL_VERSION_MINOR 19 | #define LIBAVUTIL_VERSION_MINOR 19 | ||||
| #define LIBAVUTIL_VERSION_MICRO 0 | |||||
| #define LIBAVUTIL_VERSION_MICRO 1 | |||||
| #define LIBAVUTIL_VERSION_INT AV_VERSION_INT(LIBAVUTIL_VERSION_MAJOR, \ | #define LIBAVUTIL_VERSION_INT AV_VERSION_INT(LIBAVUTIL_VERSION_MAJOR, \ | ||||
| LIBAVUTIL_VERSION_MINOR, \ | LIBAVUTIL_VERSION_MINOR, \ | ||||