Mercurial > mplayer.hg
view TOOLS/mplmult.sh @ 33263:5f527a9a9521
Add an exit function.
This function will allow performing clean-up operations.
(MPlayer calls guiDone() before exiting, but only if the GUI has been
initialized, i.e. if guiInit() has been called successfully. Any
exit_player()/exit_player_with_rc() after GUI's cfg_read() until
guiInit(), or any exit_player() during guiInit() itself will end the GUI
without calling guiDone(). This exit function will at least handle
abortions during guiInit() itself. It will be called twice in case of an
guiExit() after GUI initialization - first directly, next by guiDone()
via MPlayer's exit_player_with_rc().)
author | ib |
---|---|
date | Tue, 03 May 2011 12:19:22 +0000 |
parents | 998475fffe0c |
children | 7bdb1c022122 |
line wrap: on
line source
#!/bin/sh # example how to output video on multiple windows in sync. # might be even more useful in combination with vo ggi # to distribute the video arbitrarily dir=/tmp/$$ count=$1 shift if test 0"$count" -lt 1; then echo "At least 1 slave instance must be used." echo "" echo "Usage:" echo "./mplmult.sh n mplayer-opts" echo "n number of MPlayer instances that display the video" echo "mplayer-opts anything you would specify to mplayer," echo " more than one file will usually not work" exit 1 fi mkdir -m 700 $dir if test $? -ne 0; then echo "Could not create temp dir!" exit 1 fi mkfifo $dir/stream.yuv i=1 fifo_list="" while test $i -le $count; do fifo_list="$dir/mp$i $fifo_list" i=$(($i+1)) done mkfifo $fifo_list (cat $dir/stream.yuv | tee $fifo_list > /dev/null ) & for fifo in $fifo_list; do # -benchmark is neccessary so that it will not do any timing. # the master instance already takes care of it and not specifying # it will break A-V sync. mplayer -nocache -quiet -benchmark "$fifo" > /dev/null 2>&1 & done mplayer -nocache -fixed-vo -vo yuv4mpeg:file=$dir/stream.yuv "$@" rm -rf $dir