[FFmpeg-cvslog] lavf/mpeg: Support alaw in Hikvision CCTV recordings.

Carl Eugen Hoyos git at videolan.org
Sat Apr 4 02:22:28 CEST 2015


ffmpeg | branch: master | Carl Eugen Hoyos <cehoyos at ag.or.at> | Fri Apr  3 21:04:43 2015 +0200| [036079ce34311547be5940c5d856db5498fae029] | committer: Carl Eugen Hoyos

lavf/mpeg: Support alaw in Hikvision CCTV recordings.

Fixes a sample from ticket #4182.

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

 libavformat/mpeg.c |    6 +++++-
 1 file changed, 5 insertions(+), 1 deletion(-)

diff --git a/libavformat/mpeg.c b/libavformat/mpeg.c
index dbe5f10..c29291d 100644
--- a/libavformat/mpeg.c
+++ b/libavformat/mpeg.c
@@ -547,6 +547,9 @@ redo:
             codec_id = AV_CODEC_ID_ADPCM_ADX;
             // Auto-detect AC-3
             request_probe = 50;
+        } else if (m->imkh_cctv && startcode == 0x1c0) {
+            codec_id = AV_CODEC_ID_PCM_ALAW;
+            request_probe = 50;
         } else {
             codec_id = AV_CODEC_ID_MP2;
             if (m->imkh_cctv)
@@ -593,7 +596,8 @@ skip:
     st->id                = startcode;
     st->codec->codec_type = type;
     st->codec->codec_id   = codec_id;
-    if (st->codec->codec_id == AV_CODEC_ID_PCM_MULAW) {
+    if (   st->codec->codec_id == AV_CODEC_ID_PCM_MULAW
+        || st->codec->codec_id == AV_CODEC_ID_PCM_ALAW) {
         st->codec->channels = 1;
         st->codec->channel_layout = AV_CH_LAYOUT_MONO;
         st->codec->sample_rate = 8000;



More information about the ffmpeg-cvslog mailing list