diff options
author | Anton Khirnov <anton@khirnov.net> | 2013-04-23 15:30:50 +0200 |
---|---|---|
committer | Anton Khirnov <anton@khirnov.net> | 2015-02-20 09:18:29 +0100 |
commit | 0bbe5ac82ef2845efafbf190044f16712db113b2 (patch) | |
tree | ac8745fba01c8a3e902e886f46f90ad56576559f /src/pcm_volume.c | |
parent | c69c8ffa9ec55c94dee7ce69af26b4edbd61647e (diff) |
Switch to Libav sample formats everywhere.
Drop 24bit format for now. It should be restored later by properly
distinguishing between internal and packed formats.
Diffstat (limited to 'src/pcm_volume.c')
-rw-r--r-- | src/pcm_volume.c | 36 |
1 files changed, 13 insertions, 23 deletions
diff --git a/src/pcm_volume.c b/src/pcm_volume.c index d6c282c9..7b6e8635 100644 --- a/src/pcm_volume.c +++ b/src/pcm_volume.c @@ -27,6 +27,8 @@ #include <stdint.h> #include <string.h> +#include <libavutil/samplefmt.h> + #undef G_LOG_DOMAIN #define G_LOG_DOMAIN "pcm_volume" @@ -142,10 +144,9 @@ pcm_volume_change_float(float *buffer, const float *end, float volume) } } -bool -pcm_volume(void *buffer, size_t length, - enum sample_format format, - int volume) +bool pcm_volume(void *buffer, size_t length, + enum AVSampleFormat format, + int volume) { if (volume == PCM_VOLUME_1) return true; @@ -157,33 +158,22 @@ pcm_volume(void *buffer, size_t length, const void *end = pcm_end_pointer(buffer, length); switch (format) { - case SAMPLE_FORMAT_UNDEFINED: - /* not implemented */ - return false; - - case SAMPLE_FORMAT_S8: + case AV_SAMPLE_FMT_U8: pcm_volume_change_8(buffer, end, volume); return true; - - case SAMPLE_FORMAT_S16: + case AV_SAMPLE_FMT_S16: pcm_volume_change_16(buffer, end, volume); return true; - - case SAMPLE_FORMAT_S24_P32: - pcm_volume_change_24(buffer, end, volume); - return true; - - case SAMPLE_FORMAT_S32: + case AV_SAMPLE_FMT_S32: pcm_volume_change_32(buffer, end, volume); return true; - - case SAMPLE_FORMAT_FLOAT: + case AV_SAMPLE_FMT_FLT: pcm_volume_change_float(buffer, end, pcm_volume_to_float(volume)); return true; - } + default: + /* not implemented */ + return false; - /* unreachable */ - assert(false); - return false; + } } |