summaryrefslogtreecommitdiff
path: root/recipes/ti/gstreamer-ti/0001-gstreamer-ti-tracker-1055.patch
diff options
context:
space:
mode:
Diffstat (limited to 'recipes/ti/gstreamer-ti/0001-gstreamer-ti-tracker-1055.patch')
-rw-r--r--recipes/ti/gstreamer-ti/0001-gstreamer-ti-tracker-1055.patch994
1 files changed, 994 insertions, 0 deletions
diff --git a/recipes/ti/gstreamer-ti/0001-gstreamer-ti-tracker-1055.patch b/recipes/ti/gstreamer-ti/0001-gstreamer-ti-tracker-1055.patch
new file mode 100644
index 0000000000..99a94a5561
--- /dev/null
+++ b/recipes/ti/gstreamer-ti/0001-gstreamer-ti-tracker-1055.patch
@@ -0,0 +1,994 @@
+From 455900e8cbb7a88d3ec05cba5393f4ca0bf22adc Mon Sep 17 00:00:00 2001
+From: Brijesh Singh <bksingh@ti.com>
+Date: Sun, 9 May 2010 05:21:19 -0500
+Subject: [PATCH] gstreamer ti tracker 1055
+
+---
+ Makefile.external | 49 +++++++---
+ src/Makefile.am | 4 +-
+ src/gstticodecplugin_dm355.cfg | 143 ++++++++++++-----------------
+ src/gstticodecplugin_dm365.cfg | 185 ++++++++++++++++++--------------------
+ src/gstticodecplugin_dm6467t.cfg | 34 +++++++
+ src/gstticodecs_dm355.c | 11 +--
+ src/gstticodecs_dm365.c | 23 ++++--
+ src/gstticodecs_dm6467.c | 2 +-
+ src/gstticodecs_dm6467t.c | 69 ++++++++++++++
+ src/gsttidmaivideosink.c | 25 ++++-
+ src/gsttividdec2.c | 73 ++++++++-------
+ src/gsttividenc1.c | 10 ++-
+ src/gsttividresize.c | 4 +
+ 13 files changed, 380 insertions(+), 252 deletions(-)
+ create mode 100644 src/gstticodecplugin_dm6467t.cfg
+ create mode 100644 src/gstticodecs_dm6467t.c
+
+diff --git a/Makefile.external b/Makefile.external
+index ca14b49..1f67783 100644
+--- a/Makefile.external
++++ b/Makefile.external
+@@ -3,8 +3,7 @@
+ #
+ # The only customization required below is defining the DVSDK_PATH
+ # and, if your DVSDK doesn't include DMAI, the set DMAI_INSTALL_DIR variable
+-# appropriately. If your DVSDK does include DMAI, then delete the line
+-# setting the DMAI_INSTALL_DIR variable below.
++# appropriately.
+ #
+ # Copyright (C) 2009 Ridgerun
+ #
+@@ -17,15 +16,16 @@ DMAI_INSTALL_DIR=undefined
+ ifeq ($(DVSDK_PATH),undefined)
+ $(error You need to define the environment variable DVSDK_PATH)
+ endif
++include $(DVSDK_PATH)/Rules.make
++
+ ifeq ($(DMAI_INSTALL_DIR),undefined)
+ $(error You need to define the environment variable DMAI_INSTALL_DIR)
+ endif
+
+ default:
+- @echo "Please specify the target: dm6446, omap3530, dm355, dm6467, dm365"
++ @echo "Please specify the target: dm6446, omap3530, dm355, dm6467, dm6467t, dm365"
+
+-include $(DVSDK_PATH)/Rules.make
+-export PLATFORM=$(MAKECMDGOALS)
++export GST_TI_PLATFORM=$(MAKECMDGOALS)
+ export BIOS_INSTALL_DIR
+ export CE_INSTALL_DIR
+ export CMEM_INSTALL_DIR
+@@ -33,6 +33,7 @@ export CODEC_INSTALL_DIR
+ export DMAI_INSTALL_DIR
+ export FC_INSTALL_DIR
+ export LINK_INSTALL_DIR
++export LINK_XDC_ROOT = $(LINK_INSTALL_DIR)/packages
+ export LINUXKERNEL_INSTALL_DIR
+ export LPM_INSTALL_DIR
+ export MVTOOL_DIR
+@@ -41,34 +42,49 @@ export XDAIS_INSTALL_DIR
+ export XDC_INSTALL_DIR
+ export EDMA3_LLD_INSTALL_DIR
+
+-ifeq ($(PLATFORM), dm355)
+- export XDC_TARGET = gnu.targets.MVArm9
+- export XDC_PLATFORM = ti.platforms.evmDM355
++ifeq ($(GST_TI_PLATFORM), dm355)
++ export XDC_TARGET = gnu.targets.arm.GCArmv5T
++ export XDC_PLATFORM = ti.platforms.evmDM355
++ export MVTOOL_PREFIX = $(CSTOOL_PREFIX)
++ export MVTOOL_DIR = $(CSTOOL_DIR)
++ export PLATFORM_XDC = ${XDC_PLATFORM}
+ endif
+
+-ifeq ($(PLATFORM), dm6446)
++ifeq ($(GST_TI_PLATFORM), dm6446)
+ export XDC_TARGET = gnu.targets.MVArm9
+ export XDC_PLATFORM = ti.platforms.evmDM6446
+ endif
+
+-ifeq ($(PLATFORM), dm6467)
++ifeq ($(GST_TI_PLATFORM), dm6467)
+ export XDC_TARGET = gnu.targets.MVArm9
+ export XDC_PLATFORM = ti.platforms.evmDM6467
+ endif
+
+-ifeq ($(PLATFORM), dm365)
+- export XDC_TARGET = gnu.targets.MVArm9
+- export XDC_PLATFORM = ti.platforms.evmDM365
++ifeq ($(GST_TI_PLATFORM), dm6467t)
++ export XDC_TARGET = gnu.targets.arm.GCArmv5T
++ export XDC_PLATFORM = ti.platforms.evmDM6467
++ export LINK_XDC_ROOT = $(LINK_INSTALL_DIR)
++ export MVTOOL_PREFIX = $(CSTOOL_PREFIX)
++ export MVTOOL_DIR = $(CSTOOL_DIR)
++ export PLATFORM_XDC = ${XDC_PLATFORM}
+ endif
+
+-ifeq ($(PLATFORM), omap3530)
++ifeq ($(GST_TI_PLATFORM), dm365)
++ export XDC_TARGET = gnu.targets.arm.GCArmv5T
++ export XDC_PLATFORM = ti.platforms.evmDM365
++ export MVTOOL_PREFIX = $(CSTOOL_PREFIX)
++ export MVTOOL_DIR = $(CSTOOL_DIR)
++ export PLATFORM_XDC = ${XDC_PLATFORM}
++endif
++
++ifeq ($(GST_TI_PLATFORM), omap3530)
+ export XDC_TARGET = gnu.targets.arm.GCArmv5T
+ export XDC_PLATFORM = ti.platforms.evm3530
+ export MVTOOL_PREFIX = $(CSTOOL_PREFIX)
+ export MVTOOL_DIR = $(CSTOOL_DIR)
+ endif
+
+-CPPFLAGS=-DPlatform_$(PLATFORM)
++CPPFLAGS=-DPlatform_$(GST_TI_PLATFORM)
+ HOST=arm-none-linux-gnueabi
+
+ configure:
+@@ -86,6 +102,9 @@ dm6446: Makefile
+ dm6467: Makefile
+ $(MAKE) -f Makefile
+
++dm6467t: Makefile
++ $(MAKE) -f Makefile
++
+ dm355: Makefile
+ $(MAKE) -f Makefile
+
+diff --git a/src/Makefile.am b/src/Makefile.am
+index 231beb0..95973a8 100644
+--- a/src/Makefile.am
++++ b/src/Makefile.am
+@@ -1,6 +1,6 @@
+ # plugindir is set in configure
+
+-XDC_CONFIG_BASENAME = gstticodecplugin_$(PLATFORM)
++XDC_CONFIG_BASENAME = gstticodecplugin_$(GST_TI_PLATFORM)
+ plugin_LTLIBRARIES = libgstticodecplugin.la
+
+ # sources used to compile this plug-in
+@@ -21,7 +21,7 @@ BUILT_SOURCES = $(XDC_CONFIG_BASENAME)/compiler.opt $(XDC_CONFIG_BASENAME)/linke
+ XDC_PATH = .;$(XDC_INSTALL_DIR)/packages;$(LINK_XDC_ROOT);$(FC_INSTALL_DIR)/packages;$(CE_INSTALL_DIR)/packages;$(XDAIS_INSTALL_DIR)/packages;$(CODEC_INSTALL_DIR)/packages;$(CMEM_INSTALL_DIR)/packages;$(DMAI_INSTALL_DIR)/packages;$(LPM_INSTALL_DIR)/packages;$(XDC_USER_PATH);$(EDMA3_LLD_INSTALL_DIR)/packages;
+
+ gstticodecs_platform.c :
+- ln -s $(srcdir)/gstticodecs_$(PLATFORM).c gstticodecs_platform.c
++ ln -s $(srcdir)/gstticodecs_$(GST_TI_PLATFORM).c gstticodecs_platform.c
+
+ %/compiler.opt %/linker.cmd : %.cfg
+ XDCPATH="$(XDC_PATH)" $(CONFIGURO) -c $(MVTOOL_DIR) -o $(XDC_CONFIG_BASENAME) -t $(XDC_TARGET) -p $(XDC_PLATFORM) -b $(DMAI_INSTALL_DIR)/packages/config.bld $<
+diff --git a/src/gstticodecplugin_dm355.cfg b/src/gstticodecplugin_dm355.cfg
+index 7ceae4f..bf533f0 100644
+--- a/src/gstticodecplugin_dm355.cfg
++++ b/src/gstticodecplugin_dm355.cfg
+@@ -1,84 +1,59 @@
+-/*
+- * Copyright (C) $year Texas Instruments Incorporated - http://www.ti.com/
+- *
+- * This program is free software; you can redistribute it and/or modify
+- * it under the terms of the GNU Lesser General Public License as
+- * published by the Free Software Foundation version 2.1 of the License.
+- *
+- * This program is distributed #as is# WITHOUT ANY WARRANTY of any kind,
+- * whether express or implied; without even the implied warranty of
+- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+- * Lesser General Public License for more details.
+- *
+- */
+-
+-prog.build.platform = "ti.platforms.evmDM355";
+-
+-/* Load support for the Codec Engine OSAL */
+-var osalGlobal = xdc.useModule('ti.sdo.ce.osal.Global');
+-
+-/* Configure CE to use it's DSP Link Linux version */
+-osalGlobal.runtimeEnv = osalGlobal.LINUX;
+-
+-/*
+- * ======== Engine Configuration ========
+- */
+-var viddec = xdc.module('ti.sdo.ce.video2.IVIDDEC2');
+-var imgenc = xdc.module('ti.sdo.ce.image1.IIMGENC1');
+-var MPEG4DEC = xdc.useModule('ti.sdo.codecs.mpeg4dec.dm355.ce.MPEG4DEC');
+-var MPEG4ENC = xdc.useModule('ti.sdo.codecs.mpeg4enc.dm355.ce.MPEG4ENC');
+-var JPEGENC = xdc.useModule('ti.sdo.codecs.jpegenc.dm355.ce.JPEGENC');
+-var JPEGDEC = xdc.useModule('ti.sdo.codecs.jpegdec.dm355.ce.JPEGDEC');
+-
+-var Engine = xdc.useModule('ti.sdo.ce.Engine');
+-var decodeEngine = Engine.create("decode", [
+- {name: "mpeg4dec", mod: MPEG4DEC, local: true, groupId: 1},
+- {name: "jpegdec", mod: JPEGDEC, local: true, groupId: 1},
+-]);
+-
+-var encodeEngine = Engine.create("encode", [
+- {name: "mpeg4enc", mod: MPEG4ENC, local: true, groupId: 1},
+- {name: "jpegenc", mod: JPEGENC, local: true, groupId: 1},
+-]);
+-
+-/* Load support for the 'Davinci Multimedia Application Interface' modules */
+-var DMAI = xdc.loadPackage('ti.sdo.dmai');
+-
+-/*
+- * ======== DMAN3 Configuration ========
+- */
+-
+-var DMAN3 = xdc.useModule('ti.sdo.fc.dman3.DMAN3');
+-
+-/* give DMAN3 all TCCs except those hard-coded by The JPEG & MPEG Enc & Decs */
+-
+-/*
+- * For the 32-63 range, configure tccAllocationMaskH to exclude used channels
+- * JPEG Dec: {33-47, 52-57}
+- * JPEG Enc: {34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49}
+- * MPEG Dec: {32-63}
+- * MPEG Enc: {12, 13, 34, 35, 40,41,42,43,44,45,46,47,48,49,50,52,53,
+- * 54,55,56,57,63}
+- */
+-DMAN3.tccAllocationMaskH = 0x0; /* everthing 32-63 hardcoded and unavailable */
+-
+-/* Give DMAN3 all lower TCCs except what's taken by Linux kernel and a Codec:
+- * Based on the info from montavista: {2, 3, 8, 9, 26, 27, 30, 31}
+- * and MPEG Enc taking up: {12, 13}
+- */
+-DMAN3.tccAllocationMaskL = 0x33ffccf3;
+-
+-/* Following assignments will give DMAN3 control of PaRAMs above 78: */
+-DMAN3.paRamBaseIndex = 64;
+-DMAN3.numPaRamEntries = 48;
+-DMAN3.nullPaRamIndex = 127;
+-
+-/* Configure Scratch Group's DMAN3 resources */
+-DMAN3.numTccGroup[1] = 0;
+-DMAN3.numPaRamGroup[1] = 32;
+-
+-DMAN3.qdmaChannels = [0, 1, 2, 3, 4, 5, 6, 7];
+-DMAN3.maxQdmaChannels = 8;
+-DMAN3.numQdmaChannels = 8;
+-DMAN3.maxTCs = 2;
+-
++/* ===========================================================================
++ * Copyright (c) Texas Instruments Incorporated 2009
++ *
++ * Use of this software is controlled by the terms and conditions found in
++ * the license agreement under which this software has been supplied or
++ * provided.
++ * ===========================================================================
++ */
++
++/* Load support for the Codec Engine OSAL */
++var osalGlobal = xdc.useModule('ti.sdo.ce.osal.Global');
++
++/* Configure CE to use it's DSP Link Linux version */
++osalGlobal.runtimeEnv = osalGlobal.LINUX;
++
++/* Configure RMAN */
++var RMAN = xdc.useModule('ti.sdo.fc.rman.RMAN');
++RMAN.useDSKT2 = false;
++RMAN.persistentAllocFxn = "__ALG_allocMemory";
++RMAN.persistentFreeFxn = "__ALG_freeMemory";
++RMAN.semCreateFxn = "Sem_create";
++RMAN.semDeleteFxn = "Sem_delete";
++RMAN.semPendFxn = "Sem_pend";
++RMAN.semPostFxn = "Sem_post";
++RMAN.tableSize = 10;
++
++var EDMA3 = xdc.useModule('ti.sdo.fc.edma3.Settings');
++var EDMA3CHAN = xdc.useModule('ti.sdo.fc.ires.edma3chan.EDMA3CHAN');
++var EDMA = xdc.useModule('ti.sdo.linuxutils.edma.EDMA');
++var VICPLU = xdc.useModule('ti.sdo.linuxutils.vicp.VICP');
++var VICP = xdc.useModule('ti.sdo.fc.ires.vicp.VICP2');
++var VICPSYNC = xdc.useModule('ti.sdo.fc.vicpsync.VICPSYNC');
++var ADDRSPACE = xdc.useModule('ti.sdo.fc.ires.addrspace.ADDRSPACE');
++var CMEM = xdc.useModule('ti.sdo.linuxutils.cmem.CMEM');
++
++/*
++ * ======== Engine Configuration ========
++ */
++var viddec = xdc.module('ti.sdo.ce.video2.IVIDDEC2');
++var auddec = xdc.module('ti.sdo.ce.audio.IAUDDEC');
++var videnc = xdc.module('ti.sdo.ce.video1.IVIDENC1');
++var audenc = xdc.module('ti.sdo.ce.audio.IAUDENC');
++
++var MPEG4DEC = xdc.useModule('ti.sdo.codecs.mpeg4dec.ce.MPEG4DEC');
++var JPEGDEC = xdc.useModule('ti.sdo.codecs.jpegdec.ce.JPEGDEC');
++var MPEG4ENC = xdc.useModule('ti.sdo.codecs.mpeg4enc.ce.MPEG4ENC');
++var JPEGENC = xdc.useModule('ti.sdo.codecs.jpegenc.ce.JPEGENC');
++
++var Engine = xdc.useModule('ti.sdo.ce.Engine');
++var myEngine = Engine.create("codecServer", [
++ {name: "mpeg4dec", mod: MPEG4DEC, local: true, groupId: 1},
++ {name: "jpegdec", mod: JPEGDEC, local: true, groupId: 1},
++ {name: "mpeg4enc", mod: MPEG4ENC, local: true, groupId: 1},
++ {name: "jpegenc", mod: JPEGENC, local: true, groupId: 1}
++]);
++
++/* Load support for the 'Davinci Multimedia Application Interface' modules */
++var DMAI = xdc.loadPackage('ti.sdo.dmai');
++
+diff --git a/src/gstticodecplugin_dm365.cfg b/src/gstticodecplugin_dm365.cfg
+index 6442dce..0e94a35 100644
+--- a/src/gstticodecplugin_dm365.cfg
++++ b/src/gstticodecplugin_dm365.cfg
+@@ -1,99 +1,86 @@
+-/*
+- * Copyright (C) $year Texas Instruments Incorporated - http://www.ti.com/
+- *
+- * This program is free software; you can redistribute it and/or modify
+- * it under the terms of the GNU Lesser General Public License as
+- * published by the Free Software Foundation version 2.1 of the License.
+- *
+- * This program is distributed #as is# WITHOUT ANY WARRANTY of any kind,
+- * whether express or implied; without even the implied warranty of
+- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+- * Lesser General Public License for more details.
+- *
+- */
+-
+-prog.build.platform = "ti.platforms.evmDM365";
+-
+-/* Load support for the Codec Engine OSAL */
+-var osalGlobal = xdc.useModule('ti.sdo.ce.osal.Global');
+-
+-/* Configure CE to use it's DSP Link Linux version */
+-osalGlobal.runtimeEnv = osalGlobal.LINUX;
+-
+-/*
+- * ======== Engine Configuration ========
+- */
+-var videnc = xdc.module('ti.sdo.ce.video1.IVIDENC1');
+-var viddec = xdc.module('ti.sdo.ce.video2.IVIDDEC2');
+-
+-var MPEG4ENC = xdc.useModule('ti.sdo.codecs.mpeg4enc.ce.MPEG4ENC');
+-var H264ENC = xdc.useModule('ti.sdo.codecs.h264enc.ce.H264ENC');
+-var MPEG4DEC = xdc.useModule('ti.sdo.codecs.mpeg4dec.ce.MPEG4DEC');
+-var H264DEC = xdc.useModule('ti.sdo.codecs.h264dec.ce.H264DEC');
+-var JPEGENC = xdc.useModule('ti.sdo.codecs.jpegenc.ce.JPEGENC');
+-var JPEGDEC = xdc.useModule('ti.sdo.codecs.jpegdec.ce.JPEGDEC');
+-
+-var Engine = xdc.useModule('ti.sdo.ce.Engine');
+-var encodeEngine = Engine.create("encode", [
+- {name: "mpeg4enc", mod: MPEG4ENC, local: true, groupId: 1},
+- {name: "h264enc", mod: H264ENC, local: true, groupId: 1},
+- {name: "jpegenc", mod: JPEGENC, local: true, groupId: 1},
+-]);
+-var decodeEngine = Engine.create("decode", [
+- {name: "mpeg4dec", mod: MPEG4DEC, local: true, groupId: 1},
+- {name: "h264dec", mod: H264DEC, local: true, groupId: 1},
+- {name: "jpegdec", mod: JPEGDEC, local: true, groupId: 1},
+-]);
+-
+-/* Load support for the 'Davinci Multimedia Application Interface' modules */
+-var DMAI = xdc.loadPackage('ti.sdo.dmai');
+-
+-/* Load support for SimpleWidget */
+-/*var SW = xdc.loadPackage('ti.sdo.simplewidget');*/
+-
+-
+-/* Configure RMAN */
+-var RMAN = xdc.useModule('ti.sdo.fc.rman.RMAN');
+-RMAN.useDSKT2 = false;
+-RMAN.persistentAllocFxn = "__ALG_allocMemory";
+-RMAN.persistentFreeFxn = "__ALG_freeMemory";
+-RMAN.semCreateFxn = "Sem_create";
+-RMAN.semDeleteFxn = "Sem_delete";
+-RMAN.semPendFxn = "Sem_pend";
+-RMAN.semPostFxn = "Sem_post";
+-RMAN.tableSize = 10;
+-
+-/* Configure VICPSYNC */
+-var VICPSYNC = xdc.useModule('ti.sdo.fc.vicpsync.VICPSYNC');
+-
+-/* Configure HDVICPSYNC */
+-var HDVICPSYNC = xdc.useModule('ti.sdo.fc.hdvicpsync.HDVICPSYNC');
+-
+-/* Configure MEMUTILS */
+-var MEMUTILS = xdc.useModule('ti.sdo.fc.memutils.MEMUTILS');
+-
+-var EDMA3 = xdc.useModule('ti.sdo.fc.edma3.Settings');
+-
+-var HDVICP = xdc.useModule('ti.sdo.fc.ires.hdvicp.HDVICP');
+-
+-var VICP = xdc.useModule('ti.sdo.fc.ires.vicp.VICP2');
+-
+-var ADDRSPACE = xdc.useModule('ti.sdo.fc.ires.addrspace.ADDRSPACE');
+-
+-var EDMA3CHAN = xdc.useModule('ti.sdo.fc.ires.edma3chan.EDMA3CHAN');
+-
+-var LSP = xdc.useModule('ti.sdo.linuxutils.edma.EDMA');
+-
+-var CMEM = xdc.useModule('ti.sdo.linuxutils.cmem.CMEM');
+-
+-
+-/* Uncomment these lines if you wish to debug FC and enable FC trace */
+-
+-/*
+-xdc.loadPackage('ti.sdo.fc.ires.vicp').profile = "debug_trace";
+-xdc.loadPackage('ti.sdo.fc.ires.edma3chan').profile = "debug_trace";
+-xdc.loadPackage('ti.sdo.fc.rman').profile = "debug_trace";
+-xdc.loadPackage('ti.sdo.fc.edma3').profile = "debug_trace";
+-EDMA3CHAN.trace = true;
+-EDMA3CHAN.debug = true;
+-*/
++/* ============================================================================
++ * Copyright (c) Texas Instruments Incorporated 2009
++ *
++ * Use of this software is controlled by the terms and conditions found in the
++ * license agreement under which this software has been supplied or provided.
++ * ============================================================================
++ */
++
++/* Load support for the Codec Engine OSAL */
++var osalGlobal = xdc.useModule('ti.sdo.ce.osal.Global');
++
++/* Configure CE to use it's DSP Link Linux version */
++osalGlobal.runtimeEnv = osalGlobal.LINUX;
++
++/*
++ * ======== Engine Configuration ========
++ */
++var viddec = xdc.module('ti.sdo.ce.video2.IVIDDEC2');
++var auddec = xdc.module('ti.sdo.ce.audio.IAUDDEC');
++
++var MPEG4DEC = xdc.useModule('ti.sdo.codecs.mpeg4dec_hdvicp.ce.MPEG4DEC_HDVICP');
++var MPEG2DEC = xdc.useModule('ti.sdo.codecs.mpeg2dec.ce.MPEG2DEC');
++var H264DEC = xdc.useModule('ti.sdo.codecs.h264dec.ce.H264DEC');
++var MPEG4ENC = xdc.useModule('ti.sdo.codecs.mpeg4enc_hdvicp.ce.MPEG4ENC_HDVICP');
++var MPEG2ENC = xdc.useModule('ti.sdo.codecs.mpeg2enc.ce.MPEG2ENC');
++var H264ENC = xdc.useModule('ti.sdo.codecs.h264enc.ce.H264ENC');
++
++var Engine = xdc.useModule('ti.sdo.ce.Engine');
++var myEngine = Engine.create("codecServer", [
++ {name: "mpeg4dec", mod: MPEG4DEC, local: true, groupId: 1},
++ {name: "mpeg2dec", mod: MPEG2DEC, local: true, groupId: 1},
++ {name: "h264dec", mod: H264DEC, local: true, groupId: 1},
++ {name: "mpeg4enc", mod: MPEG4ENC, local: true, groupId: 1},
++ {name: "mpeg2enc", mod: MPEG2ENC, local: true, groupId: 1},
++ {name: "h264enc", mod: H264ENC, local: true, groupId: 1},
++]);
++
++
++
++/* Load support for the 'Davinci Multimedia Application Interface' modules */
++var DMAI = xdc.loadPackage('ti.sdo.dmai');
++
++/* Configure RMAN */
++var RMAN = xdc.useModule('ti.sdo.fc.rman.RMAN');
++RMAN.useDSKT2 = false;
++RMAN.persistentAllocFxn = "__ALG_allocMemory";
++RMAN.persistentFreeFxn = "__ALG_freeMemory";
++RMAN.semCreateFxn = "Sem_create";
++RMAN.semDeleteFxn = "Sem_delete";
++RMAN.semPendFxn = "Sem_pend";
++RMAN.semPostFxn = "Sem_post";
++RMAN.tableSize = 10;
++
++/* Configure VICPSYNC */
++var VICPSYNC = xdc.useModule('ti.sdo.fc.vicpsync.VICPSYNC');
++
++/* Configure HDVICPSYNC */
++var HDVICPSYNC = xdc.useModule('ti.sdo.fc.hdvicpsync.HDVICPSYNC');
++
++/* Configure MEMUTILS */
++var MEMUTILS = xdc.useModule('ti.sdo.fc.memutils.MEMUTILS');
++
++var EDMA3 = xdc.useModule('ti.sdo.fc.edma3.Settings');
++
++var HDVICP = xdc.useModule('ti.sdo.fc.ires.hdvicp.HDVICP');
++
++var VICP = xdc.useModule('ti.sdo.fc.ires.vicp.VICP2');
++
++var EDMA3CHAN = xdc.useModule('ti.sdo.fc.ires.edma3chan.EDMA3CHAN');
++
++var EDMA = xdc.useModule('ti.sdo.linuxutils.edma.EDMA');
++
++var ADDRSPACE = xdc.useModule('ti.sdo.fc.ires.addrspace.ADDRSPACE');
++
++var CMEM = xdc.useModule('ti.sdo.linuxutils.cmem.CMEM');
++
++/* Uncomment these lines if you wish to debug FC and enable FC trace */
++/*
++/*
++xdc.loadPackage('ti.sdo.fc.ires.vicp').profile = "debug_trace";
++xdc.loadPackage('ti.sdo.fc.ires.edma3chan').profile = "debug_trace";
++xdc.loadPackage('ti.sdo.fc.rman').profile = "debug_trace";
++xdc.loadPackage('ti.sdo.fc.edma3').profile = "debug_trace";
++EDMA3CHAN.trace = true;
++EDMA3CHAN.debug = true;
++*/
+diff --git a/src/gstticodecplugin_dm6467t.cfg b/src/gstticodecplugin_dm6467t.cfg
+new file mode 100644
+index 0000000..686cfeb
+--- /dev/null
++++ b/src/gstticodecplugin_dm6467t.cfg
+@@ -0,0 +1,34 @@
++/* ============================================================================
++ * Copyright (c) Texas Instruments Incorporated 2009
++ *
++ * Use of this software is controlled by the terms and conditions found in the
++ * license agreement under which this software has been supplied or provided.
++ * ============================================================================
++ */
++
++/* Load support for the Codec Engine OSAL */
++var osalGlobal = xdc.useModule('ti.sdo.ce.osal.Global');
++var os = xdc.useModule('ti.sdo.ce.osal.linux.Settings');
++osalGlobal.os = os;
++
++/* Configure CE to use it's DSP Link Linux version */
++var ipc = xdc.useModule('ti.sdo.ce.ipc.Settings');
++ipc.commType = ipc.COMM_DSPLINK;
++
++/*
++ * ======== Engine Configuration ========
++ */
++var Engine = xdc.useModule('ti.sdo.ce.Engine');
++var demoEngine = Engine.createFromServer(
++ "codecServer",
++ "./bin/cs.x64P",
++ "ti.sdo.server.cs"
++ );
++
++var combopath = "" + java.lang.System.getenv("CODEC_SERVER");
++if (combopath != "" && combopath != "null") {
++ demoEngine.server = java.lang.System.getenv("CODEC_SERVER");
++}
++
++/* Load support for the 'Davinci Multimedia Application Interface' modules */
++var DMAI = xdc.loadPackage('ti.sdo.dmai');
+diff --git a/src/gstticodecs_dm355.c b/src/gstticodecs_dm355.c
+index a372b06..9d4325b 100644
+--- a/src/gstticodecs_dm355.c
++++ b/src/gstticodecs_dm355.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,25 +31,25 @@ GstTICodec gst_ticodec_codecs[] = {
+ {
+ "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 */
+ },
+
+ {
+ "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 */
+ },
+
+ /* Imaging Codecs */
+ {
+ "JPEG Image Encoder",
+ "jpegenc",
+- encodeEngine
++ codecServer
+ },
+ {
+ "JPEG Image Decoder",
+ "jpegdec",
+- decodeEngine
++ codecServer
+ },
+
+ { NULL }
+diff --git a/src/gstticodecs_dm365.c b/src/gstticodecs_dm365.c
+index 9572403..cf81e6f 100644
+--- a/src/gstticodecs_dm365.c
++++ b/src/gstticodecs_dm365.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,25 +31,37 @@ GstTICodec gst_ticodec_codecs[] = {
+ {
+ "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 */
++ 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 */
++ },
++
++ {
++ "MPEG2 Video Encoder", /* String name of codec used by plugin */
++ "mpeg2enc", /* String name of codec used by CE */
++ codecServer /* Engine that contains this codec */
+ },
+
+ {
+ "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 */
+ },
+
+ {
+ "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 */
+ },
+
+ { NULL }
+diff --git a/src/gstticodecs_dm6467.c b/src/gstticodecs_dm6467.c
+index b9b0499..cbb6520 100644
+--- a/src/gstticodecs_dm6467.c
++++ b/src/gstticodecs_dm6467.c
+@@ -1,5 +1,5 @@
+ /*
+- * gstticodecs_dm6446.c
++ * gstticodecs_dm6467.c
+ *
+ * This file provides information for available codecs on the DM6446 platform.
+ *
+diff --git a/src/gstticodecs_dm6467t.c b/src/gstticodecs_dm6467t.c
+new file mode 100644
+index 0000000..fe597d5
+--- /dev/null
++++ b/src/gstticodecs_dm6467t.c
+@@ -0,0 +1,69 @@
++/*
++ * gstticodecs_dm6467t.c
++ *
++ * This file provides information for available codecs on the DM6446 platform.
++ *
++ * Original Author:
++ * Don Darling, Texas Instruments, Inc.
++ *
++ * Copyright (C) $year Texas Instruments Incorporated - http://www.ti.com/
++ *
++ * This program is free software; you can redistribute it and/or modify
++ * it under the terms of the GNU Lesser General Public License as
++ * published by the Free Software Foundation version 2.1 of the License.
++ *
++ * This program is distributed #as is# WITHOUT ANY WARRANTY of any kind,
++ * whether express or implied; without even the implied warranty of
++ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
++ * Lesser General Public License for more details.
++ *
++ */
++
++#include "gstticodecs.h"
++
++/* Declaration of the production engine and decoders shipped with the DVSDK */
++static Char codecServer[] = "codecServer";
++
++/* NULL terminated list of speech decoders in the engine to use in the demo */
++GstTICodec gst_ticodec_codecs[] = {
++
++ /* Speech Codecs */
++ {
++ "G.711 Speech Decoder", /* String name of codec used by plugin */
++ "g711dec", /* String name of codec used by CE */
++ codecServer /* Engine that contains this codec */
++ }, {
++ "G.711 Speech Encoder", /* String name of codec used by plugin */
++ "g711enc", /* String name of codec used by CE */
++ codecServer /* Engine that contains this codec */
++ },
++
++ /* Audio Codecs */
++ {
++ "AAC Audio Decoder", /* String name of codec used by plugin */
++ "aachedec", /* String name of codec used by CE */
++ codecServer /* Engine that contains this codec */
++ },
++
++ /* Video Codecs */
++ {
++ "H.264 Video Decoder", /* String name of codec used by plugin */
++ "h264dec", /* String name of codec used by CE */
++ codecServer /* Engine that contains this codec */
++ }, {
++ "H.264 BP/HP Decoder", /* Name of codec used by plugin */
++ "h2641080p60vdec", /* String name of codec used by CE */
++ codecServer /* Engine that contains this codec */
++ }, {
++ "H.264 Video Encoder", /* String name of codec used by plugin */
++ "h264enc", /* String name of codec used by CE */
++ codecServer /* Engine that contains this codec */
++ }, {
++ "MPEG2 Video Decoder", /* String name of codec used by plugin */
++ "mpeg2dec", /* String name of codec used by CE */
++ codecServer /* Engine that contains this codec */
++ },
++
++ { NULL }
++};
++
+diff --git a/src/gsttidmaivideosink.c b/src/gsttidmaivideosink.c
+index 5f6a5b3..81bdac7 100644
+--- a/src/gsttidmaivideosink.c
++++ b/src/gsttidmaivideosink.c
+@@ -32,11 +32,12 @@
+ /* Define sink (input) pad capabilities.
+ *
+ * UYVY - YUV 422 interleaved corresponding to V4L2_PIX_FMT_UYVY in v4l2
+- * Y8C8 - YUV 422 semi planar. The dm6467 VDCE outputs this format after a
++ * NV16 - YUV 422 semi planar. The dm6467 VDCE outputs this format after a
+ * color conversion.The format consists of two planes: one with the
+ * Y component and one with the CbCr components interleaved (hence semi) *
+ * See the LSP VDCE documentation for a thorough description of this
+ * format.
++ * Y8C8 - Same as NV16. Y8C8 was used in MVL-based LSPs.
+ * NV12 - YUV 420 semi planar corresponding to V4L2_PIX_FMT_NV12 in v4l2.
+ * The format consists of two planes: one with the
+ * Y component and one with the CbCr components interleaved with
+@@ -62,6 +63,11 @@ static GstStaticPadTemplate sink_factory = GST_STATIC_PAD_TEMPLATE (
+ "width=(int)[ 1, MAX ], "
+ "height=(int)[ 1, MAX ];"
+ "video/x-raw-yuv, "
++ "format=(fourcc)NV16, "
++ "framerate=(fraction)[ 0, MAX ], "
++ "width=(int)[ 1, MAX ], "
++ "height=(int)[ 1, MAX ];"
++ "video/x-raw-yuv, "
+ "format=(fourcc)NV12, "
+ "framerate=(fraction)[ 0, MAX ], "
+ "width=(int)[ 1, MAX ], "
+@@ -219,7 +225,7 @@ static void gst_tidmaivideosink_class_init(GstTIDmaiVideoSinkClass * klass)
+ "Video Standard used\n"
+ "\tAUTO (if supported), CIF, SIF_NTSC, SIF_PAL, VGA, D1_NTSC\n"
+ "\tD1_PAL, 480P, 576P, 720P_60, 720P_50, 1080I_30, 1080I_25\n"
+- "\t1080P_30, 1080P_25, 1080P_24\n",
++ "\t1080P_30, 1080P_60, 1080P_25, 1080P_24\n",
+ NULL, G_PARAM_READWRITE));
+
+ g_object_class_install_property(gobject_class, PROP_VIDEOOUTPUT,
+@@ -661,6 +667,9 @@ static int gst_tidmaivideosink_videostd_get_attrs(VideoStd_Type videoStd,
+ break;
+ case VideoStd_480P:
+ case VideoStd_720P_60:
++ #if defined(Platform_dm6467t)
++ case VideoStd_1080P_60:
++ #endif
+ vattrs->framerate = 60;
+ break;
+
+@@ -715,6 +724,9 @@ static int gst_tidmaivideosink_videostd_get_refresh_latency(
+
+ case VideoStd_480P:
+ case VideoStd_720P_60:
++ #if defined(Platform_dm6467t)
++ case VideoStd_1080P_60:
++ #endif
+ return 16667;
+
+ #if defined(Platform_omap3530)
+@@ -949,6 +961,10 @@ static int gst_tidmaivideosink_convert_attrs(int attr,
+ return VideoStd_1080P_25;
+ else if (!strcmp(sink->videoStd, "1080P_24"))
+ return VideoStd_1080P_24;
++ #if defined(Platform_dm6467t)
++ else if (!strcmp(sink->videoStd, "1080P_60"))
++ return VideoStd_1080P_60;
++ #endif
+ #if defined(Platform_omap3530)
+ else if (!strcmp(sink->videoStd, "VGA"))
+ return VideoStd_VGA;
+@@ -958,7 +974,7 @@ static int gst_tidmaivideosink_convert_attrs(int attr,
+ "Please choose from:\n"
+ "\tAUTO (if supported), CIF, SIF_NTSC, SIF_PAL, VGA, D1_NTSC\n"
+ "\tD1_PAL, 480P, 576P, 720P_60, 720P_50, 1080I_30, 1080I_25\n"
+- "\t1080P_30, 1080P_25, 1080P_24\n", sink->videoStd);
++ "\t1080P_30, 1080P_60, 1080P_25, 1080P_24\n", sink->videoStd);
+ return -1;
+ }
+ break;
+@@ -1307,14 +1323,13 @@ static gboolean gst_tidmaivideosink_process_caps(GstBaseSink * bsink,
+ case GST_MAKE_FOURCC('U', 'Y', 'V', 'Y'):
+ inBufColorSpace = ColorSpace_UYVY;
+ break;
++ case GST_MAKE_FOURCC('N', 'V', '1', '6'):
+ case GST_MAKE_FOURCC('Y', '8', 'C', '8'):
+ inBufColorSpace = ColorSpace_YUV422PSEMI;
+ break;
+- #if defined(Platform_dm365)
+ case GST_MAKE_FOURCC('N', 'V', '1', '2'):
+ inBufColorSpace = ColorSpace_YUV420PSEMI;
+ break;
+- #endif
+ default:
+ GST_ERROR("unsupported fourcc\n");
+ return FALSE;
+diff --git a/src/gsttividdec2.c b/src/gsttividdec2.c
+index 0804065..79b28a5 100644
+--- a/src/gsttividdec2.c
++++ b/src/gsttividdec2.c
+@@ -674,16 +674,8 @@ static gboolean gst_tividdec2_set_source_caps(
+ given buffer */
+ BufferGfx_getDimensions(hBuf, &dim);
+
+-#if !defined(Platform_dm365)
+- caps =
+- gst_caps_new_simple("video/x-raw-yuv",
+- "format", GST_TYPE_FOURCC, GST_MAKE_FOURCC('U','Y','V','Y'),
+- "framerate", GST_TYPE_FRACTION, viddec2->framerateNum,
+- viddec2->framerateDen,
+- "width", G_TYPE_INT, dim.width,
+- "height", G_TYPE_INT, dim.height,
+- NULL);
+-#else
++#if defined(Platform_dm365) || defined(Platform_dm6467) || \
++ defined(Platform_dm6467t)
+ caps =
+ gst_caps_new_simple("video/x-raw-yuv",
+ "format", GST_TYPE_FOURCC, GST_MAKE_FOURCC('N','V','1','2'),
+@@ -692,6 +684,15 @@ static gboolean gst_tividdec2_set_source_caps(
+ "width", G_TYPE_INT, dim.width,
+ "height", G_TYPE_INT, dim.height,
+ NULL);
++#else
++ caps =
++ gst_caps_new_simple("video/x-raw-yuv",
++ "format", GST_TYPE_FOURCC, GST_MAKE_FOURCC('U','Y','V','Y'),
++ "framerate", GST_TYPE_FRACTION, viddec2->framerateNum,
++ viddec2->framerateDen,
++ "width", G_TYPE_INT, dim.width,
++ "height", G_TYPE_INT, dim.height,
++ NULL);
+ #endif
+
+ /* Set the source pad caps */
+@@ -1227,29 +1228,35 @@ static gboolean gst_tividdec2_codec_start (GstTIViddec2 *viddec2)
+
+ /* Set up codec parameters depending on device */
+ switch(device) {
+- case Cpu_Device_DM6467:
+- params.forceChromaFormat = XDM_YUV_420P;
+- params.maxWidth = VideoStd_1080I_WIDTH;
+- params.maxHeight = VideoStd_1080I_HEIGHT + 8;
+- colorSpace = ColorSpace_YUV420PSEMI;
+- defaultNumBufs = 5;
+- break;
+-#if defined(Platform_dm365)
+- case Cpu_Device_DM365:
+- params.forceChromaFormat = XDM_YUV_420SP;
+- params.maxWidth = VideoStd_720P_WIDTH;
+- params.maxHeight = VideoStd_720P_HEIGHT;
+- colorSpace = ColorSpace_YUV420PSEMI;
+- defaultNumBufs = 5;
+- break;
+-#endif
+- default:
+- params.forceChromaFormat = XDM_YUV_422ILE;
+- params.maxWidth = VideoStd_D1_WIDTH;
+- params.maxHeight = VideoStd_D1_PAL_HEIGHT;
+- colorSpace = ColorSpace_UYVY;
+- defaultNumBufs = 3;
+- break;
++ case Cpu_Device_DM6467:
++ #if defined(Platform_dm6467t)
++ params.forceChromaFormat = XDM_YUV_420SP;
++ params.maxFrameRate = 60000;
++ params.maxBitRate = 30000000;
++ #else
++ params.forceChromaFormat = XDM_YUV_420P;
++ #endif
++ params.maxWidth = VideoStd_1080I_WIDTH;
++ params.maxHeight = VideoStd_1080I_HEIGHT + 8;
++ colorSpace = ColorSpace_YUV420PSEMI;
++ defaultNumBufs = 5;
++ break;
++ #if defined(Platform_dm365)
++ case Cpu_Device_DM365:
++ params.forceChromaFormat = XDM_YUV_420SP;
++ params.maxWidth = VideoStd_720P_WIDTH;
++ params.maxHeight = VideoStd_720P_HEIGHT;
++ colorSpace = ColorSpace_YUV420PSEMI;
++ defaultNumBufs = 4;
++ break;
++ #endif
++ default:
++ params.forceChromaFormat = XDM_YUV_422ILE;
++ params.maxWidth = VideoStd_D1_WIDTH;
++ params.maxHeight = VideoStd_D1_PAL_HEIGHT;
++ colorSpace = ColorSpace_UYVY;
++ defaultNumBufs = 3;
++ break;
+ }
+
+ GST_LOG("opening video decoder \"%s\"\n", viddec2->codecName);
+diff --git a/src/gsttividenc1.c b/src/gsttividenc1.c
+index f9c6f1a..2e1fb31 100644
+--- a/src/gsttividenc1.c
++++ b/src/gsttividenc1.c
+@@ -133,6 +133,11 @@ static GstStaticPadTemplate sink_factory = GST_STATIC_PAD_TEMPLATE(
+ "framerate=(fraction)[ 0, MAX ], "
+ "width=(int)[ 1, MAX ], "
+ "height=(int)[ 1, MAX ];"
++ "video/x-raw-yuv, " /* NV16 - YUV422 semi planar */
++ "format=(fourcc)NV16, "
++ "framerate=(fraction)[ 0, MAX ], "
++ "width=(int)[ 1, MAX ], "
++ "height=(int)[ 1, MAX ];"
+ "video/x-raw-yuv, " /* NV12 - YUV420 semi planar */
+ "format=(fourcc)NV12, "
+ "framerate=(fraction)[ 0, MAX ], "
+@@ -290,7 +295,7 @@ static void gst_tividenc1_class_init(GstTIVidenc1Class *klass)
+
+ g_object_class_install_property(gobject_class, PROP_IN_COLORSPACE,
+ g_param_spec_string("iColorSpace", "Input colorspace",
+- "Input color space (UYVY, Y8C8 or NV12)",
++ "Input color space (UYVY, Y8C8, NV16 or NV12)",
+ "unspecified", G_PARAM_READWRITE));
+
+ g_object_class_install_property(gobject_class, PROP_BITRATE,
+@@ -456,6 +461,8 @@ static ColorSpace_Type gst_tividenc1_find_colorSpace (const gchar *colorSpace)
+ {
+ if (!strcmp(colorSpace, "UYVY"))
+ return ColorSpace_UYVY;
++ else if (!strcmp(colorSpace, "NV16"))
++ return ColorSpace_YUV422PSEMI;
+ else if (!strcmp(colorSpace, "Y8C8"))
+ return ColorSpace_YUV422PSEMI;
+ else if (!strcmp(colorSpace, "NV12"))
+@@ -665,6 +672,7 @@ static gboolean gst_tividenc1_set_sink_caps(GstPad *pad, GstCaps *caps)
+ videnc1->colorSpace = ColorSpace_UYVY;
+ break;
+
++ case GST_MAKE_FOURCC('N', 'V', '1', '6'):
+ case GST_MAKE_FOURCC('Y', '8', 'C', '8'):
+ videnc1->colorSpace = ColorSpace_YUV422PSEMI;
+ break;
+diff --git a/src/gsttividresize.c b/src/gsttividresize.c
+index 5757705..c200787 100644
+--- a/src/gsttividresize.c
++++ b/src/gsttividresize.c
+@@ -90,6 +90,7 @@ static GstStaticPadTemplate sink_factory = GST_STATIC_PAD_TEMPLATE(
+ GST_PAD_ALWAYS,
+ GST_STATIC_CAPS
+ ( GST_VIDEO_CAPS_YUV("UYVY")";"
++ GST_VIDEO_CAPS_YUV("NV16")";"
+ GST_VIDEO_CAPS_YUV("Y8C8")";"
+ GST_VIDEO_CAPS_YUV("NV12")
+ )
+@@ -101,6 +102,7 @@ static GstStaticPadTemplate src_factory = GST_STATIC_PAD_TEMPLATE(
+ GST_PAD_ALWAYS,
+ GST_STATIC_CAPS
+ ( GST_VIDEO_CAPS_YUV("UYVY")";"
++ GST_VIDEO_CAPS_YUV("NV16")";"
+ GST_VIDEO_CAPS_YUV("Y8C8")";"
+ GST_VIDEO_CAPS_YUV("NV12")
+ )
+@@ -583,6 +585,7 @@ static GstCaps * gst_tividresize_transform_caps (GstBaseTransform *trans,
+ int i;
+ static const guint32 supported_fmt[] = {
+ GST_MAKE_FOURCC('U','Y','V','Y'),
++ GST_MAKE_FOURCC('N','V','1','6'),
+ GST_MAKE_FOURCC('Y','8','C','8'),
+ GST_MAKE_FOURCC('N','V','1','2'),
+ };
+@@ -649,6 +652,7 @@ ColorSpace_Type gst_tividresize_get_colorSpace (guint32 fourcc)
+ switch (fourcc) {
+ case GST_MAKE_FOURCC('U', 'Y', 'V', 'Y'):
+ return ColorSpace_UYVY;
++ case GST_MAKE_FOURCC('N', 'V', '1', '6'):
+ case GST_MAKE_FOURCC('Y', '8', 'C', '8'):
+ return ColorSpace_YUV422PSEMI;
+ case GST_MAKE_FOURCC('N', 'V', '1', '2'):
+--
+1.5.4.3
+