Page 2 ... dvb-caching=$CACHE --dvb-device=0 --dvb-inversion=2 --dvb-probe --
no- ... 'dst=std{access=http,mux=ts,dst=:1202},select="program=2"'\.
IPv6@PSU IPTV Netcasting
[email protected]
1
Outline • • • •
Introduction System Requirement
• •
Hardware Software
Server Configuration Demo
2
Introduction
3
Netcasting, What is? •
Media Broadcasting over Network (Unicast, Multicast)
• • •
IPv4 or IPv6(preferred) Multi client platform supported HD Media supported
4
Netcasting@PSU • •
2005: Begins of the show
• •
PC (Linux) + TV tuner card + VLC Poor TV signal in PSU
2006: Moving to DVB
• • • •
AV output from DVB set-top-box PC (Linux) + TV capture card + VLC IPv4 & IPv6 Service (Unicast only) Only one TV channel service (320x240)
5
•
Netcasting@PSU
2008: More TV channel service
• •
PC(Linux) + DVB-S tuner card + VLC
• • • •
HDTV program available
Higher resolution program (MPEG2-TS, H.264, MPEG4)
100% IPv6 Multicast Service available Service Announcement Protocol (SAP) for channel list
6
System Requirement
7
Media Source • • • •
Removable Media
•
VCD, DVD,
File
•
MPG, AVI, M4V, MP4, MKV
DVB Video Capture Devices
8
Hardware (File)
• •
PC (P4 or Dual Core) with 1+ GB RAM Bigger Storage
9
Hardware (DVB-S)
• • • • • •
PC (P4 or Dual Core) with 1+ GB RAM DVB-S, DVB-S2 PCI Card Satellite Dish (C or Ku Band) + LNB + Cables Diseq (Multiple Dish, Single receiver) Splitter (Single Dish, Multiple receiver) Multi-Switch (Multiple Dish, Multiple receiver)
10
Software • • •
Linux DVB PCI Kernel Module (Mostly supported) VLC
11
Why VLC? • • • • •
Multi Platform Supported Huge file format supported Unicast and Multicast IPv4 and IPv6 supported Can be client and server in one program Multiple transport stream (http, rtsp, mms, udp)
12
13
Server Configuration
14
IPv6 Multicast Address •
RFC4067- FF3X:0000::/32
• • •
Invalid addresses (FF3X::0:0 - FF3X::3FFF:FFFF)
•
Reserved for local host allocation (FF3X::8000:0 FF3X::FFFF:FFFF)
Reserved (FF3X::4000:0) Reserved for IANA allocation (FF3X::4000:1 FF3X::7FFF:FFFF)
15
•
Satellite Dish Setup
SD Program
•
C-Band
•
Thaicom (78.5)
• •
•
NSS6 (95.0)
• •
Free to Air Thai TV Programs
Ku-Band
ASTV
HD Program
•
C-Band
•
Asiasat2 (100.5)
•
LuxeTV HD
16
Sat Transponder
17
Server startup script CACHE=500 PROGRAMS='1,2,3,4,5,6,7' FREQUENCY=11676000 SRATE=27500000 VERTICAL=13 HORIZONTAL=18 FEC=3 LNB_LOF1=9750000 LNB_LOF2=10600000 LNB_SLOF=11700000 MULTICAST_IP='[ff3e:40:2001:3c8:9009:108::104]'
18
Server startup script vlc -v --color --ipv6 --ttl 255 --ts-es-id-pid \ --programs=$PROGRAMS \ dvb: --dvb-adapter=0 --dvb-frequency=$FREQUENCY --dvb-srate=$SRATE -dvb-caching=$CACHE --dvb-device=0 --dvb-inversion=2 --dvb-probe --nodvb-budget-mode --dvb-satno=0 --dvb-voltage=$HORIZONTAL --no-dvb-highvoltage --dvb-fec=$FEC --dvb-lnb-lof1=$LNB_LOF1 --dvb-lnb-lof2= $LNB_LOF2 --dvb-lnb-slof=$LNB_SLOF --dvb-modulation=0 --dvb-code-ratehp=9 --dvb-code-rate-lp=9 --dvb-bandwidth=0 --dvb-guard=0 --dvbtransmission=0 --dvb-hierarchy=0 --dvb-http-host="" --dvb-http-user="" --dvb-http-password="" --dvb-http-acl="" --dvb-http-intf-cert="" --dvbhttp-intf-key="" --dvb-http-intf-ca="" --dvb-http-intf-crl="" \ --sout \ '#duplicate{'\ 'dst=std{access=udp,mux=ts,dst='$MULTICAST_IP': 12010,sap,group="NSS6",name="News1"},select="program=1",'\
19
Server startup script 'dst=std{access=udp,mux=ts,dst='$MULTICAST_IP': 12020,sap,group="NSS6",name="Thailand Outlook Channel"},select="program=2",'\ 'dst=std{access=udp,mux=ts,dst='$MULTICAST_IP':12030,sap,group="NSS6",name="Happy Variety Channel"},select="program=3",'\ 'dst=std{access=udp,mux=ts,dst='$MULTICAST_IP':12040,sap,group="NSS6",name="e-San Discovery"},select="program=4",'\ 'dst=std{access=udp,mux=ts,dst='$MULTICAST_IP': 12050,sap,group="NSS6",name="Suwannabhumi Channel"},select="program=5",'\ 'dst=std{access=udp,mux=ts,dst='$MULTICAST_IP':12060,sap,group="NSS6",name="Body and Mind"},select="program=6",'\ 'dst=std{access=udp,mux=ts,dst='$MULTICAST_IP':12070,sap,group="NSS6",name="For the Earch TV"},select="program=7",'\
20
Server startup script 'dst=std{access=http,mux=ts,dst=:1201},select="program=1"'\ 'dst=std{access=http,mux=ts,dst=:1202},select="program=2"'\ 'dst=std{access=http,mux=ts,dst=:1203},select="program=3"'\ 'dst=std{access=http,mux=ts,dst=:1204},select="program=4"'\ 'dst=std{access=http,mux=ts,dst=:1205},select="program=5"'\ 'dst=std{access=http,mux=ts,dst=:1206},select="program=6"'\ 'dst=std{access=http,mux=ts,dst=:1207},select="program=7"'\ '}'
21
Demo
22