summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorDavid Conrad <lessen42@gmail.com>2007-08-13 05:23:38 +0000
committerDavid Conrad <lessen42@gmail.com>2007-08-13 05:23:38 +0000
commit42c71907cb394f1b35627631fbc1778f338942d2 (patch)
tree0b8b72856c6e13c4a102b9671d9775928dd8c6c7
parent99e8b22dc56f5d850ac4142388dce029f7761ff3 (diff)
Add av_get_bits_per_sample_format()
Originally committed as revision 10099 to svn://svn.ffmpeg.org/ffmpeg/trunk
-rw-r--r--libavcodec/avcodec.h12
-rw-r--r--libavcodec/utils.c16
2 files changed, 26 insertions, 2 deletions
diff --git a/libavcodec/avcodec.h b/libavcodec/avcodec.h
index 80eb3e350f..b9e9a20954 100644
--- a/libavcodec/avcodec.h
+++ b/libavcodec/avcodec.h
@@ -33,8 +33,8 @@
#define AV_STRINGIFY(s) AV_TOSTRING(s)
#define AV_TOSTRING(s) #s
-#define LIBAVCODEC_VERSION_INT ((51<<16)+(40<<8)+4)
-#define LIBAVCODEC_VERSION 51.40.4
+#define LIBAVCODEC_VERSION_INT ((51<<16)+(41<<8)+0)
+#define LIBAVCODEC_VERSION 51.41.0
#define LIBAVCODEC_BUILD LIBAVCODEC_VERSION_INT
#define LIBAVCODEC_IDENT "Lavc" AV_STRINGIFY(LIBAVCODEC_VERSION)
@@ -2706,6 +2706,14 @@ char av_get_pict_type_char(int pict_type);
*/
int av_get_bits_per_sample(enum CodecID codec_id);
+/**
+ * Returns sample format bits per sample.
+ *
+ * @param[in] sample_fmt the sample format
+ * @return Number of bits per sample or zero if unknown for the given sample format.
+ */
+int av_get_bits_per_sample_format(enum SampleFormat sample_fmt);
+
/* frame parsing */
typedef struct AVCodecParserContext {
void *priv_data;
diff --git a/libavcodec/utils.c b/libavcodec/utils.c
index 5f10ffbe86..c381f03f20 100644
--- a/libavcodec/utils.c
+++ b/libavcodec/utils.c
@@ -1322,6 +1322,22 @@ int av_get_bits_per_sample(enum CodecID codec_id){
}
}
+int av_get_bits_per_sample_format(enum SampleFormat sample_fmt) {
+ switch (sample_fmt) {
+ case SAMPLE_FMT_U8:
+ return 8;
+ case SAMPLE_FMT_S16:
+ return 16;
+ case SAMPLE_FMT_S24:
+ return 24;
+ case SAMPLE_FMT_S32:
+ case SAMPLE_FMT_FLT:
+ return 32;
+ default:
+ return 0;
+ }
+}
+
#if !defined(HAVE_THREADS)
int avcodec_thread_init(AVCodecContext *s, int thread_count){
return -1;