HeavyMetalTelevision.com mit IPTV

Aus VDR Wiki
(Unterschied zwischen Versionen)
Wechseln zu: Navigation, Suche
(Configuration)
(Configuration)
Zeile 62: Zeile 62:
 
PARAMETER=${1}
 
PARAMETER=${1}
 
PORT=${2}
 
PORT=${2}
 +
#IP adresses have been subject to change without notice, check the NoScript/Firefox Inspector activated HMTV website regularly for changes.
 
HLS="http://70.166.98.130:1935/hmtv/myStream/playlist.m3u8"
 
HLS="http://70.166.98.130:1935/hmtv/myStream/playlist.m3u8"
 
RTSP="rtsp://70.166.98.130:1935/hmtv/myStream"
 
RTSP="rtsp://70.166.98.130:1935/hmtv/myStream"

Version vom 10. Februar 2016, 04:59 Uhr

Inhaltsverzeichnis

Description

heavymetaltelevision.com with VDR IPTV Plugin

Software

debian GNU/Linux wheezy+

ii vdr 2.0.6-6yavdr1 i386 Video Disk Recorder for DVB cards

ii vdr-plugin-iptv 2.0.3-0yavdr4~precise i386 IPTV plug-in for VDR

ii vdr-plugin-xineliboutput 1.1.0-22-g1d98107-1ya i386 VDR plugin for Xine based sofdevice frontends

ii libxineliboutput-sxfe 1.1.0-22-g1d98107-1ya i386 Local X-Server frontend for the xineliboutput plugin

ii libxine2 1.2.2-5 i386 xine media player library – meta-package

ii ffmpeg 10:2.6.4-dmo1 i386 audio/video encoder, streaming server & audio/video file converter


+deps

Extra Hardware used with this setup

Multimedia controller: Broadcom Corporation BCM70015 Video Decoder [Crystal HD]

Configuration

Datei
setup.conf
iptv.DisabledFilters = 1 2 6
iptv.ExtProtocolBasePort = 4321
iptv.SectionFiltering = 1
iptv.TsBufferPrefill = 0
iptv.TsBufferSize = 1



Datei
channels.conf
HeavyMTV;IPTV:10:S=0|P=0|F=EXT|U=hmtv.sh|A=0:I:0:256=27:257=@3:0:0:1:0:0:0



Datei
hmtv.sh
#!/bin/sh

# HeavyMTV;IPTV:10:S=0|P=0|F=EXT|U=hmtv.sh|A=0:I:0:256:257:0:0:1:0:0:0

#LOG=/var/log/vdr-iptv
LOG=/dev/null

if [ $# -ne 2 ]; then
    logger "$0: error: Invalid parameter count '$#' $*"
    exit 1
fi

PARAMETER=${1}
PORT=${2}
#IP adresses have been subject to change without notice, check the NoScript/Firefox Inspector activated HMTV website regularly for changes.
HLS="http://70.166.98.130:1935/hmtv/myStream/playlist.m3u8"
RTSP="rtsp://70.166.98.130:1935/hmtv/myStream"
RTMP="rtmp://70.166.98.130:1935/hmtv/myStream"

#Mostly working for weeks with some h.264 video artefacts until wowza server runs wild again with invalid P/DTS "Experiencing Technical Issues".  
ffmpeg -nostats -v debug -analyzeduration 10M -stimeout 10M -rtsp_transport udp -max_delay 100K -i "${RTSP}" -f mpegts -c:v copy -c:a mp2 -b:a 192k -ar 44100 -af volume=-10dB "udp://127.0.0.1:${PORT}?pkt_size=16356" > ${LOG} 2>&1

#Not better than rtmp.
#ffmpeg -nostats -v debug -analyzeduration 10M -stimeout 10M -rtsp_transport tcp -max_delay 100K -i "${RTSP}" -f mpegts -c:v copy -c:a mp2 -b:a 192k -ar 44100 -af volume=-10dB "udp://127.0.0.1:${PORT}?pkt_size=16356" > ${LOG} 2>&1

#NOTE: mp2 transcoding is a quirk needed for keeping VDR (and/or xineliboutput-sxfe) A/V demuxer/decoders in lipsync. 
#If the delivered MP4A format is a joint stereo format the used decoder versions cannot detect it and decode mono only,  
#be aware that surround information is destroyed by some joint stereo formats, so I assume the joint information in mono decoding mode, too.
#xine vdr-demux reports using faad, vlc too and reports stereo, but sounds mono, if You want to be sure use the ffmpeg audio vectorscope on an audio stream dump like this: 
# ffmpeg -v debug -i hmtvdump.aac -filter_complex "[0:a]avectorscope=s=1280x720,format=yuv420p[vid]" -map "[vid]" -map 0:a -codec:v mpeg4 -q:v 10 -codec:a mp2 output.mp4

#Audio only, in times of high latency / packet loss or hmtv wowza server runs wild again.
#ffmpeg -nostats -v debug -analyzeduration 10M -rtsp_transport udp -max_delay 100K -i "${RTSP}" -f mpegts -vn -c:a mp2 -b:a 192k -ar 44100 -af #volume=-10dB "udp://127.0.0.1:${PORT}?pkt_size=16356" > ${LOG} 2>&1

#Only working without nasty audio dropouts in spare low overseas latency times, otherwise triggering VDR TS-Packet Error intermittently.
#ffmpeg -nostats -v verbose -analyzeduration 10M -i "${RTMP}" -bsf:v h264_mp4toannexb -f mpegts -c:v copy -c:a mp2 -b:a 192k -ar 44100 -af volume=-10dB "udp://127.0.0.1:${PORT}?pkt_size=16356" > ${LOG} 2>&1

#Not working, chunk download always too slow, breaks with big underrun, server is too far away or too slow for non RT- protocols, west of U.S.
#ffmpeg -nostats -v debug -analyzeduration 10M -i "${HLS}" -f mpegts -c:v copy -c:a mp2 -b:a 192k -ar 44100 -af volume=-10dB "udp://127.0.0.1:${PORT}?pkt_size=16356" > ${LOG} 2>&1

#vlc 2.0.6, 2.2.1 not better than ffmpeg, maybe missing advanced adaption parameters.
#vlc -vv "${RTSP}" --sout "#standard{access=udp,mux=ts{pid-video=256,pid-audio=257},dst=127.0.0.1:$PORT}" --intf dummy > ${LOG} 2>&1
#vlc -vv "${RTMP}" --sout "#standard{access=udp,mux=ts{pid-video=256,pid-audio=257},dst=127.0.0.1:$PORT}" --intf dummy > ${LOG} 2>&1
#vlc -vv "${HLS}" --sout "#standard{access=udp,mux=ts{pid-video=256,pid-audio=257},dst=127.0.0.1:$PORT}" --intf dummy > ${LOG} 2>&1


Bugs / What's missing / TODO

  1. EDUCATIONAL/TESTING ONLY
  2. Test other VDR output (soft)devices and (HW) decoders (accelerators)

Links

  1. Homepage of HMTV