From 1abfcc56af7de73c2088d7971f744778b5842ed8 Mon Sep 17 00:00:00 2001 From: Max Kellermann Date: Fri, 15 Jan 2010 09:23:36 +0100 Subject: audio_format: support packed 24 bit samples --- src/audio_format.h | 9 +++++++++ 1 file changed, 9 insertions(+) (limited to 'src/audio_format.h') diff --git a/src/audio_format.h b/src/audio_format.h index 7cd606b65..dd32731c3 100644 --- a/src/audio_format.h +++ b/src/audio_format.h @@ -29,6 +29,11 @@ enum sample_format { SAMPLE_FORMAT_S8, SAMPLE_FORMAT_S16, + /** + * Signed 24 bit integer samples, without padding. + */ + SAMPLE_FORMAT_S24, + /** * Signed 24 bit integer samples, packed in 32 bit integers * (the most significant byte is filled with the sign bit). @@ -156,6 +161,7 @@ audio_valid_sample_format(enum sample_format format) switch (format) { case SAMPLE_FORMAT_S8: case SAMPLE_FORMAT_S16: + case SAMPLE_FORMAT_S24: case SAMPLE_FORMAT_S24_P32: case SAMPLE_FORMAT_S32: return true; @@ -235,6 +241,9 @@ static inline unsigned audio_format_sample_size(const struct audio_format *af) case SAMPLE_FORMAT_S16: return 2; + case SAMPLE_FORMAT_S24: + return 3; + case SAMPLE_FORMAT_S24_P32: case SAMPLE_FORMAT_S32: return 4; -- cgit v1.2.3