summaryrefslogtreecommitdiff
path: root/scripts/autoplugins.sh
blob: 03eea107a1589b1455a419fffdce7d11b660fc40 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
#!/bin/bash

# automatic testing of some of the plugins using gstreamer-launch

MEDIA=/home/thomas/media
GSTL=gstreamer-launch

run_file_test()
# run a pipe between filesrc and fakesink to test a set of plugins
# first argument is the test name
# second argument is the filename to work on
# third argument is the part between filesrc and fakesink
{
  NAME=$1
  FILE=$2
  PIPE=$3
  
  echo -n "Testing $NAME ... "
  COMMAND="$GSTL filesrc location=$MEDIA/$FILE ! $PIPE ! fakesink silent=true"
  $COMMAND > /dev/null 2> /dev/null
  if test $?; then PASSED="yes"; else PASSED="no"; fi
  if test "x$PASSED"="xyes"; then echo "passed."; else echo "failed"; fi 
}

run_file_test "mad" "south.mp3" "mad"
run_file_test "mad/lame" "south.mp3" "mad ! lame"
run_file_test "mad/lame/mad" "south.mp3" "mad ! lame ! mad"
run_file_test "vorbisdec" "Brown\ Sugar128.ogg" "vorbisdec"
run_file_test "vorbisdec/vorbisenc" "Brown\ Sugar128.ogg" "vorbisdec ! vorbisenc"