diff libmpcodecs/ad_pcm.c @ 17858:996e419c1671

in24/in32/fl32 little/big-endian QuickTime PCM audio support approved by rxt
author rathann
date Mon, 13 Mar 2006 23:32:36 +0000
parents f34f61843448
children 03f12c4dac0d
line wrap: on
line diff
--- a/libmpcodecs/ad_pcm.c	Mon Mar 13 21:50:56 2006 +0000
+++ b/libmpcodecs/ad_pcm.c	Mon Mar 13 23:32:36 2006 +0000
@@ -65,14 +65,34 @@
        sh_audio->sample_format=AF_FORMAT_FLOAT_BE;
        sh_audio->samplesize=4;
        break;
+    case 0x666c3332: // '23lf', little endian float32, MPlayer internal fourCC
+       sh_audio->sample_format=AF_FORMAT_FLOAT_LE;
+       sh_audio->samplesize=4;
+       break;
+/*    case 0x34366c66: // 'fl64', bigendian float64
+       sh_audio->sample_format=AF_FORMAT_FLOAT_BE;
+       sh_audio->samplesize=8;
+       break;
+    case 0x666c3634: // '46lf', little endian float64, MPlayer internal fourCC
+       sh_audio->sample_format=AF_FORMAT_FLOAT_LE;
+       sh_audio->samplesize=8;
+       break;*/
     case 0x34326e69: // 'in24', bigendian int24
        sh_audio->sample_format=AF_FORMAT_S24_BE;
        sh_audio->samplesize=3;
        break;
+    case 0x696e3234: // '42ni', little endian int24, MPlayer internal fourCC
+       sh_audio->sample_format=AF_FORMAT_S24_LE;
+       sh_audio->samplesize=3;
+       break;
     case 0x32336e69: // 'in32', bigendian int32
        sh_audio->sample_format=AF_FORMAT_S32_BE;
        sh_audio->samplesize=4;
        break;
+    case 0x696e3332: // '23ni', little endian int32, MPlayer internal fourCC
+       sh_audio->sample_format=AF_FORMAT_S32_LE;
+       sh_audio->samplesize=4;
+       break;
     default: if(sh_audio->samplesize!=2) sh_audio->sample_format=AF_FORMAT_U8;
   }
   if (!sh_audio->samplesize) // this would cause MPlayer to hang later