spdifenc: update 482d98f69b2eb7a7b0b5054101a43db384e9432b to the latest patch
authorJanne Grunau <janne-ffmpeg@jannau.net>
Sun, 13 Feb 2011 16:18:07 +0000 (17:18 +0100)
committerJanne Grunau <janne-ffmpeg@jannau.net>
Wed, 16 Feb 2011 08:51:27 +0000 (09:51 +0100)
"spdifenc: IEC 61937 encapsulation of DTS-HD for HDMI"

libavformat/spdifenc.c

index adc245a..da74dd8 100644 (file)
@@ -142,24 +142,15 @@ static int spdif_header_eac3(AVFormatContext *s, AVPacket *pkt)
  * the outputted IEC 61937 stream is higher.
  * The repetition period is measured in IEC 60958 frames (4 bytes).
  */
-enum {
-    DTS4_REP_PER_512   = 0x0,
-    DTS4_REP_PER_1024  = 0x1,
-    DTS4_REP_PER_2048  = 0x2,
-    DTS4_REP_PER_4096  = 0x3,
-    DTS4_REP_PER_8192  = 0x4,
-    DTS4_REP_PER_16384 = 0x5,
-};
-
 static int spdif_dts4_subtype(int period)
 {
     switch (period) {
-    case 512:   return DTS4_REP_PER_512;
-    case 1024:  return DTS4_REP_PER_1024;
-    case 2048:  return DTS4_REP_PER_2048;
-    case 4096:  return DTS4_REP_PER_4096;
-    case 8192:  return DTS4_REP_PER_8192;
-    case 16384: return DTS4_REP_PER_16384;
+    case 512:   return 0x0;
+    case 1024:  return 0x1;
+    case 2048:  return 0x2;
+    case 4096:  return 0x3;
+    case 8192:  return 0x4;
+    case 16384: return 0x5;
     }
     return -1;
 }
@@ -212,7 +203,8 @@ static int spdif_header_dts4(AVFormatContext *s, AVPacket *pkt, int core_size,
         if (ctx->dtshd_fallback > 0)
             ctx->dtshd_skip = sample_rate * ctx->dtshd_fallback / (blocks << 5);
         else
-            /* skip permanently (-1) or just once (0) */
+            /* skip permanently (dtshd_fallback == -1) or just once
+             * (dtshd_fallback == 0) */
             ctx->dtshd_skip = 1;
     }
     if (ctx->dtshd_skip && core_size) {
@@ -224,8 +216,7 @@ static int spdif_header_dts4(AVFormatContext *s, AVPacket *pkt, int core_size,
     ctx->out_bytes   = sizeof(dtshd_start_code) + 2 + pkt_size;
     ctx->length_code = ctx->out_bytes;
 
-    ctx->hd_buf = av_fast_realloc(ctx->hd_buf, &ctx->hd_buf_size,
-                                  ctx->out_bytes);
+    av_fast_malloc(&ctx->hd_buf, &ctx->hd_buf_size, ctx->out_bytes);
     if (!ctx->hd_buf)
         return AVERROR(ENOMEM);