summaryrefslogtreecommitdiffstats
path: root/patches
diff options
context:
space:
mode:
authorMichael Grzeschik <m.grzeschik@pengutronix.de>2010-06-23 18:45:27 +0200
committerMichael Grzeschik <m.grzeschik@pengutronix.de>2010-06-23 18:45:27 +0200
commit0fb816f1bfdc15529ec3f0e95553e5e7bb35f531 (patch)
treeaac1dbb99178f9c953a7de07e7ec52abc31c1da1 /patches
parentdee596b721d29d45d721866b38cba693a72eab3d (diff)
downloadptxdist-0fb816f1bfdc15529ec3f0e95553e5e7bb35f531.tar.gz
ptxdist-0fb816f1bfdc15529ec3f0e95553e5e7bb35f531.tar.xz
[gst-plugins-base] patches for avidemux and gstv4l2sink
without these patches the communication between the plugins was not functional after the transition from READY_TO_NULL back to NULL_TO_READY. NOTE: The patches are already posted to bugzilla for mainlining and hopefully will not be needed anymore in further releases. Signed-off-by: Michael Grzeschik <m.grzeschik@pengutronix.de>
Diffstat (limited to 'patches')
-rw-r--r--patches/gst-plugins-good-0.10.23/0001-gstavidemux-reset-the-have_index-flag-at-transition-.patch26
-rw-r--r--patches/gst-plugins-good-0.10.23/0002-gstv4l2sink-destroy-open-buffers-when-changing-to-NU.patch43
-rw-r--r--patches/gst-plugins-good-0.10.23/series2
3 files changed, 71 insertions, 0 deletions
diff --git a/patches/gst-plugins-good-0.10.23/0001-gstavidemux-reset-the-have_index-flag-at-transition-.patch b/patches/gst-plugins-good-0.10.23/0001-gstavidemux-reset-the-have_index-flag-at-transition-.patch
new file mode 100644
index 000000000..687f19e2c
--- /dev/null
+++ b/patches/gst-plugins-good-0.10.23/0001-gstavidemux-reset-the-have_index-flag-at-transition-.patch
@@ -0,0 +1,26 @@
+From 15d09f55a687f5e5f26c5a5c7d9cabc36ee19512 Mon Sep 17 00:00:00 2001
+From: Michael Grzeschik <m.grzeschik@pengutronix.de>
+Date: Wed, 23 Jun 2010 12:15:13 +0200
+Subject: [PATCH 1/2] [gstavidemux] reset the have_index flag at transition PAUSED_TO_READY
+
+If we restart the Stream in the case of doing a transition from
+PAUSED_TO_READY and back with READY_TO_PAUSED aso. the duration of the video
+will get calculated even if we have a avi header with that information.
+
+Signed-off-by: Michael Grzeschik <m.grzeschik@pengutronix.de>
+---
+ gst/avi/gstavidemux.c | 1 +
+ 1 files changed, 1 insertions(+), 0 deletions(-)
+
+Index: gst-plugins-good-0.10.23/gst/avi/gstavidemux.c
+===================================================================
+--- gst-plugins-good-0.10.23.orig/gst/avi/gstavidemux.c 2010-06-23 17:36:48.000000000 +0200
++++ gst-plugins-good-0.10.23/gst/avi/gstavidemux.c 2010-06-23 17:36:50.000000000 +0200
+@@ -5345,6 +5345,7 @@
+
+ switch (transition) {
+ case GST_STATE_CHANGE_PAUSED_TO_READY:
++ avi->have_index = FALSE;
+ gst_avi_demux_reset (avi);
+ break;
+ default:
diff --git a/patches/gst-plugins-good-0.10.23/0002-gstv4l2sink-destroy-open-buffers-when-changing-to-NU.patch b/patches/gst-plugins-good-0.10.23/0002-gstv4l2sink-destroy-open-buffers-when-changing-to-NU.patch
new file mode 100644
index 000000000..b4b08f7bf
--- /dev/null
+++ b/patches/gst-plugins-good-0.10.23/0002-gstv4l2sink-destroy-open-buffers-when-changing-to-NU.patch
@@ -0,0 +1,43 @@
+From 49e64005c4ed0a09ccf9ccb2b0e7521e64d21efd Mon Sep 17 00:00:00 2001
+From: Michael Grzeschik <m.grzeschik@pengutronix.de>
+Date: Wed, 23 Jun 2010 11:47:43 +0200
+Subject: [PATCH 2/2] [gstv4l2sink] destroy open buffers when changing to NULL
+
+In the case we change the State from READY_TO_NULL the open buffers
+still hold a open dup filedescriptor to the device, therefor the device
+release function will not be called and the device probably answer with
+-EBUSY when we reopen it at transition NULL_TO_READY.
+
+Signed-off-by: Michael Grzeschik <m.grzeschik@pengutronix.de>
+---
+ sys/v4l2/gstv4l2sink.c | 10 +++-------
+ 1 files changed, 3 insertions(+), 7 deletions(-)
+
+Index: gst-plugins-good-0.10.23/sys/v4l2/gstv4l2sink.c
+===================================================================
+--- gst-plugins-good-0.10.23.orig/sys/v4l2/gstv4l2sink.c 2010-06-23 17:36:47.000000000 +0200
++++ gst-plugins-good-0.10.23/sys/v4l2/gstv4l2sink.c 2010-06-23 17:36:55.000000000 +0200
+@@ -461,6 +461,8 @@
+ }
+ break;
+ case GST_STATE_CHANGE_READY_TO_NULL:
++ gst_v4l2_buffer_pool_destroy(v4l2sink->pool);
++ v4l2sink->pool=NULL;
+ /* close the device */
+ if (!gst_v4l2_object_stop (v4l2sink->v4l2object))
+ return GST_STATE_CHANGE_FAILURE;
+@@ -557,13 +559,7 @@
+ }
+
+ if (v4l2sink->pool) {
+- /* TODO: if we've already allocated buffers, we probably need to
+- * do something here to free and reallocate....
+- *
+- * gst_v4l2_object_stop_streaming()
+- * gst_v4l2_buffer_pool_destroy()
+- *
+- */
++ gst_v4l2_object_stop_streaming(v4l2sink->v4l2object);
+ GST_DEBUG_OBJECT (v4l2sink, "warning, changing caps not supported yet");
+ return FALSE;
+ }
diff --git a/patches/gst-plugins-good-0.10.23/series b/patches/gst-plugins-good-0.10.23/series
new file mode 100644
index 000000000..8fcf4a27b
--- /dev/null
+++ b/patches/gst-plugins-good-0.10.23/series
@@ -0,0 +1,2 @@
+0001-gstavidemux-reset-the-have_index-flag-at-transition-.patch
+0002-gstv4l2sink-destroy-open-buffers-when-changing-to-NU.patch