360 likes | 474 Vues
De to valg. Situationen 2005. Streaming video server Live transmission (breaking news) Mange samtidige brugere (scalability) Lange videosekvenser Download via webserver Progressiv download (simuleret streaming) Ingen ’tabte’ frames Ingen firewall blokering Korte videosekvenser.
E N D
De to valg Situationen 2005 • Streaming video server • Live transmission (breaking news) • Mange samtidige brugere (scalability) • Lange videosekvenser • Download via webserver • Progressiv download (simuleret streaming) • Ingen ’tabte’ frames • Ingen firewall blokering • Korte videosekvenser
Hvilken platform? • De nyeste codecs fra real, windows media og flash/sorenson er så gode, at de ikke i sig selv er afgørende • Server platformen har afgørende indflydelse • Kan man nøjes med en webserver • Hvormange samtidige brugere • Skal der betales løbende afgifter (Real) • Hvis man benytter de nyeste codecs skal brugeren alligevel igennem en (mindre) installation • Hvordan installation ifht. brugeren ? (aggressiv og udspekuleret som real ?)
Andre funktionaliteter udover video ? • Quicktime tracks, flash • Windows powerpoint • Er materialet under 10 min. • Reklame, instruktion, kortfilm • http streaming • Ingen ’tabt’ information • Er det en lang præsentation, hel film • True streaming • Edge unicast (dyrt) • Eller multicast over intranet • Hurtigere og mere flydende
Streaming platforme • Windows media player • MS udvikler både player og tilhørende codec • MS udvikler lukkede-standard protokoller (mms) • Realnetworks • Udvikler både player og tilhørende codec • Udvikler server baseret på åbne standarder (RTSP) • Apple Quicktime • Apple udvikler kun player • Codec leveres af bl.a. Sorenson • Server baseret på MacOS og Linux (RTSP) • Macromedia Flash MX 2004 • FLV - Codec leveres af bl.a. Sorenson (Squeeze) • Streaming Server baseret Flash Communication Server MX
Bredbånd • Ifølge telestyrelsen var der i gennemsnit ca. 13% med bredbånd i Danmark (Jan 2004) • Bredbånd defineres her som over 144Kbit/sek • På Europæisk plan er der flest bredbåndsforbindelser i Danmark pr. Indbygger • Har man således hele Danmarks befolkning som sin målgrupe (eller tilsvarende sammensætning i segmentet) er det således nødvendigt at tilgodese langsommere forbindelser, da de udgør ca. 87% af brugerne • Har man et mere smal segment – fx. Corporate / Offentlig video – er fordelingen af bredbånd højere og man kan derfor designe til større båndbredder • Se bredbåndsundersøgelsen på www.tst.dk
Streaming Server • Microsoft (mms:) • Windows media encoder (Broadcaster) • Real media (RTSP:) • Dyre licenser • Apple Darwin (RTSP:) • Gratis Open source server (Linux) • Flash Communication Server MX • Mange samtidige brugere 56 til 300 Kbits/sek • Hosting (video ligger på en Streaming Server og der betales for trafikken)
Intro: Flash video • Korte sekvenser kan konverteres til .swf (men efter kort tid mistes sync.) • Med FlashMX introduceres .flv formatet (i virkeligheden Sorenson Spark...) • Den lette version følger med FlashMX 2004 prof. • Sorenson Squeeze 4.0 er ’prof.’ versionen, som giver flere komprimerings parametre, fx. VBR • Dette format understøtter streaming (Flash streaming server teknologi) og mister ikke sync ! • Kortere videosekvenser: vælg ’Embed’, ved længere sekvenser linkes der til ekstern video
Encoding Frame size, frame rate, image quality, audio compression
båndbredde • 1 byte = 8 bit • Et 56Kb modem burde være 1 sek. om at hente en 7KB fil (56/8 =7KB pr. sek) • En 512Kb ADSL forbindelse burde være 1 sek. om at hente 64 KB (512/8 = 64 KB pr. sek) • Filstørrelse : 1KB (kilobyte) = 1024 bytes • Båndbredde : 1Kb (kilobit) = 1000 bit (pr. sek.) • En netværk ’K’ er 1000, mens en fil ’K’ er 1024 ! • Dvs. at det tager 1,024 sek. I stedet for 1 sek. eller 61,44 sek. istedet for 60 sek. • Dertil kommer at båndbredden også bruges til start/stop bits og kompression som netværksprotokollen behøver
Eksempler Når kabelmodem/LAN benyttes i lukket netværk, er internetserveren ikke en flaskehals - men typisk er et LAN mere belastet end et kabelmodem netværk Test din hastighed her (kræver installation): http://www.internetkvalitetsguide.dk/StreamSpeed_Download.asp
Encoding - streaming • Standalone encoder software • Quicktime pro (30$) • Window media encoder (gratis) • Realproducer (199$) • 3 part software • Sorension Squeeze 4.0 (VBR encoding mm.) • Macromedia Flash MX 2004 • Discreet ’mediacleaner 5’ understøtter alle 3 • Export fra NLE • Premiere • Final cut pro (Flash video exporter plug-in) • Avid • CPU krævende - ikke HD krævende
Datarate • Brug gerne templates/wizards • Framesize (hvormange pix. pr. Billede?) • Framerate (hvormange billeder pr. Sek.) • Quality (kompressionsgrad, sml. jpeg) • Metode (hvor smart er algoritmen?) • Billedekvalitet afhænger af flere faktorer • Hvor ensartet er billedet (textur,detaljer, kontrast) • Hvormeget ændres fra frame til frame • Er billedet komprimeret i forvejen ? • Kilden skal være højopløselig
Datarate • Datarates/Bitrates måles i bit eller bytes (8 bit) • 4 kBps = 32 kbps (anbefales til 56K modem) • 12kBps = 96 kbps (anbefales til ISDN) • 28 kBps = 225 kbps (anbefales til 256DSL) • Med http streaming kan datarate være højere end true streaming • Når netværket ikke ’kan følge med’ pauser sekvensen indtil cache er fuld • Høje bitrates kan leveres til modems, hvis man gider vente!
Frame size • TV / DV / DVD video • 720 x 576 - 4:3 PAL non-square • 768 x 576 - 4:3 PAL square pixels (photoshop) • Multimedia / web • 640 x 480, 4:3 square pixels • 320 x 240, 4:3 square pixels • 160 x 120, 4:3 square pixels • Delelig med 2 !
Streaming protocols • RTSP (real-time streaming protocol) • Realtime meaning ’on-time’ (ie. live) • Open standard • Was not supported by MS, instead the mms: protocol was used (wm7,wm8) • MS supports RTSP with WM9 ! • AKA. ’true streaming’ as opposed to ’HTTP streaming’ • No packets are stored on the client - • only 3-10 sec. Cache data is stored (deleted) • Copying is difficult (compared to download) • RTSP/UDP is used instead of TCP/IP
Streaming platforms • Windows media player • Develops player, server, encoder and codec • MS proprietary formats (WMV,MMS) • Realnetworks • Develops player, server, encoder and codec • Proprietary and open standards • Apple Quicktime • Apple develops player, encoder and server • Codec from Sorenson, ISO MPEG • Free streaming server MacOS/Linux (RTSP)
Encoding for streaming • Standalone encoder software • Quicktime pro (30$) • Window media encoder (free) • Realproducer (199$) • 3. part software • Sorenson Squeeze 4.0 (Flash MX 2004) • Discreet ’mediacleaner 6’ – Cleaner 5 i MacLab • Export from editing-systems • Premiere, advanced windows media • Final cut pro, compressor • Avid, cleaner • Encoding is CPU intensive ! (Dual processor)
WindowsMedia 9 Quality test http://www.microsoft.com/windows/windowsmedia/9Series/GettingStarted//DemoCenter/VideoQuality.asp#
WM9 • Core applications: • Windows media player (free) • Windows media encoder (free) • Windows media services (upgrade) • Integrated into the OS (windows XP) • Windows media encoder will only run on XP • Live-streams and on-demand • Separate download • Old players (WM7.1+) will attempt to download the new WM 9 codecs (audio+video)
Codecs • MPEG4 developed by MS • Microsoft Windows Media MPEG-4, v1,v2, and v3 • After that MPEG4 was omitted • WMV or WMA: • Windows Media Video or Windows Media Audio • WM9 series does not support ISO MPEG4 ! • Quicktime 6 supports the ISO MPEG4 standard
Datarate • Templates/wizards as starting points • Framesize (pix. Pr. Frame) • Framerate (frames pr. Sec.) • Quality (how lossy can we go?) • Codec (how smart is the algorithm?) • Variable (VBR) or Constant bitrate (CBR) • One or two-pass encoding ? • Image quality depends on • How uniform is the image (texture,details, contrast) • Motion (how ’busy’ is the camera?) • Has the video been compressed before? • High definition source are preferred
Datarate Datarates measured in bits or bytes (8 bit) 4 KBps = 32 Kbps (56K modem) 10KBps = 80 Kbps (ISDN) 28 KBps = 225 Kbps (256DSL) http streaming allow you to use higher datarates than true streaming • Buffering required • Even modems can get ’decent’ video this way
VBR • Quality based • Specify a quality setting (0-100), the encoder will calculate the bitrates • During high motion or complex scenes the datarate will be hight and vice versa • Uses One-pass encoding (fast) • Good for archiving • Bitrate based • You specify the average bitrate • First pass, the complexity is analyzed • The second pass, the quality is set to match the datarate • Best quality within the average bandwidth • Peak based • The bitrate cannot exceed the max. Bitrate • Good for DVD, CD with fixed (max.) datarates
Compression • Intraframe (spatial compression) • The image is compressed individually (JPEG) • Interframe (temporal compression) • The difference is calculated and stored (MPEG) • Keyframes (intraframes) are needed to avoid errors • Uncompressed (30 MB/sek) • Disk array (RAID) needed • DV (fixed 5:1) compression (mostly color) • Web codecs - MPEG4 - (variable 50:1)
CBR • CBR encoding is not ’constant’ • With CBR encoding, the bit rate remains fairly constant and close to the target bit rate over the course of the stream, within a small window of time set by the buffer size. • The disadvantage of CBR encoding is that the quality of the encoded content is not constant. • The ’max. Bitrate’ is constrained, but not locked
VBR • VBR encoding is most advantageous when encoding content that is a mix of simple and complex data, for example, a video that switches between slow and fast motion • You can also use the peak VBR encoding mode when you plan to stream the content. • Eg. Encode the ’talking head’ @ 100 Kbps (average) and allow peaks around ’150 Kbps’ • Allows for better quality with the same filesize as CBR, or smaller filesizes with same quality as CBR
Embedding Browsers that use plugins: Opera, Mozilla, Netscape Navigator/Communicator, IE on Macintosh, and any browser not on Windows • Use the <EMBED> tag Browsers that use ActiveX: IE on Windows+ Netscape 7.1 • Use the <OBJECT> tag Normally you’ll use both ! http://devedge.netscape.com/viewsource/2003/windows-media-in-netscape/
Example - IE <OBJECT ID="Player" height=”384" width=”288" CLASSID="CLSID:6BF52A52-394A-11d3-B153-00C04F79FAA6"> </OBJECT> ID is the unique name, defined by you, that can be referenced in JavaScript DOM to write dynamic script for the player-plugin (To embed more than one player you need different ID’s) ClassID refers to the ActiveX component, ie. Windows media player 7, 9, Quicktime, Real or Flashplugin (depending on the CLASSID)
Example – NS <EMBED type="application/x-mplayer2" pluginspage="http://www.microsoft.com/Windows/MediaPlayer/"SRC=”RTSP://myserver.com/video.asx name="MediaPlayer1"width=384height=288autostart=1showcontrols=0> </EMBED> • The Netscape plugin is used • No play/stop buttons, in this example • This can be controlled by javascript • Both activeX and embed methods can be used simultaneously
Quicktime in IE 5.5 + <OBJECT CLASSID="clsid:02BF25D5-8C17-4B23-BC80-D3488ABDDC6B" WIDTH="160"HEIGHT="144"CODEBASE="http://www.apple.com/qtactivex/qtplugin.cab"><PARAM name="SRC" VALUE="sample.mov"><PARAM name="AUTOPLAY" VALUE="true"><PARAM name="CONTROLLER" VALUE="false"><EMBED SRC="sample.mov" WIDTH="160" HEIGHT="144" AUTOPLAY="true" CONTROLLER="false" PLUGINSPAGE="http://www.apple.com/quicktime/download/"></EMBED></OBJECT>CLASSID must be: clsid:02BF25D5-8C17-4B23-BC80-D3488ABDDC6BCODEBASE must be: http://www.apple.com/qtactivex/qtplugin.cabPLUGINSPAGE must be: http://www.apple.com/quicktime/download/
links • Netscape 7.1 • http://devedge.netscape.com/viewsource/2003/windows-media-in-netscape/ • Windows media SDK (help files) • http://msdn.microsoft.com/library/default.asp?url=/library/en-us/dnwmt/html/WMPlayer_9_SDK_Intro.asp • Tobias Künkel • http://www.streaming-media.info/
Tips • Download diverse Flash relaterede pdf og tutorials fra kursushjemmesidens ’download’ > ’Flash’ • http://www.itu.dk/courses/DLV/E2004/download/flash/ • Et windowsmedia embedding eksempel (’Embedvideo.zip’, ca. 21MB) findes under ’download’ • http://www.itu.dk/courses/DLV/E2004/download/ • Dreamweaver MX og GoLive har GUI til mange af embedding funktionerne • Der findes adskillige værktøjer til streamingeksperten, se ’Tools’ sektionen i ’Poole_bradley.pdf’ • Husk at teste på både Mac og PC • Hvis I vælger en ’utraditionel’ løsning, så brænd evt. codec og player med ned på CD inden aflevering