[FFmpeg-cvslog] lavd/avfoundation: Add support for 24 and 32bit integer input.

John Robinson git at videolan.org
Fri Mar 6 01:11:53 CET 2015


ffmpeg | branch: master | John Robinson <jrobinsonmedia at gmail.com> | Fri Mar  6 01:10:16 2015 +0100| [98d19ca8f18901b89aae66dc11c20f5a3a39d7b5] | committer: Carl Eugen Hoyos

lavd/avfoundation: Add support for 24 and 32bit integer input.

Tested on Mac Mini soundflower and built-in line input.

Reviewed-by: Thilo Borgmann

> http://git.videolan.org/gitweb.cgi/ffmpeg.git/?a=commit;h=98d19ca8f18901b89aae66dc11c20f5a3a39d7b5
---

 libavdevice/avfoundation.m |   10 ++++++++++
 1 file changed, 10 insertions(+)

diff --git a/libavdevice/avfoundation.m b/libavdevice/avfoundation.m
index 8b7c547..954c8d5 100644
--- a/libavdevice/avfoundation.m
+++ b/libavdevice/avfoundation.m
@@ -508,6 +508,16 @@ static int get_audio_config(AVFormatContext *s)
         ctx->audio_bits_per_sample == 16 &&
         ctx->audio_packed) {
         stream->codec->codec_id = ctx->audio_be ? AV_CODEC_ID_PCM_S16BE : AV_CODEC_ID_PCM_S16LE;
+    } else if (basic_desc->mFormatID == kAudioFormatLinearPCM &&
+        ctx->audio_signed_integer &&
+        ctx->audio_bits_per_sample == 24 &&
+        ctx->audio_packed) {
+        stream->codec->codec_id = ctx->audio_be ? AV_CODEC_ID_PCM_S24BE : AV_CODEC_ID_PCM_S24LE;
+    } else if (basic_desc->mFormatID == kAudioFormatLinearPCM &&
+        ctx->audio_signed_integer &&
+        ctx->audio_bits_per_sample == 32 &&
+        ctx->audio_packed) {
+        stream->codec->codec_id = ctx->audio_be ? AV_CODEC_ID_PCM_S32BE : AV_CODEC_ID_PCM_S32LE;
     } else {
         av_log(s, AV_LOG_ERROR, "audio format is not supported\n");
         return 1;



More information about the ffmpeg-cvslog mailing list