From 799729d7c05a4156e0f955434798def7eff0cbe9 Mon Sep 17 00:00:00 2001 From: orchidman Date: Thu, 3 Nov 2011 19:25:09 +0100 Subject: transcode 1.1.5-2 correction port --- extra/transcode/.md5sum.x86_64 | 1 + extra/transcode/Pkgfile | 6 +- extra/transcode/transcode-ffmpeg.patch | 111 +++++++++++++++++++++++++++++++++ 3 files changed, 116 insertions(+), 2 deletions(-) create mode 100644 extra/transcode/transcode-ffmpeg.patch (limited to 'extra/transcode') diff --git a/extra/transcode/.md5sum.x86_64 b/extra/transcode/.md5sum.x86_64 index cf6b48ea4..689ba69bd 100644 --- a/extra/transcode/.md5sum.x86_64 +++ b/extra/transcode/.md5sum.x86_64 @@ -1 +1,2 @@ 41ac6b1c0fe30f3aab286e771fc31b9e transcode-1.1.5.tar.bz2 +fc29304b814b33f9f96824a3cba86187 transcode-ffmpeg.patch diff --git a/extra/transcode/Pkgfile b/extra/transcode/Pkgfile index 9d06afb30..3b82d73e1 100755 --- a/extra/transcode/Pkgfile +++ b/extra/transcode/Pkgfile @@ -7,11 +7,13 @@ name=transcode version=1.1.5 -release=1 -source=( http://download.berlios.de/tcforge/$name-$version.tar.bz2) +release=2 +source=( http://download.berlios.de/tcforge/$name-$version.tar.bz2 + transcode-ffmpeg.patch) build() { cd $name-$version + patch -p1 < ../transcode-ffmpeg.patch ./configure --prefix=/usr \ --mandir=/usr/share/man \ --infodir=/usr/share/info \ diff --git a/extra/transcode/transcode-ffmpeg.patch b/extra/transcode/transcode-ffmpeg.patch new file mode 100644 index 000000000..310136d04 --- /dev/null +++ b/extra/transcode/transcode-ffmpeg.patch @@ -0,0 +1,111 @@ +Index: transcode-1.1.5/encode/encode_lavc.c +=================================================================== +--- transcode-1.1.5.orig/encode/encode_lavc.c ++++ transcode-1.1.5/encode/encode_lavc.c +@@ -955,8 +955,6 @@ static void tc_lavc_config_defaults(TCLa + /* + * context *transcode* (not libavcodec) defaults + */ +- pd->ff_vcontext.mb_qmin = 2; +- pd->ff_vcontext.mb_qmax = 31; + pd->ff_vcontext.max_qdiff = 3; + pd->ff_vcontext.max_b_frames = 0; + pd->ff_vcontext.me_range = 0; +@@ -1116,8 +1114,6 @@ static int tc_lavc_read_config(TCLavcPri + // handled by transcode core + // { "vqmax", PCTX(qmax), TCCONF_TYPE_INT, TCCONF_FLAG_RANGE, 1, 60 }, + // handled by transcode core +- { "mbqmin", PCTX(mb_qmin), TCCONF_TYPE_INT, TCCONF_FLAG_RANGE, 1, 60 }, +- { "mbqmax", PCTX(mb_qmax), TCCONF_TYPE_INT, TCCONF_FLAG_RANGE, 1, 60 }, + { "lmin", PAUX(lmin), TCCONF_TYPE_FLOAT, TCCONF_FLAG_RANGE, 0.01, 255.0 }, + { "lmax", PAUX(lmax), TCCONF_TYPE_FLOAT, TCCONF_FLAG_RANGE, 0.01, 255.0 }, + { "vqdiff", PCTX(max_qdiff), TCCONF_TYPE_INT, TCCONF_FLAG_RANGE, 1, 31 }, +Index: transcode-1.1.5/export/export_ffmpeg.c +=================================================================== +--- transcode-1.1.5.orig/export/export_ffmpeg.c ++++ transcode-1.1.5/export/export_ffmpeg.c +@@ -643,8 +643,6 @@ MOD_init + + lavc_venc_context->bit_rate = vob->divxbitrate * 1000; + lavc_venc_context->bit_rate_tolerance = lavc_param_vrate_tolerance * 1000; +- lavc_venc_context->mb_qmin = lavc_param_mb_qmin; +- lavc_venc_context->mb_qmax = lavc_param_mb_qmax; + lavc_venc_context->lmin= (int)(FF_QP2LAMBDA * lavc_param_lmin + 0.5); + lavc_venc_context->lmax= (int)(FF_QP2LAMBDA * lavc_param_lmax + 0.5); + lavc_venc_context->max_qdiff = lavc_param_vqdiff; +Index: transcode-1.1.5/import/decode_lavc.c +=================================================================== +--- transcode-1.1.5.orig/import/decode_lavc.c ++++ transcode-1.1.5/import/decode_lavc.c +@@ -261,8 +261,12 @@ void decode_lavc(decode_t *decode) + + //tc_log_msg(__FILE__, "SIZE: (%d) MP4(%d) blen(%d) BUF(%d) read(%ld)", len, mp4_size, buf_len, READ_BUFFER_SIZE, bytes_read); + do { +- len = avcodec_decode_video(lavc_dec_context, &picture, +- &got_picture, buffer+buf_len, mp4_size-buf_len); ++ AVPacket pkt; ++ av_init_packet( &pkt ); ++ pkt.data = buffer+buf_len; ++ pkt.size = mp4_size-buf_len; ++ len = avcodec_decode_video2(lavc_dec_context, &picture, ++ &got_picture, &pkt); + + if (len < 0) { + tc_log_error(__FILE__, "frame decoding failed"); +Index: transcode-1.1.5/import/probe_ffmpeg.c +=================================================================== +--- transcode-1.1.5.orig/import/probe_ffmpeg.c ++++ transcode-1.1.5/import/probe_ffmpeg.c +@@ -47,7 +47,7 @@ static void translate_info(const AVForma + for (i = 0; i < ctx->nb_streams; i++) { + st = ctx->streams[i]; + +- if (st->codec->codec_type == CODEC_TYPE_VIDEO) { ++ if (st->codec->codec_type == AVMEDIA_TYPE_VIDEO) { + info->bitrate = st->codec->bit_rate / 1000; + info->width = st->codec->width; + info->height = st->codec->height; +@@ -65,7 +65,7 @@ static void translate_info(const AVForma + for (i = 0; i < ctx->nb_streams; i++) { + st = ctx->streams[i]; + +- if (st->codec->codec_type == CODEC_TYPE_AUDIO ++ if (st->codec->codec_type == AVMEDIA_TYPE_AUDIO + && j < TC_MAX_AUD_TRACKS) { + info->track[j].format = 0x1; /* known wrong */ + info->track[j].chan = st->codec->channels; +Index: transcode-1.1.5/export/ffmpeg_cfg.c +=================================================================== +--- transcode-1.1.5.orig/export/ffmpeg_cfg.c ++++ transcode-1.1.5/export/ffmpeg_cfg.c +@@ -34,8 +34,6 @@ int lavc_param_vme = 4; + //int lavc_param_vqscale = 0; + //int lavc_param_vqmin = 2; + //int lavc_param_vqmax = 31; +-int lavc_param_mb_qmin = 2; +-int lavc_param_mb_qmax = 31; + int lavc_param_lmin = 2; + int lavc_param_lmax = 31; + int lavc_param_vqdiff = 3; +@@ -140,8 +138,6 @@ TCConfigEntry lavcopts_conf[]={ + // {"vqscale", &lavc_param_vqscale, TCCONF_TYPE_INT, TCCONF_FLAG_RANGE, 1, 31}, + // {"vqmin", &lavc_param_vqmin, TCCONF_TYPE_INT, TCCONF_FLAG_RANGE, 1, 31}, + // {"vqmax", &lavc_param_vqmax, TCCONF_TYPE_INT, TCCONF_FLAG_RANGE, 1, 31}, +- {"mbqmin", &lavc_param_mb_qmin, TCCONF_TYPE_INT, TCCONF_FLAG_RANGE, 1, 31}, +- {"mbqmax", &lavc_param_mb_qmax, TCCONF_TYPE_INT, TCCONF_FLAG_RANGE, 1, 31}, + {"lmin", &lavc_param_lmin, TCCONF_TYPE_FLOAT, TCCONF_FLAG_RANGE, 0.01, 255.0}, + {"lmax", &lavc_param_lmax, TCCONF_TYPE_FLOAT, TCCONF_FLAG_RANGE, 0.01, 255.0}, + {"vqdiff", &lavc_param_vqdiff, TCCONF_TYPE_INT, TCCONF_FLAG_RANGE, 1, 31}, +Index: transcode-1.1.5/export/ffmpeg_cfg.h +=================================================================== +--- transcode-1.1.5.orig/export/ffmpeg_cfg.h ++++ transcode-1.1.5/export/ffmpeg_cfg.h +@@ -13,8 +13,6 @@ extern int lavc_param_vme; + //extern int lavc_param_vqscale; + //extern int lavc_param_vqmin; + //extern int lavc_param_vqmax; +-extern int lavc_param_mb_qmin; +-extern int lavc_param_mb_qmax; + extern int lavc_param_lmin; + extern int lavc_param_lmax; + extern int lavc_param_vqdiff; -- cgit v1.2.3-54-g00ecf