[FFmpeg-cvslog] spdifenc: update 482d98f69b2eb7a7b0b5054101a43db384e9432b to the latest patch
Janne Grunau
git
Wed Feb 16 23:18:31 CET 2011
ffmpeg | branch: master | Janne Grunau <janne-ffmpeg at jannau.net> | Sun Feb 13 17:18:07 2011 +0100| [fabb93e3974fc56429bfe68cfdd1c706788c29ec] | committer: Michael Niedermayer
spdifenc: update 482d98f69b2eb7a7b0b5054101a43db384e9432b to the latest patch
"spdifenc: IEC 61937 encapsulation of DTS-HD for HDMI"
(cherry picked from commit ec25f83bd98e10c023e6c7b07da1dcfc4d80cefc)
> http://git.videolan.org/gitweb.cgi/ffmpeg.git/?a=commit;h=fabb93e3974fc56429bfe68cfdd1c706788c29ec
---
libavformat/spdifenc.c | 27 +++++++++------------------
1 files changed, 9 insertions(+), 18 deletions(-)
diff --git a/libavformat/spdifenc.c b/libavformat/spdifenc.c
index adc245a..da74dd8 100644
--- a/libavformat/spdifenc.c
+++ b/libavformat/spdifenc.c
@@ -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);
More information about the ffmpeg-cvslog
mailing list