video scripts: replace playbin by custom pipeline 68/36068/1 accepted/tizen/3.0.2014.q4/common/20150227.173718 accepted/tizen/common/20150227.173611 submit/tizen_3.0.2014.q4_common/20150227.173534 submit/tizen_common/20150227.173449
authorStephane Desneux <stephane.desneux@open.eurogiciel.org>
Fri, 27 Feb 2015 17:31:20 +0000 (18:31 +0100)
committerStephane Desneux <stephane.desneux@open.eurogiciel.org>
Fri, 27 Feb 2015 17:31:20 +0000 (18:31 +0100)
playbin doesn't work well in some situations. Typically when
running on a full HD screen, the video is not scaled to full screen. Also, sometimes,
videos do not play at all, depending on hardware (fails to run on NUC E3815)

Change-Id: Ic8f3f2ad725041dd7559cfdb6098cdc0625313ed
Signed-off-by: Stephane Desneux <stephane.desneux@open.eurogiciel.org>
Script/launch_video.sh
Script/launch_video2.sh

index 5b1293b..8c64aaa 100755 (executable)
@@ -4,18 +4,23 @@
 #  Launch web cam 
 #
 
-touch $HOME/gstvid-pid
-alreadyrunning=`cat $HOME/gstvid-pid`
+pidfile=$HOME/.gstvid-pid
 
-URL=file:///usr/share/media/videos/AmazingNature_480p.mp4
+touch $pidfile
+alreadyrunning=`cat $pidfile`
+
+video=/usr/share/media/videos/AmazingNature_480p.mp4
 
 if [ $(echo $alreadyrunning | wc -w) -lt 3  ] ; then
     echo "create new"
-    gst-launch-1.0 playbin uri=$URL &
-    echo $!  >> $HOME/gstvid-pid
+    #gst-launch-1.0 playbin uri=$URL &
+       gst-launch-1.0  filesrc location=$video ! qtdemux name=demux  \
+               demux.audio_0 ! queue ! decodebin ! audioconvert ! audioresample ! autoaudiosink  \
+               demux.video_0 ! queue ! vaapidecode ! vaapisink &
+    echo $!  >> $pidfile
 else echo "already running"
     for x in $alreadyrunning; do kill -9 $x; done
-    rm -rf $HOME/gstvid-pid
+    rm -rf $pidfile
 fi
 
 
index 017fb0a..6402784 100755 (executable)
@@ -4,18 +4,23 @@
 #  Launch web cam 
 #
 
-touch $HOME/gstvid-pid
-alreadyrunning=`cat $HOME/gstvid-pid`
+pidfile=$HOME/.gstvid2-pid
 
-URL=file:///usr/share/media/videos/Caminandes_1080p.mp4
+touch $pidfile
+alreadyrunning=`cat $pidfile`
+
+video=/usr/share/media/videos/Caminandes_1080p.mp4
 
 if [ $(echo $alreadyrunning | wc -w) -lt 1  ] ; then
     echo "create new"
-    gst-launch-1.0 playbin uri=$URL &
-    echo $!  >> $HOME/gstvid-pid
+    #gst-launch-1.0 playbin uri=$URL &
+       gst-launch-1.0  filesrc location=$video ! qtdemux name=demux  \
+               demux.audio_0 ! queue ! decodebin ! audioconvert ! audioresample ! autoaudiosink  \
+               demux.video_0 ! queue ! vaapidecode ! vaapisink fullscreen=1 &
+    echo $!  >> $pidfile
 else echo "already running"
     for x in $alreadyrunning; do kill -9 $x; done
-    rm -rf $HOME/gstvid-pid
+    rm -rf $pidfile
 fi