From 5c635b365fd3f67c35a777624dc0ac26aedb27f6 Mon Sep 17 00:00:00 2001 From: Brijesh Singh Date: Sat, 5 Sep 2009 04:13:43 -0500 Subject: gstreamer-ti: bump SRCREV and apply patch from tracker 462 --- .../gstreamer-ti/codec_combo_directory_fix.patch | 52 -------- recipes/ti/gstreamer-ti/gst-buffsize.diff | 113 ---------------- .../ti/gstreamer-ti/gstreamer-ti-tracker-462.patch | 68 ++++++++++ .../ti/gstreamer-ti/gstreamer-ti-tracker-824.patch | 147 +++++++++++++++++++++ recipes/ti/gstreamer-ti_svn.bb | 5 +- 5 files changed, 218 insertions(+), 167 deletions(-) delete mode 100644 recipes/ti/gstreamer-ti/codec_combo_directory_fix.patch delete mode 100644 recipes/ti/gstreamer-ti/gst-buffsize.diff create mode 100644 recipes/ti/gstreamer-ti/gstreamer-ti-tracker-462.patch create mode 100644 recipes/ti/gstreamer-ti/gstreamer-ti-tracker-824.patch (limited to 'recipes/ti') diff --git a/recipes/ti/gstreamer-ti/codec_combo_directory_fix.patch b/recipes/ti/gstreamer-ti/codec_combo_directory_fix.patch deleted file mode 100644 index 7c03641707..0000000000 --- a/recipes/ti/gstreamer-ti/codec_combo_directory_fix.patch +++ /dev/null @@ -1,52 +0,0 @@ -From: Vishnudas P - -Found the fix here. -http://wiki.davincidsp.com/index.php?title=Configuring_Codec_Engine_in_Arm_apps_with_createFromServer -In the section "Advanced: overwriting fields, creating multiple engines" - -Needed tor reverse the previous patch 263 and apply the attached patch. - -When you call createFromServer the path you give is relative to -package, not the filesystem one. For that you need to set -"engine.server" to the desired full filesystem path. -This is what the attached patch does. - --- - - -diff -Naur ticodecplugin.orig/src/gstticodecplugin_dm6446.cfg ticodecplugin/src/gstticodecplugin_dm6446.cfg ---- ticodecplugin.orig/src/gstticodecplugin_dm6446.cfg 2009-07-21 12:55:32.000000000 -0700 -+++ ticodecplugin/src/gstticodecplugin_dm6446.cfg 2009-07-21 12:55:26.000000000 -0700 -@@ -38,6 +38,8 @@ - "./encodeCombo.x64P", - "ti.sdo.servers.encode" - ); -+codecServer.server = "/usr/share/ti-codec-combos/cs.x64P"; -+ - - /* Load support for the 'Davinci Multimedia Application Interface' modules */ - var DMAI = xdc.loadPackage('ti.sdo.dmai'); -diff -Naur ticodecplugin.orig/src/gstticodecplugin_dm6467.cfg ticodecplugin/src/gstticodecplugin_dm6467.cfg ---- ticodecplugin.orig/src/gstticodecplugin_dm6467.cfg 2009-07-21 12:55:32.000000000 -0700 -+++ ticodecplugin/src/gstticodecplugin_dm6467.cfg 2009-07-21 12:55:26.000000000 -0700 -@@ -39,6 +39,8 @@ - "./encodeCombo.x64P", - "ti.sdo.servers.encode" - ); -+codecServer.server = "/usr/share/ti-codec-combos/cs.x64P"; -+ - - /* Load support for the 'Davinci Multimedia Application Interface' modules */ - var DMAI = xdc.loadPackage('ti.sdo.dmai'); -diff -Naur ticodecplugin.orig/src/gstticodecplugin_omap3530.cfg ticodecplugin/src/gstticodecplugin_omap3530.cfg ---- ticodecplugin.orig/src/gstticodecplugin_omap3530.cfg 2009-07-21 12:55:32.000000000 -0700 -+++ ticodecplugin/src/gstticodecplugin_omap3530.cfg 2009-07-21 12:55:26.000000000 -0700 -@@ -38,6 +38,8 @@ - "./decodeCombo.x64P", - "ti.sdo.servers.decode" - ); -+codecServer.server = "/usr/share/ti-codec-combos/cs.x64P"; -+ - - /* Load support for the DMAI module */ - var DMAI = xdc.loadPackage('ti.sdo.dmai'); diff --git a/recipes/ti/gstreamer-ti/gst-buffsize.diff b/recipes/ti/gstreamer-ti/gst-buffsize.diff deleted file mode 100644 index 2d71286498..0000000000 --- a/recipes/ti/gstreamer-ti/gst-buffsize.diff +++ /dev/null @@ -1,113 +0,0 @@ - ChangeLog | 10 ++++++++++ - src/gsttividdec2.c | 25 +++++++++++++++++++++---- - src/gsttividdec2.h | 2 ++ - 3 files changed, 33 insertions(+), 4 deletions(-) - -diff -Nurd --exclude .svn trunk/gstreamer_ti/ti_build/ticodecplugin/ChangeLog branches/BRANCH_DDOMPE_BUFFERSIZES/gstreamer_ti/ti_build/ticodecplugin/ChangeLog ---- ticodecplugin/ChangeLog 2009-03-03 08:57:50.000000000 +0100 -+++ ticodecplugin/ChangeLog 2009-03-03 08:59:20.000000000 +0100 -@@ -1,3 +1,13 @@ -+2009-03-01 Diego Dompe, RidgeRun -+ * src/gsttividdec2.{c.h}: -+ Create the output buffer tab using the recently added height and width -+ attributes passed by the capabilities. This solves integration problems -+ with other elements like ffmpegcolorspace and xvimagesink, where they -+ will fail because the second buffer pushed over the src pad of the -+ decoder has a size different from the first one. Using the input caps -+ for the creation of the buffer tab we have a more educated guess on the -+ output buffer size, and the resizing won't be required. -+ - 2009-02-25 Brijesh Singh, Texas Instruments, Inc. - * src/{gsttividenc1.{c,h},gsttividenc.{c,h},gsttividdec1.{c,h},gsttividdec. - {c,h},gsttiauddec1.{c,h},gsttiauddec.{c,h},gsttiimgdec1.{c,h},gsttiimgenc1. -diff -Nurd --exclude .svn trunk/gstreamer_ti/ti_build/ticodecplugin/src/gsttividdec2.c branches/BRANCH_DDOMPE_BUFFERSIZES/gstreamer_ti/ti_build/ticodecplugin/src/gsttividdec2.c ---- ticodecplugin/src/gsttividdec2.c 2009-03-03 08:57:50.000000000 +0100 -+++ ticodecplugin/src/gsttividdec2.c 2009-03-03 08:59:20.000000000 +0100 -@@ -21,7 +21,11 @@ - * Original Author: - * Don Darling, Texas Instruments, Inc. - * -+ * Contributors: -+ * Diego Dompe, RidgeRun -+ * - * Copyright (C) $year Texas Instruments Incorporated - http://www.ti.com/ -+ * Copyright (C) $year RidgeRun - * - * This program is free software; you can redistribute it and/or modify - * it under the terms of the GNU Lesser General Public License as -@@ -350,6 +354,8 @@ - - viddec2->framerateNum = 0; - viddec2->framerateDen = 0; -+ viddec2->height = 0; -+ viddec2->width = 0; - - viddec2->numOutputBufs = 0UL; - viddec2->hOutBufTab = NULL; -@@ -484,6 +490,14 @@ - viddec2->framerateNum = framerateNum; - viddec2->framerateDen = framerateDen; - } -+ -+ if (!gst_structure_get_int(capStruct, "height", &viddec2->height)) { -+ viddec2->height = 0; -+ } -+ -+ if (!gst_structure_get_int(capStruct, "width", &viddec2->width)) { -+ viddec2->width = 0; -+ } - } - - /* MPEG Decode */ -@@ -1048,6 +1062,7 @@ - Cpu_Device device; - ColorSpace_Type colorSpace; - Int defaultNumBufs; -+ Int outBufSize; - - /* Open the codec engine */ - GST_LOG("opening codec engine \"%s\"\n", viddec2->engineName); -@@ -1116,8 +1131,8 @@ - /* Create codec output buffers */ - GST_LOG("creating output buffer table\n"); - gfxAttrs.colorSpace = colorSpace; -- gfxAttrs.dim.width = params.maxWidth; -- gfxAttrs.dim.height = params.maxHeight; -+ gfxAttrs.dim.width = viddec2->width; -+ gfxAttrs.dim.height = viddec2->height; - gfxAttrs.dim.lineLength = BufferGfx_calcLineLength( - gfxAttrs.dim.width, gfxAttrs.colorSpace); - -@@ -1125,8 +1140,10 @@ - gfxAttrs.bAttrs.useMask = gst_tidmaibuffertransport_GST_FREE | - gst_tividdec2_CODEC_FREE; - -+ outBufSize = gfxAttrs.dim.lineLength * viddec2->height; -+ - viddec2->hOutBufTab = -- BufTab_create(viddec2->numOutputBufs, Vdec2_getOutBufSize(viddec2->hVd), -+ BufTab_create(viddec2->numOutputBufs, outBufSize, - BufferGfx_getBufferAttrs(&gfxAttrs)); - - if (viddec2->hOutBufTab == NULL) { -@@ -1295,7 +1312,7 @@ - */ - outBuf = gst_tidmaibuffertransport_new(hDstBuf); - gst_buffer_set_data(outBuf, GST_BUFFER_DATA(outBuf), -- Buffer_getNumBytesUsed(hDstBuf)); -+ Vdec2_getOutBufSize(viddec2->hVd)); - gst_buffer_set_caps(outBuf, GST_PAD_CAPS(viddec2->srcpad)); - - /* If we have a valid time stamp, set it on the buffer */ -diff -Nurd --exclude .svn trunk/gstreamer_ti/ti_build/ticodecplugin/src/gsttividdec2.h branches/BRANCH_DDOMPE_BUFFERSIZES/gstreamer_ti/ti_build/ticodecplugin/src/gsttividdec2.h ---- ticodecplugin/src/gsttividdec2.h 2009-03-03 08:57:50.000000000 +0100 -+++ ticodecplugin/src/gsttividdec2.h 2009-03-03 08:59:20.000000000 +0100 -@@ -96,6 +96,8 @@ - /* Framerate (Num/Den) */ - gint framerateNum; - gint framerateDen; -+ gint height; -+ gint width; - - /* Buffer management */ - UInt32 numOutputBufs; diff --git a/recipes/ti/gstreamer-ti/gstreamer-ti-tracker-462.patch b/recipes/ti/gstreamer-ti/gstreamer-ti-tracker-462.patch new file mode 100644 index 0000000000..c115161dcc --- /dev/null +++ b/recipes/ti/gstreamer-ti/gstreamer-ti-tracker-462.patch @@ -0,0 +1,68 @@ +diff -uNr ticodecplugin/src/gsttividdec.c ticodecplugin.new/src/gsttividdec.c +--- ticodecplugin/src/gsttividdec.c 2009-09-05 00:04:51.000000000 -0500 ++++ ticodecplugin.new/src/gsttividdec.c 2009-09-05 03:54:42.000000000 -0500 +@@ -82,7 +82,7 @@ + GST_PAD_ALWAYS, + GST_STATIC_CAPS + ("video/mpeg, " +- "mpegversion=(int){ 2, 4 }, " /* MPEG versions 2 and 4 */ ++ "mpegversion=(int){ 2, 4 }, " /* MPEG versions 2 and 4 */ + "systemstream=(boolean)false, " + "framerate=(fraction)[ 0, MAX ], " + "width=(int)[ 1, MAX ], " +@@ -90,7 +90,8 @@ + "video/x-h264, " /* H264 */ + "framerate=(fraction)[ 0, MAX ], " + "width=(int)[ 1, MAX ], " +- "height=(int)[ 1, MAX ]" ++ "height=(int)[ 1, MAX ] ;" ++ "video/x-xvid" /* XVID */ + ) + ); + +@@ -614,6 +615,11 @@ + codec = gst_ticodec_get_codec("H.264 Video Decoder"); + } + ++ /* XVID Decode */ ++ else if (!strcmp(mime, "video/x-xvid")) { ++ codec = gst_ticodec_get_codec("MPEG4 Video Decoder"); ++ } ++ + /* Mime type not supported */ + else { + GST_ERROR("stream type not supported"); +diff -uNr ticodecplugin/src/gsttividdec2.c ticodecplugin.new/src/gsttividdec2.c +--- ticodecplugin/src/gsttividdec2.c 2009-09-05 00:04:51.000000000 -0500 ++++ ticodecplugin.new/src/gsttividdec2.c 2009-09-05 03:54:42.000000000 -0500 +@@ -83,7 +83,7 @@ + GST_PAD_ALWAYS, + GST_STATIC_CAPS + ("video/mpeg, " +- "mpegversion=(int){ 2, 4 }, " /* MPEG versions 2 and 4 */ ++ "mpegversion=(int){ 2, 4 }, " /* MPEG versions 2 and 4 */ + "systemstream=(boolean)false, " + "framerate=(fraction)[ 0, MAX ], " + "width=(int)[ 1, MAX ], " +@@ -91,7 +91,8 @@ + "video/x-h264, " /* H264 */ + "framerate=(fraction)[ 0, MAX ], " + "width=(int)[ 1, MAX ], " +- "height=(int)[ 1, MAX ]" ++ "height=(int)[ 1, MAX ] ;" ++ "video/x-xvid" /* XVID */ + ) + ); + +@@ -625,6 +626,11 @@ + codec = gst_ticodec_get_codec("H.264 Video Decoder"); + } + ++ /* XVID Decode */ ++ else if (!strcmp(mime, "video/x-xvid")) { ++ codec = gst_ticodec_get_codec("MPEG4 Video Decoder"); ++ } ++ + /* Mime type not supported */ + else { + GST_ERROR("stream type not supported"); diff --git a/recipes/ti/gstreamer-ti/gstreamer-ti-tracker-824.patch b/recipes/ti/gstreamer-ti/gstreamer-ti-tracker-824.patch new file mode 100644 index 0000000000..634fa4aaf6 --- /dev/null +++ b/recipes/ti/gstreamer-ti/gstreamer-ti-tracker-824.patch @@ -0,0 +1,147 @@ +--- ticodecplugin/ChangeLog ++++ ticodecplugin.new/ChangeLog +@@ -1,3 +1,7 @@ ++2009-08-14 Don Darling, Texas Instruments, Inc. ++ * src/{gstticodecplugin_omap3530.cfg,gstticodecs_omap3530.c}: ++ Update OMAP3530 Support to use DVSDK 3.00.00.40. ++ + 2009-07-28 Brijesh Singh, Texas Instruments, Inc. + * src/{gstticircbuffer.c}: + Fix potential memory leak in circular buffer when accel framecopy flag is +--- ticodecplugin/src/gstticodecplugin_omap3530.cfg ++++ ticodecplugin.new/src/gstticodecplugin_omap3530.cfg +@@ -12,8 +12,6 @@ + * + */ + +-prog.build.platform = "ti.platforms.evm3530"; +- + /* Load the Codec Engine 'Operating System Abstraction Layer' */ + var osalGlobal = xdc.useModule('ti.sdo.ce.osal.Global'); + +@@ -27,31 +25,20 @@ ipc.commType = ipc.COMM_DSPLINK; + /* + * ======== Engine Configuration ======== + */ +-var Engine = xdc.useModule('ti.sdo.ce.Engine'); +-var encEngine = Engine.createFromServer( +- "encode", +- "./encodeCombo.x64P", +- "ti.sdo.servers.encode" +- ); +-var decEngine = Engine.createFromServer( +- "decode", +- "./decodeCombo.x64P", +- "ti.sdo.servers.decode" ++var Engine = xdc.useModule('ti.sdo.ce.Engine'); ++var demoEngine = Engine.createFromServer( ++ "codecServer", ++ "./bin/cs.x64P", ++ "ti.sdo.server.cs" + ); + +-var encpath = "" + java.lang.System.getenv("ENCODE_COMBO"); +-if (encpath != "" && encpath != "null") { +- encEngine.server = java.lang.System.getenv("ENCODE_COMBO"); +-} +- +-var decpath = "" + java.lang.System.getenv("DECODE_COMBO"); +-if (decpath != "" && decpath != "null") { +- decEngine.server = java.lang.System.getenv("DECODE_COMBO"); ++var combopath = "" + java.lang.System.getenv("CODEC_SERVER"); ++if (combopath != "" && combopath != "null") { ++ demoEngine.server = java.lang.System.getenv("CODEC_SERVER"); + } + + /* Load support for the DMAI module */ + var DMAI = xdc.loadPackage('ti.sdo.dmai'); + +-/* Load support for user space DMA */ +-var SCPY = xdc.useModule("ti.sdo.fc.scpy.SCPY"); +-var SDMA = xdc.useModule("ti.sdo.linuxutils.sdma.SDMA"); ++var SCPY = xdc.useModule('ti.sdo.fc.scpy.SCPY'); ++var SDMA = xdc.useModule('ti.sdo.linuxutils.sdma.SDMA'); +--- ticodecplugin/src/gstticodecs_omap3530.c ++++ ticodecplugin.new/src/gstticodecs_omap3530.c +@@ -22,8 +22,7 @@ + #include "gstticodecs.h" + + /* Declaration of the production engine and decoders shipped with the DVSDK */ +-static Char decodeEngine[] = "decode"; +-static Char encodeEngine[] = "encode"; ++static Char codecServer[] = "codecServer"; + + /* NULL terminated list of speech decoders in the engine to use in the demo */ + GstTICodec gst_ticodec_codecs[] = { +@@ -32,59 +31,55 @@ GstTICodec gst_ticodec_codecs[] = { + { + "AAC Audio Decoder", /* String name of codec used by plugin */ + "aachedec", /* String name of codec used by CE */ +- decodeEngine /* Engine that contains this codec */ ++ codecServer /* Engine that contains this codec */ + }, { + "MPEG1L2 Audio Decoder", /* String name of codec used by plugin */ + "mp3dec", /* String name of codec used by CE */ +- decodeEngine /* Engine that contains this codec */ ++ codecServer /* Engine that contains this codec */ + }, { + "MPEG1L3 Audio Decoder", /* String name of codec used by plugin */ + "mp3dec", /* String name of codec used by CE */ +- decodeEngine /* Engine that contains this codec */ +- }, { +- "WMA Audio Decoder", /* String name of codec used by plugin */ +- "wmadec", /* String name of codec used by CE */ +- decodeEngine /* Engine that contains this codec */ ++ codecServer /* Engine that contains this codec */ + }, +- ++ + /* Video Decoders */ + { + "H.264 Video Decoder", /* String name of codec used by plugin */ + "h264dec", /* String name of codec used by CE */ +- decodeEngine /* Engine that contains this codec */ ++ codecServer /* Engine that contains this codec */ + }, { + "MPEG4 Video Decoder", /* String name of codec used by plugin */ + "mpeg4dec", /* String name of codec used by CE */ +- decodeEngine /* Engine that contains this codec */ ++ codecServer /* Engine that contains this codec */ + }, { + "MPEG2 Video Decoder", /* String name of codec used by plugin */ + "mpeg2dec", /* String name of codec used by CE */ +- decodeEngine /* Engine that contains this codec */ ++ codecServer /* Engine that contains this codec */ + }, + + /* Image Decoders */ + { + "JPEG Image Decoder", /* String name of codec used by plugin */ + "jpegdec", /* String name of codec used by CE */ +- decodeEngine /* Engine that contains this codec */ ++ codecServer /* Engine that contains this codec */ + }, + + /* Video Encoders */ + { + "H.264 Video Encoder", /* String name of codec used by plugin */ + "h264enc", /* String name of codec used by CE */ +- encodeEngine /* Engine that contains this codec */ ++ codecServer /* Engine that contains this codec */ + }, { + "MPEG4 Video Encoder", /* String name of codec used by plugin */ + "mpeg4enc", /* String name of codec used by CE */ +- encodeEngine /* Engine that contains this codec */ ++ codecServer /* Engine that contains this codec */ + }, + + /* Image Encoders */ + { + "JPEG Image Encoder", /* String name of codec used by plugin */ + "jpegenc", /* String name of codec used by CE */ +- encodeEngine /* Engine that contains this codec */ ++ codecServer /* Engine that contains this codec */ + }, + + { NULL } + diff --git a/recipes/ti/gstreamer-ti_svn.bb b/recipes/ti/gstreamer-ti_svn.bb index 59f7046bac..8fcc528019 100644 --- a/recipes/ti/gstreamer-ti_svn.bb +++ b/recipes/ti/gstreamer-ti_svn.bb @@ -7,13 +7,14 @@ inherit autotools DEPENDS = "ti-dmai gstreamer gst-plugins-base gst-plugins-good gst-plugins-ugly" # Fetch source from svn repo -SRCREV = "331" +SRCREV = "335" SRC_URI = "svn://gforge.ti.com/svn/gstreamer_ti/trunk;module=gstreamer_ti;proto=https;user=anonymous;pswd='' \ file://gstreamer-ti-tracker-824.patch;patch=1 \ + file://gstreamer-ti-tracker-462.patch;patch=1 \ " # Again, no '.' in PWD allowed :( -PR = "r32" +PR = "r33" PV = "svnr${SRCREV}" S = "${WORKDIR}/gstreamer_ti/ti_build/ticodecplugin" -- cgit v1.2.3