Advertisement
Guest User

Untitled

a guest
May 4th, 2015
206
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 5.39 KB | None | 0 0
  1. Smooth Streaming dynamically detects local bandwidth and CPU conditions and seamlessly switches, in near real time, the video quality of a media file that a player receives.
  2. Consumers with high bandwidth connections can experience high definition (HD) quality streaming while others with lower bandwidth speeds receive the appropriate stream for their
  3. connectivity, allowing consumers across the board to enjoy a compelling, uninterrupted streaming experience and alleviating the need for media companies to cater to the lowest
  4. common denominator quality level within their audience base.
  5. -----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
  6. There is a downside to this behavior as well if 30 seconds into a fully downloaded 10 minute video, you decide that you don't like it and quit the video, both you and your content
  7. provider have just wasted 9 minutes and 30 seconds worth of bandwidth. To try to mitigate this problem, IIS 7.0 provides a cool extension called Bit Rate Throttling, which allows
  8. content providers to throttle the download bit rate in exactly the same way that a streaming server would to reduce costs.
  9. -----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
  10. In other words, with Smooth Streaming, file chunks are created virtually upon client request, but the actual video is stored on disk as a single full length file per encoded bit
  11. rate. This offers tremendous file management benefits.
  12. -----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
  13. Within the guidelines of the MP4 ISO Base Media File Format specification, the Smooth Streaming format uses a custom box organization schema and some custom boxes.
  14. To differentiate Smooth Streaming files from "vanilla" MP4 files, we use new file extensions: *.ismv (video+audio) and *.isma (audio only).
  15. -----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
  16. Smooth Streaming Media Assets A typical Smooth Streaming media asset (presentation) consists of the following files:
  17.  
  18. MP4 files containing video/audio
  19. *.ismv Contains video and audio, or only video, 1 ISMV file per encoded video bit rate
  20. *.isma Contains only audio, In videos with audio, the audio track can be muxed into an ISMV file instead of a separate ISMA file
  21. *.ism Server manifest file, Describes the relationships between the media tracks, bit rates and files on disk Only used by the IIS Smooth Streaming server not by client
  22. *.ismc Client manifest file, Describes the available streams to the client: the codecs used, bit rates encoded, video resolutions, markers, captions, etc. It's the first
  23. file delivered to the client
  24. -----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
  25. Smooth Streaming uses a more sophisticated file format and server design. The videos are no longer split up into thousands of file chunks, but are instead "virtually"
  26. split into fragments (typically one fragment per video GOP) and stored within a single contiguous MP4 file. This implies two significant changes in server and client
  27. design: The server must translate URL requests into exact byte range offsets within the MP4 file
  28. The client can request chunks in a more developer friendly manner (for example, by timecode instead of by index number)
  29. -----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
  30. With IIS Smooth Streaming, clients request fragments in the form of a RESTful URL:
  31. http://video.foo.com/NBA.ism/QualityLevels(400000)/Fragments(video=610275114)
  32. The values passed in the URL represent encoded bit rate (400000) and the fragment start offset (610275114) expressed in an agreed upon time unit
  33. (usually 100 nanoseconds (ns)). These values are known from the client manifest.
  34. -----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
  35. After receiving the client request, IIS Smooth Streaming looks up the quality level (bit rate) in the corresponding *.ism server manifest and maps it to a physical *.ismv
  36. or *.isma file on disk. It then reads the appropriate MP4 file, and based on its 'tfra' index box,figures out which fragment box ('moof'+ 'mdat') corresponds to the requested
  37. start time offset. It then extracts the fragment box and sends it over the wire to the client as a standalone file. This is a particularly important part of the overall design
  38. because the sent fragment/file can now be automatically cached further down the network, potentially saving the origin server from sending the same fragment/file again to
  39. another client that requeststhe same RESTful URL.
  40. -----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement