Beruflich Dokumente
Kultur Dokumente
Realtime delivery:
Called streaming service:
>download & play simultaneously, partial data in buffer, no data in disc
May use http and web server to provide limited streaming service
Often use RTSP/RTP and media server for rich streaming service
Web
Browser
HTTP
AV
File
Web Server
Media
Player
Web
Browser
HTTP
meta
file
Web Server
Media
Player
RTSP/MMS/HTTP
RTP/RTCP
AV
File
Streaming Server
Media
Streaming
& Access
Control
Internet
Media Data 1
Client 1
Media
Player 1
Request
Media Data 2
Media
Player 2
Client 2
Streamed
Media
Files
MoD example
Internet
Join
Client 1
Media
Player 1
Join
Media
Player 2
Client 2
Streamed
Media
Files
Realtime
Encoder
Live Broadcast
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
variable
network
delay
client video
reception
buffered
video
constant bit
rate video
transmission
client playout
delay
Questions:
- How large for prefetched data
- How long for playout waiting time
time
Low quality
GSM
Internet
Medium quality
Modem
GRPS
Multicast
Router
Low quality
High-speed LAN
Video
Sender
Disk
controller
Bus
Interface
CPU
DMA
Comm.
Interface
Peripheral bus
Audio A/D
VCR
Video A/D
Audio
player
Video
compression
Display
controller
network
Multicast
Unicast
Example: Systems
Multiple Independent
Streams
Delivery
Developments
Network
The Oscar
Annual Academy
Awards
Servers
Intermediaries
Clients
Server
Cluster
Proxy
Server
Client
Client
Drop frames
Drop B,P frames if not enough bandwidth
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
Patching: multiple users use same video
Serving
Internet distribution
Playback
Media
Player
Encoder
Source
Media
Server
IP network
Media
Player
Media
Proxy
Reduce
response
time to client
Reduce
servers load
Server
Intermediary
Client
Media Objects
Very rigorous
real-time delivery
constrains:
small startup
latency,
continuous
delivery
Servers
Servers
Intermediaries
Intermediaries
Clients
Clients
Diverse client
access devices:
computers,
PDAs,
cell-phones
HTTP
Handler
HTML
Files
Media Server
RTSP/TCP (Control)
RTP
Handler
File
Parsing
Scheduler
Media
Player
RTSP
Handler
Media
Storage
RTP
RTCP
TCP
(till now)
What is RTSP?
Real-Time Streaming Protocol (RTSP) is a standard
defined in RFC 2326 by IETF in 1998
RTSP is a control protocol intended for:
retrieval of media from a media server
establishment of one or more synchronized,
continuous-media streams
control of such streams
554/tcp
554/udp
8554/tcp
8554/udp
Real
Real
RTSP
RTSP
web
browser
HTTP
presentation descriptor
Presentation
descriptor
media
player
Media server
RTSP
pres. desc,streaming commands
RTP/RTCP
audio/video content
web
browser
Presentation
descriptor
media
player
HTTP
presentation descriptor
RTSP/1.0 200 OK
CSeq: 1 Session: 12345678
Transport: RTP/AVP/UDP;
unicast; client_port=3056-3057;
server_port=5000-5001
Media server
RTSP
pres. desc,streaming commands
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
OPTIONS
CS
CS
DESCRIBE
CS
ANNOUNCE
CS
SETUP
CS
RECORD
CS
PLAY
CS
PAUSE
CS
REDIRECT
CS
TEARDOWN
CS
immediate teardown
SET_PARAMETER
CS
GET_PARAMETER
CS
RTSP Session
Default port
554
RTSP
server
RTSP SETUP
RTSP OK
RTSP PLAY
RTSP OK
RTSP TEARDOWN
RTSP OK
TCP
RTSP
client
data
source
RTP VIDEO
RTP AUDIO
choose
UDP port
UDP
AV
subsystem
RTCP
media server
media player
What is RTP?
Realtime Transport Protocol (RTP) is an IETF standard
Primary objective: stream continuous media over a besteffort packet-switched network in an interoperable way.
Protocol requirements:
Payload Type Identification: what kind of media are we
streaming?
Sequence Numbering: to deal with lost and out-of-order packets.
Timestamping: to compensate for network jitter in packet
delivery.
Delivery Monitoring: how well is the stream being received by the
destinations?
RTP Header
Sampling instant of first data octet
multiple PDUs can have same timestamp
not necessarily monotonic
used to synchronize different
Payload type
media streams
(used by mixers)
RTP Mixer
RTP mixer - an intermediate system that receives & combines
RTP PDUs of one or more RTP sessions into a new RTP PDU
RTCP Reports
Cumulative counts allow both long- and short-term analysis
any two reports can be subtracted to get activity over an interval
NTP timestamps in reports allow you to compute rates
monitoring tools neednt know anything about particular media
encoding
header of SR report
sender info
SDES items