[oe-commits] Jason Kridner : esc-gst: Added fixup for missing files

git version control git at git.openembedded.org
Mon Jun 7 11:00:15 UTC 2010


Module: openembedded.git
Branch: org.openembedded.dev
Commit: 1df846cc5ffecf69f162b260eeccc0b070cb6175
URL:    http://gitweb.openembedded.net/?p=openembedded.git&a=commit;h=1df846cc5ffecf69f162b260eeccc0b070cb6175

Author: Jason Kridner <jkridner at beagleboard.org>
Date:   Sun Jun  6 22:14:41 2010 -0500

esc-gst: Added fixup for missing files

---

 recipes/esc-gst/esc-gst_5.bb  |   33 +++++++++++++
 recipes/esc-gst/files/README  |   67 ++++++++++++++++++++++++++
 recipes/esc-gst/files/a0      |    3 +
 recipes/esc-gst/files/a_gst.c |  106 +++++++++++++++++++++++++++++++++++++++++
 recipes/esc-gst/files/c1      |    8 +++
 recipes/esc-gst/files/n5      |    4 ++
 6 files changed, 221 insertions(+), 0 deletions(-)

diff --git a/recipes/esc-gst/esc-gst_5.bb b/recipes/esc-gst/esc-gst_5.bb
new file mode 100644
index 0000000..7c508e7
--- /dev/null
+++ b/recipes/esc-gst/esc-gst_5.bb
@@ -0,0 +1,33 @@
+DESCRIPTION = "Gstreamer scripts for Embedded Systems Conference workshop"
+LICENSE = "Various"
+
+SRC_URI = "http://hivelocity.dl.sourceforge.net/project/showoff/esc_gst_scripts.tar.gz \
+        file://README \
+        file://a0 \
+        file://c1 \
+        file://n5 \
+        file://a_gst.c \
+"
+SRC_URI[md5sum] = "4af79d2967dca3c649d3a644ddd4c604"
+SRC_URI[sha256sum] = "d7b486520bf22a1e0bc9a808b1bf42f36a329d5a9f67ea6e0f3a25a9dfde2936"
+
+S = "${WORKDIR}/esc-gst"
+
+do_install() {
+    ESC_FILES="a1 a2 a3 a4 a5 a6 d1 d2 d3 d4 d5 d6 g1 g2 g3 g4 g5 g6 g7 g8 g9"
+    ESC_FILES="${ESC_FILES} n1 n2 n3 n4 p1 s v1 v2 v3 v4"
+    install -d ${D}${datadir}/esc-gst
+    for F in ${ESC_FILES} ; do
+        install -m 0755 ${S}/${F} ${D}${datadir}/esc-gst
+    done
+    install -m 0644 ${S}/README ${D}${datadir}/esc-gst
+    install -d ${D}${datadir}/applications
+    install -m 0644 ${S}/GStreamer_Class.desktop ${D}${datadir}/applications/
+    install -m 0644 ${WORKDIR}/README ${D}${datadir}/esc-gst
+    install -m 0755 ${WORKDIR}/a0 ${D}${datadir}/esc-gst
+    install -m 0755 ${WORKDIR}/c1 ${D}${datadir}/esc-gst
+    install -m 0755 ${WORKDIR}/n5 ${D}${datadir}/esc-gst
+    install -m 0644 ${WORKDIR}/a_gst.c ${D}${datadir}/esc-gst
+}
+
+FILES_${PN} += "${datadir}/esc-gst"
diff --git a/recipes/esc-gst/files/README b/recipes/esc-gst/files/README
new file mode 100644
index 0000000..acdddba
--- /dev/null
+++ b/recipes/esc-gst/files/README
@@ -0,0 +1,67 @@
+       Script           |              Description
+------------------------+-------------------------------------------
+
+Setup
+
+s                         Set PATH and DISPLAY
+
+
+Audio
+
+a0                        ARM based MP3 audio decode
+a1 [wave] [duration]      Audio test source plays out ALSA audio out
+a2                        ARM based FLAC audio decode
+a3                        ARM based MP3 audio decode
+a4                        ARM based AAC audio decode
+a5 [duration]             DSP based AAC audio decode
+a6 [duration]             ALSA audio in to ALSA audio out  
+
+
+Video
+
+v1 [pattern]              Video test source displays on X windows using XVideo
+v2 [pattern]              Warped video test source displays on X windows
+v3 [pattern]              Edge detection video test source displays on 
+                          X windows
+v4 [pattern]              Vertigo video test source displays on X windows
+
+
+Demultiplexing
+
+d1 [duration]             Figure-it-out-yourself decodebin audio example 
+                          (verbose enabled)
+d2 [duration]             Same as d1 with filter to just list element names
+d3 [duration]             QuickTime audio with DSP based decode to audio out
+d4 [duration]             AVI video MPEG2 and audio MP3 using ARM decode
+d5                        YouTube FLV video VP and audio MP3 using ARM decode
+d6 [duration]             QuickTime DSP video decode and ARM audio (AAC) decode 
+
+Compiling source code
+
+c1                        Compile and run audio example a_gst.c
+
+GStreamer Daemon
+
+g1                        Start GStreamer Daemon
+g2                        Create QuickTime (d4) pipeline
+g3                        Change pipeline to pause state
+g4                        Change pipeline to play state
+g5                        Change pipeline to pause state
+g6                        Change pipeline to play state
+g7                        Set speed to 2x
+g8                        Set speed to 1/2
+g9                        Kill pipeline (set pipeline to NULL)
+
+
+Performance measurement
+
+p1                        YouTube FLV (d5) with performance data
+
+
+Networking
+
+n1                        Reminder text on how to start live555
+n2 [host IP address]      RTSP stream MP3 audio from host
+n3 [host IP address]      RTP stream send audio data
+n4                        RTP stream receive audio data
+n5                        Stream video from Leopard Board 365
diff --git a/recipes/esc-gst/files/a0 b/recipes/esc-gst/files/a0
new file mode 100755
index 0000000..ae58377
--- /dev/null
+++ b/recipes/esc-gst/files/a0
@@ -0,0 +1,3 @@
+#! /bin/sh
+set -x
+gst-launch filesrc location=/usr/share/esc-media/bbb.mp3 ! mad ! alsasink
diff --git a/recipes/esc-gst/files/a_gst.c b/recipes/esc-gst/files/a_gst.c
new file mode 100644
index 0000000..4b2763a
--- /dev/null
+++ b/recipes/esc-gst/files/a_gst.c
@@ -0,0 +1,106 @@
+/* Gstreamer Audio Player Example */
+
+#include <gst/gst.h>
+#include <glib.h>
+
+static gboolean
+bus_call (GstBus     *bus,
+          GstMessage *msg,
+          gpointer    data)
+{
+   GMainLoop *loop = (GMainLoop *) data;
+
+  switch (GST_MESSAGE_TYPE (msg)) {
+
+    case GST_MESSAGE_EOS:
+      g_print ("End of stream\n");
+      g_main_loop_quit (loop);
+      break;
+ 
+    case GST_MESSAGE_ERROR: {
+      gchar  *debug;
+      GError *error;
+ 
+      gst_message_parse_error (msg, &error, &debug);
+      g_free (debug);
+ 
+      g_printerr ("Error: %s\n", error->message);
+      g_error_free (error);
+
+      g_main_loop_quit (loop);
+      break;
+    }
+    default:
+      break;
+  }
+
+  return TRUE;
+}
+
+int
+main (int   argc,
+      char *argv[])
+{
+  GMainLoop *loop;
+ 
+  GstElement *pipeline, *source, *decoder, *sink;
+  GstBus *bus;
+ 
+  /* Initialisation */
+  gst_init (&argc, &argv);
+
+  loop = g_main_loop_new (NULL, FALSE);
+
+  /* Check input arguments */
+  if (argc != 2) {
+    g_printerr ("Usage: %s <MP3 filename>\n", argv[0]);
+    return -1;
+  }
+
+  /* Create gstreamer elements */
+  pipeline = gst_pipeline_new ("audio-player");
+  source   = gst_element_factory_make ("filesrc",       "file-source");
+  decoder  = gst_element_factory_make ("mad",     "mp3-decoder");
+  sink     = gst_element_factory_make ("alsasink", "audio-output");
+ 
+  if (!pipeline || !source || !decoder || !sink) {
+    g_printerr ("One element could not be created. Exiting.\n");
+    return -1;
+  }
+
+  /* Set up the pipeline */
+
+  /* we set the input filename to the source element */
+  g_object_set (G_OBJECT (source), "location", argv[1], NULL);
+ 
+  /* we add a message handler */
+  bus = gst_pipeline_get_bus (GST_PIPELINE (pipeline));
+  gst_bus_add_watch (bus, bus_call, loop);
+  gst_object_unref (bus);
+ 
+  /* we add all elements into the pipeline */
+  /* filesource | mad | alsasink */
+  gst_bin_add_many (GST_BIN (pipeline),
+                    source, decoder, sink, NULL);
+
+  /* we link the elements together */
+  /* file-source -> mad -> alsasink */
+  gst_element_link_many (source,decoder, sink, NULL);
+
+  /* Set the pipeline to "playing" state*/
+  g_print ("Now playing: %s\n", argv[1]);
+  gst_element_set_state (pipeline, GST_STATE_PLAYING);
+
+  /* Iterate */
+  g_print ("Running...\n");
+  g_main_loop_run (loop);
+ 
+  /* Out of the main loop, clean up nicely */
+  g_print ("Returned, stopping playback\n");
+  gst_element_set_state (pipeline, GST_STATE_NULL);
+ 
+  g_print ("Deleting pipeline\n");
+  gst_object_unref (GST_OBJECT (pipeline));
+ 
+  return 0;
+}
diff --git a/recipes/esc-gst/files/c1 b/recipes/esc-gst/files/c1
new file mode 100755
index 0000000..c851b89
--- /dev/null
+++ b/recipes/esc-gst/files/c1
@@ -0,0 +1,8 @@
+#! /bin/sh
+set -x
+
+export PKG_CONFIG_PATH=/usr/lib/pkgconfig
+
+gcc -Wall $(pkg-config --cflags --libs gstreamer-0.10) a_gst.c -o a_gst
+
+a_gst /usr/share/esc-media/bbb.mp3
diff --git a/recipes/esc-gst/files/n5 b/recipes/esc-gst/files/n5
new file mode 100755
index 0000000..c5d7f3e
--- /dev/null
+++ b/recipes/esc-gst/files/n5
@@ -0,0 +1,4 @@
+#! /bin/sh
+set -x
+gst-launch udpsrc port=5434 caps="application/x-rtp, payload=96, clock-rate=90000, encoding-name=MP4V-ES" ! rtpmp4vdepay ! video/mpeg, mpegversion=4, systemstream=false, framerate=\(fraction\)23/1, width=1280, height=720, codec_data=\(buffer\)000001010000012000845d4c294022d0a21f ! ffdec_mpeg4 ! dmaiperf print-arm-load=true ! omapdmaifbsink
+





More information about the Openembedded-commits mailing list