Professional Documents
Culture Documents
MMC Lec9 2014 2015
MMC Lec9 2014 2015
Dawood
HTTP
Web
Browser AV
File
Web Server
HTTP
Web
Browser meta
file
Web Server
RTSP/MMS/HTTP
Media
Player RTP/RTCP AV
File
Streaming Server
Streamed Media On Demand Delivery
Internet
Media Server Client 1
Media Media Data 1 Media
Streaming Player 1
& Access Request
Media
Control Media Data 2 Player 2
Client 2
Streamed
Media
Files MoD example
Stream Server
with encoder
Routers Stream Client
with decoder
Real Networks
- Real Producer: create streamed media file, end with “filename.rm”
- Real Server: streaming media to delivery across network
- Real Player: streamed media player in RM format
Windows Multimedia Technologies
- Media Encoder: create streamed media file, end with “filename.asf/.wmv”
- Media Server: streaming media to delivery across network
- Media Player: streamed media player in ASF/WMV format
QuickTime
- QuickTime Pro: create streamed media file, end with “filename.qt”
- QuickTime Streaming Server (Mac) and Darwin Streaming Server
- QuickTime Player: streamed media player in QT format
Audio/MP3: Liquid Audio, SHOUTcast, icecast
Key Points in Streaming Media Service
constant bit
rate video client video constant bit (drain rate)
transmission reception rate video
playout at client
variable without stop continuously
network
buffered
video
delay Questions:
- How large for prefetched data
- How long for playout waiting time
Low quality
GSM
Video
Sender
Key Points in Streaming Media Service (cont)
Limited server resource
- Limited computational power in processing many media steams
- Limited storage space in saving many media data in server
- Limited IO performance in outputting many streams to networks
How to serve many users simultaneously ?
Central
Memory
Memory bus
Peripheral bus
Unicast Multicast
Unicast Example: Systems
Delivery Multiple Independent Streams
Developments
Network
Multicast Example: Single Stream and Copy
The Oscar
Annual Academy
Awards Servers Intermediaries Clients
Key Points in Streaming Media Service (Cont)
Cache technology
- Increase IO via putting media data in memory
- The larger memory, the better
Distributed server cluster and proxy media server
- Use a group of servers to improve processing performance
- Use proxy server to reduce number of users’ direct accesses to server
Server
Cluster
• Drop frames
Proxy – Drop B,P frames if not enough bandwidth
Server • Quality Adaptation
– Transcoding
• Change quantization value
• Change coding rate
• Video staging, caching, patching
– Staging: store partial frames in proxy
– Prefix caching: store first few minutes of movie
Client – Patching: multiple users use same video
Client
Proxy Media Server
Capture Encoding Serving Internet distribution Playback
Media
Player
Source
Encoder Media IP network
Server Media
Player
Media
Proxy
Proxy Server: Reduce Traffic, Time, Load
Reduce Reduce
network traffic response
time to client
Reduce
server’s load
A large number
Media Objects of proxies with:
disk, memory,
and CPU cycles
Very rigorous
real-time delivery
constrains:
Diverse client
small startup
access devices:
latency, computers,
continuous Servers Intermediaries Clients
PDAs,
delivery cell-phones
Servers Intermediaries Clients
Distributed Server Clustering
Media Streaming Service Access Process
Media Streaming Service Modules
Web Server
HTTP (Control and Data)
Web HTTP HTML
Browser Handler Files
Media Server
RTSP/TCP (Control)
RTSP
Scheduler
Handler
Media
Player RTP/UDP (Media Data)
RTP
Handler
RTCP/UDP (RTP Control)
File Media
Parsing Storage
Protocol Stack for Multimedia Services
RTSP
RTP RTCP
TCP
(till now)
What is RTSP?
web HTTP
browser presentation descriptor
Presentation
descriptor
Media server
RTSP
media pres. desc,streaming commands
player RTP/RTCP
audio/video content
HTTP and RTSP
HTTP/1.0 200 OK s=RTSP Session
m=audio 0 RTP/AVP 0
a=control:rtsp://audio.example.com/twister/audio.en
m=video 0 RTP/AVP 31 Web Server
a=control:rtsp://video.example.com/twister/video
web HTTP
browser presentation descriptor
RTSP/1.0 200 OK
CSeq: 1 Session: 12345678
Presentation Transport: RTP/AVP/UDP;
descriptor unicast; client_port=3056-3057;
server_port=5000-5001 Media server
RTSP
media pres. desc,streaming commands
player RTP/RTCP
audio/video content
CSeq: 2
Session: 12345678
Range: smpte=0:10:00-0:20:00
RTP-Info:
url=rtsp://audio.example.com/twister/audio.en;
seq=876655; rtptime=1032181
RTSP Methods
CS
OPTIONS determine capabilities of server/client
CS
DESCRIBE CS get description of media stream
ANNOUNCE CS announce new session description
SETUP CS create media session
RECORD CS start media recording
PLAY CS start media delivery
PAUSE CS pause media delivery
REDIRECT CS redirection to another server
TEARDOWN CS immediate teardown
SET_PARAMETER CS change server/client parameter
GET_PARAMETER CS read server/client parameter
RTSP Session
Default port
554
RTSP SETUP
RTSP OK
RTSP RTSP PLAY
header of SR report
sender info
SDES items
Demos of Streamed Audio and Video