From: hschang Date: Mon, 2 Sep 2013 04:55:33 +0000 (+0900) Subject: dvbmediasink : support DDP patch. X-Git-Url: http://code.vuplus.com/gitweb/?p=vuplus_openvuplus_3.0;a=commitdiff_plain;h=26f68a2d57f37284103fec4e862d271710cec38d dvbmediasink : support DDP patch. --- diff --git a/meta-openvuplus/recipes-multimedia/gstreamer/gst-plugin-dvbmediasink/fix_dvbaudiosink_support_ddp.patch b/meta-openvuplus/recipes-multimedia/gstreamer/gst-plugin-dvbmediasink/fix_dvbaudiosink_support_ddp.patch new file mode 100755 index 0000000..e4ee126 --- /dev/null +++ b/meta-openvuplus/recipes-multimedia/gstreamer/gst-plugin-dvbmediasink/fix_dvbaudiosink_support_ddp.patch @@ -0,0 +1,54 @@ +diff --git a/src/gstdvbaudiosink.c b/src/gstdvbaudiosink.c +index 15f020f..63978a4 100644 +--- a/src/gstdvbaudiosink.c ++++ b/src/gstdvbaudiosink.c +@@ -198,7 +198,9 @@ GST_STATIC_PAD_TEMPLATE ( + X_RAW_INT(32,32) + "audio/mpeg; " + "audio/x-ac3; " ++ "audio/x-eac3; " + "audio/x-private1-ac3; " ++ "audio/x-private1-eac3; " + "audio/x-dts; " + "audio/x-private1-dts; " + "audio/x-private1-lpcm; " +@@ -345,6 +347,7 @@ gst_dvbaudiosink_acceptcaps (GstPad * pad, GstCaps * caps) + + if (!strcmp(type, "audio/mpeg") || + !strcmp(type, "audio/x-ac3") || ++ !strcmp(type, "audio/x-eac3") || + // !strcmp(type, "audio/x-private1-ac3") || + // !strcmp(type, "audio/x-private1-lpcm") || + // !strcmp(type, "audio/x-wma") || +@@ -844,6 +847,10 @@ gst_dvbaudiosink_set_caps (GstBaseSink * basesink, GstCaps * caps) + GST_INFO_OBJECT (self, "MIMETYPE %s",type); + bypass = 0; + } ++ else if (!strcmp(type, "audio/x-eac3")) { ++ GST_INFO_OBJECT (self, "MIMETYPE %s",type); ++ bypass = 0x22; ++ } + else if (!strcmp(type, "audio/x-private1-dts")) { + GST_INFO_OBJECT (self, "MIMETYPE %s (DVD Audio - 2 byte skipping)",type); + bypass = 2; +@@ -854,6 +861,11 @@ gst_dvbaudiosink_set_caps (GstBaseSink * basesink, GstCaps * caps) + bypass = 0; + self->skip = 2; + } ++ else if (!strcmp(type, "audio/x-private1-eac3")) { ++ GST_INFO_OBJECT (self, "MIMETYPE %s (DVD Audio - 2 byte skipping)",type); ++ bypass = 0x22; ++ self->skip = 2; ++ } + else if (!strcmp(type, "audio/x-private1-lpcm")) { + GST_INFO_OBJECT (self, "MIMETYPE %s (DVD Audio)",type); + bypass = 6; +@@ -1248,7 +1260,7 @@ gst_dvbaudiosink_render (GstBaseSink * sink, GstBuffer * buffer) + self->timestamp = timestamp; + else + timestamp = self->timestamp; +- if (self->bypass < 0xd) ++ if (self->bypass < 0xd || self->bypass == 0x22) + self->timestamp += duration; + } + else diff --git a/meta-openvuplus/recipes-multimedia/gstreamer/gst-plugin-dvbmediasink_0.10.bb b/meta-openvuplus/recipes-multimedia/gstreamer/gst-plugin-dvbmediasink_0.10.bb index 5b3b96c..f2a3eda 100644 --- a/meta-openvuplus/recipes-multimedia/gstreamer/gst-plugin-dvbmediasink_0.10.bb +++ b/meta-openvuplus/recipes-multimedia/gstreamer/gst-plugin-dvbmediasink_0.10.bb @@ -7,7 +7,7 @@ LIC_FILES_CHKSUM = "file://src/gstdvbaudiosink.c;beginline=1;endline=45;md5=023e DEPENDS = "gstreamer gst-plugins-base" BRANCH="master" SRCREV="91738211ef106ae7d14c1ccc5c4dd26c0f2dbf58" -PR = "r9" +PR = "r10" inherit autotools pkgconfig git-project SRC_URI = "git://schwerkraft.elitedvb.net/dvbmediasink/dvbmediasink.git;protocol=git;branch=${BRANCH};tag=${SRCREV}" @@ -15,6 +15,7 @@ SRC_URI = "git://schwerkraft.elitedvb.net/dvbmediasink/dvbmediasink.git;protocol SRC_URI_append_vuplus = " \ file://fix_dvbaudiosink_async_opt.patch;patch=1;pnum=1 \ file://fix_dvbvideosink_dm8000_padtemplate.patch;patch=1;pnum=1 \ + file://fix_dvbaudiosink_support_ddp.patch \ " FILES_${PN} = "${libdir}/gstreamer-0.10/*.so"