[SCM] libav/experimental: Add av_get_bits_per_sample_format()

siretart at users.alioth.debian.org siretart at users.alioth.debian.org
Sun Jun 30 16:05:29 UTC 2013


The following commit has been merged in the experimental branch:
commit 42c71907cb394f1b35627631fbc1778f338942d2
Author: David Conrad <lessen42 at gmail.com>
Date:   Mon Aug 13 05:23:38 2007 +0000

    Add av_get_bits_per_sample_format()
    
    Originally committed as revision 10099 to svn://svn.ffmpeg.org/ffmpeg/trunk

diff --git a/libavcodec/avcodec.h b/libavcodec/avcodec.h
index 80eb3e3..b9e9a20 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 5f10ffb..c381f03 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;

-- 
Libav/FFmpeg packaging



More information about the pkg-multimedia-commits mailing list