http://static.macosforge.org/dss/downloads/ http://static.macosforge.org/dss/downloads/DarwinStreamingSrvr5.5.5-Linux.tar.gz
tar xvzf DarwinStreamingSrvr5.5.5-Linux.tar.gz cd DarwinStreamingSrvrlinux-Linux ./Install
sudo /usr/local/sbin/streamingadminserver.pl
http://127.0.0.1:1220
/var/lib/mythtv/myth3gp
/var/lib/mythtv/mythn900
#!/bin/bash
#this part creates a divx and a 3gp file for each and every mythtv recording
#it will not start if the backend is currently recording it will stop
#between files if the backend starts to record whilst the script is underway
for recording in `ls -t /var/lib/mythtv/recordings/ | grep -i ".mpg" | cut -d "." -f1,2 | sort -u`; do
recname=`echo $recording`
recpath="/var/lib/mythtv/recordings"
out="/var/lib/mythtv/mythn900"
out3gp="/var/lib/mythtv/myth3gp"
humanname=`mysql -umythtv -pPASSWORD -e "select concat(title, ' ', progstart) as name from recorded where basename = '$recname' limit 1;" --database mythconverg -NE \
| grep name: | sed 's/name: //' | sed 's/00$//' | sed 's/://g' | sed 's/$/.avi/'`
liver=`mysql -umythtv -pPASSWORD -e "select concat(recgroup) as name from recorded where basename = '$recname' limit 1;" \
--database mythconverg -NE | grep -i "name:" | cut -d " " -f2`
if [ ! -e $out/$recname.* ]
then
if [ $liver != "LiveTV" ]
then
mythtv-status | grep -A 2 -i Encoders > /tmp/mythstatus.txt
diff /usr/local/bin/mythstatus.txt /tmp/mythstatus.txt -q | grep -i differ | cut -d " " -f5 > /tmp/differmyth.txt
echo "linetwo" >> /tmp/differmyth.txt
differences=`head -1 /tmp/differmyth.txt`
if [ $differences = "differ" ]
then
echo "system is currently recording, exiting"
rm /tmp/mythstatus.txt
rm /tmp/differmyth.txt
exit
else
echo "backend is not recording and file does not exist, creating divx file"
rm /tmp/mythstatus.txt
rm /tmp/differmyth.txt
ffmpeg -i "$recpath/$recname" -vtag DIVX -f avi -vcodec mpeg4 -aspect 16:9 -s 400x240 -b 690000 -acodec libmp3lame -ab 128000 -ar 48000 -ac 2 "$out/$recname.$humanname"
ffmpeg -i "$recpath/$recname" -s 352x288 -ar 8000 -ac 1 -ab 12.2k "$out3gp/$recname.$humanname.3gp"
MP4Box -3gp -mtu 1450 -hint "$out3gp/$recname.$humanname.3gp"
fi
fi
fi
done
#this part of the script will remove all divx files that do not correspond to a current recording
for oldfile in `ls -t /var/lib/mythtv/mythn900/*.avi | cut -d "." -f1,2 | cut -d "/" -f6`; do
oldname=`echo $oldfile`
realrec="/var/lib/mythtv/recordings"
if [ -e $realrec/$oldname ]
then
echo "file exists, leaving"
else
echo "file does not exist, removing avi file"
rm /var/lib/mythtv/mythn900/$oldname.*
fi
done
#this part of the script will remove all 3gp files that do not correspond to a current recording
for oldfile in `ls -t /var/lib/mythtv/myth3gp/*.3gp | cut -d "." -f1,2 | cut -d "/" -f6`; do
oldname=`echo $oldfile`
realrec="/var/lib/mythtv/recordings"
if [ -e $realrec/$oldname ]
then
echo "file exists, leaving"
else
echo "file does not exist, removing 3gp file"
rm /var/lib/mythtv/myth3gp/$oldname.*
fi
done
#this part of the script updates all the hyperlinks to the streams
rm /var/www/mythmobile/3gp_remote.html
rm /var/www/mythmobile/3gp_local.html
rm /var/www/mythmobile/3gp_proxied.html
echo "<span style=\"font-weight: bold; font-size: 1.2em;\">MythTV Mobile Remote URLs</span><br /> <br />" > /var/www/mythmobile/3gp_remote.html
echo "<span style=\"font-weight: bold; font-size: 1.2em;\">Last updated `date`</span><br /> <br />" >> /var/www/mythmobile/3gp_remote.html
echo "<span style=\"font-weight: bold; font-size: 1.2em;\">MythTV Mobile Local URLs</span><br /> <br />" > /var/www/mythmobile/3gp_local.html
echo "<span style=\"font-weight: bold; font-size: 1.2em;\">Last updated `date`</span><br /> <br />" >> /var/www/mythmobile/3gp_local.html
echo "<span style=\"font-weight: bold; font-size: 1.2em;\">MythTV Mobile Proxied URLs</span><br /> <br />" > /var/www/mythmobile/3gp_proxied.html
echo "<span style=\"font-weight: bold; font-size: 1.2em;\">Last updated `date`</span><br /> <br />" >> /var/www/mythmobile/3gp_proxied.html
ls -t /var/lib/mythtv/myth3gp/ -1 -C | grep -i 3gp | while read newfile; do
urlfile=`echo $newfile | sed 's/ /%20/g'`
hrname=`echo $newfile | cut -d "." -f3`
echo "<a href="rtsp://merrycottage.demon.co.uk/$urlfile">$hrname</a><br>" >> /var/www/mythmobile/3gp_remote.html
echo "<a href="rtsp://192.168.0.3/$urlfile">$hrname</a><br>" >> /var/www/mythmobile/3gp_local.html
echo "<a href="rtsp://127.0.0.1/$urlfile">$hrname</a><br>" >> /var/www/mythmobile/3gp_proxied.html
done
#this part of the script updates all the hyperlinks to the local divx files
rm /var/lib/mythtv/mythn900/tv_recordings.html
echo "<span style=\"font-weight: bold; font-size: 1.2em;\">MythTV Recordings</span><br /> <br />" > /var/lib/mythtv/mythn900/tv_recordings.html
echo "<span style=\"font-weight: bold; font-size: 1.2em;\">Last updated `date`</span><br /> <br />" >> /var/lib/mythtv/mythn900/tv_recordings.html
ls -t /var/lib/mythtv/mythn900/ -1 -C | grep -i avi | while read newfile; do
urlfile=`echo $newfile | sed 's/ /%20/g'`
hrname=`echo $newfile | cut -d "." -f3`
echo "<a href="./$urlfile">$hrname</a><br>" >> /var/lib/mythtv/mythn900/tv_recordings.html
done
mythtv-status | grep -A 2 -i Encoders > /usr/local/bin/mythstatus.txt
nano ~/.gnomerc
sleep 60 && sudo /usr/local/sbin/streamingadminserver.pl
sudo nano /etc/sudoers
Cmnd_Alias DARWINLAUNCH = /usr/local/sbin/streamingadminserver.pl
username ALL=(ALL) NOPASSWD: DARWINLAUNCH
| The Following User Says Thank You to danmiddle2 For This Useful Post: | ||
[user@easy-debian-m5: /]DISPLAY=:0 EXPERIMENTALLY_ALLOW_PULSE_AUDIO=1 mythfrontend
Xlib: extension "XFree86-VidModeExtension" missing on display ":0.0". 2010-03-22 02:07:53.888 MythXGetRefreshRate(): X11 ModeLine query failed 2010-03-22 02:07:55.125 VideoOutputXv: XVideo Adaptor Name: 'SGX Textured Video' 2010-03-22 02:07:57.930 OSD Theme Dimensions W: 1280 H: 720 2010-03-22 02:08:02.392 TV: StartPlayer(0, Watching WatchingPreRecorded, main) -- end ok 2010-03-22 02:08:02.461 TV: Changing from None to Watching WatchingPreRecorded Xlib: extension "XFree86-VidModeExtension" missing on display ":0.0". 2010-03-22 02:08:02.763 MythXGetRefreshRate(): X11 ModeLine query failed 2010-03-22 02:08:02.851 Couldn't load deinterlace filter none 2010-03-22 02:08:02.855 New DB connection, total: 3 2010-03-22 02:08:02.944 Realtime priority would require SUID as root. 2010-03-22 02:08:03.523 Connected to database 'mythconverg' at host: 192.168.1.3 Xlib: extension "XFree86-VidModeExtension" missing on display ":0.0". 2010-03-22 02:08:03.764 MythXGetRefreshRate(): X11 ModeLine query failed 2010-03-22 02:08:03.766 Video timing method: USleep with busy wait 2010-03-22 02:08:04.428 Couldn't load deinterlace filter none 2010-03-22 02:08:04.429 Failed to enable deinterlacing 2010-03-22 02:08:08.216 NVP(0): prebuffering pause 2010-03-22 02:08:09.660 NVP(0): prebuffering pause
2010-03-22 02:37:29.266 TV: Attempting to change from None to Watching WatchingLiveTV
2010-03-22 02:37:29.846 MythContext: Connecting to backend server: 192.168.1.3:6543 (try 1 of 1)
2010-03-22 02:37:30.052 Using protocol version 50
2010-03-22 02:37:30.154 Spawning LiveTV Recorder -- begin
2010-03-22 02:37:30.460 Spawning LiveTV Recorder -- end
2010-03-22 02:37:34.659 We have a playbackURL(myth://192.168.1.3:6543/227250_20100322023640.nuv) & cardtype(V4L)
2010-03-22 02:37:35.171 We have a RingBuffer
2010-03-22 02:37:35.390 TV: StartPlayer(0, Watching WatchingLiveTV, main) -- begin
2010-03-22 02:37:39.209 Opening audio device 'default'. ch 2(2) sr 32000
2010-03-22 02:37:39.224 Opening ALSA audio device 'default'.
ALSA lib pcm.c:2162:(snd_pcm_open_conf) Cannot open shared library /usr/lib/alsa-lib/libasound_module_pcm_alsa_dsp.so
2010-03-22 02:37:39.242 AudioOutput Error: snd_pcm_open(default): No such file or directory
2010-03-22 02:37:39.243 NVP(1): Disabling Audio, reason is: snd_pcm_open(default): No such file or directory
Xlib: extension "XFree86-VidModeExtension" missing on display ":0.0".
2010-03-22 02:37:47.904 MythXGetRefreshRate(): X11 ModeLine query failed
2010-03-22 02:37:47.913 VideoOutputXv: Falling back to X shared memory video output.
*** May be slow ***
2010-03-22 02:37:48.410 OSD Theme Dimensions W: 1280 H: 720
Xlib: extension "XFree86-VidModeExtension" missing on display ":0.0".
2010-03-22 02:37:52.260 MythXGetRefreshRate(): X11 ModeLine query failed
Xlib: extension "XFree86-VidModeExtension" missing on display ":0.0".
2010-03-22 02:37:52.280 MythXGetRefreshRate(): X11 ModeLine query failed
2010-03-22 02:37:52.282 Video timing method: USleep with busy wait
2010-03-22 02:37:52.283 Realtime priority would require SUID as root.
2010-03-22 02:37:53.024 TV: StartPlayer(0, Watching WatchingLiveTV, main) -- end ok
2010-03-22 02:37:53.029 TV: Changing from None to Watching WatchingLiveTV
2010-03-22 02:37:53.035 TV: State is LiveTV & mctx == ctx
2010-03-22 02:37:53.608 TV: UpdateOSDInput done
2010-03-22 02:37:53.612 TV: UpdateLCD done
2010-03-22 02:37:53.714 TV: ITVRestart done
2010-03-22 02:37:53.888 NVP(1): Prebuffer wait timed out 10 times.
2010-03-22 02:37:59.102 VideoOutputXv Error:
***
* Your system is not capable of displaying the
* full framerate at 800x480 resolution. Frames
* will be skipped in order to keep the audio and
* video in sync.
2010-03-22 02:38:00.629 NVP(1): prebuffering pause
2010-03-22 02:38:01.902 NVP(1): prebuffering pause
./configure --compile-type=release --cpu=armv7-a --enable-neon --extra-cflags='-mfpu=neon -mfloat-abi=softfp' --extra-cxxflags='-mfpu=neon -mfloat-abi=softfp' --prefix=/opt/mythtv --disable-distcc --disable-opengl --disable-ffmpeg-pthreads --disable-v4l --disable-joystick-menu --without-bindings=perl,python