Media on Cloud - Challenges and Opportunities
Technological improvements on the Internet have enabled media delivery as never before. Improvements in networking technologies have enabled more bandwidth at fewer costs. Media compression techniques today enable greater compression without compromising on perceptible video, audio or image quality. Cameras have become yet another device sending out data (video and images) on the TCP/IP network, having built-in intelligence to enable capture of high resolution images (for archival), but stream out compressed media to avoid consuming network bandwidth.
Media streaming mechanisms have shown improvements too. Advantages of streaming media over HTTP instead of standard protocols like RTSP/RTP allow freeing up bandwidth (no dedicated acquired channel required) and enable working around firewall restrictions that are typically enforced on ports assigned to traditional streaming protocols.
The client side of the pipeline is diverse and sometimes complicated. There are multiple consumption end point devices consuming media streamed over the internet - machines (Windows, Mac, and Linux), smartphones, tablets, set-top boxes and more. Devices connect to the internet using WAN or Wireless networks (2G/3G/LTE) and hence present challenges of varying bandwidth conditions for streaming media. Consumers are generally less tolerant to stutter-and-start, buffering media than to delayed rendering of static images. Adaptive streaming technologies (Microsoft Smooth Streaming, Apple HTTPS Live Streaming etc.) lend themselves well to such varying client-side processing and bandwidth variations. There are a variety of rendering software techniques - HTML 5 video/audio, Microsoft Silverlight, Adobe Flash, iOS Media Framework, native player plug-ins, third party solutions etc. having their own pros and cons that add to the complexity of choice.
There are attempts ongoing to understand how cloud computing would lend itself to optimally solving use cases around media processing and delivery. Cloud computing infrastructure being out in the internet, bandwidth is going to be pretty much the limitation with regard to processing live video streams emerging from premises.
In a live streaming scenario, it is considered that a typical broadband connection can decently handle between 6 and 12 cameras streaming H.264 compressed video streams. Anything above is going to be a challenge, considering today's networking state of art for home consumption. Better compression on-premise does not guarantee more data distribution to the cloud because of limited upstream bandwidth for most connections - hence limiting the number of cameras that can be configured within a home consumer broadband infrastructure. Cloud computing functions kick off only on data that has been fed into the cloud infrastructure at the other end of the internet. The quality and amount of media being sourced into the cloud is limited by available bandwidth. Media broadcasters generally sign in for higher bandwidth dedicated connections that enable simultaneous streaming of multiple angles/channels of a sports event (for example), while in a residential consumption scenario, bandwidth is limited and hence the number of channels simultaneously 'stream able ' upstream is also limited (unless you compromise on data by employing high loss compression techniques). For the downstream, adaptive streaming lends itself well to live streaming scenarios where there is continuous feedback (despite cycles of quality deterioration based on varying network and processor conditions) to enable a true 'live' experience.
In an on-demand scenario, archived video artifacts are transferred to cloud storage locations within the cloud infrastructure before processing. Latency, in an on-demand scenario is generally tolerable because it is simply 'not live'. In on-demand scenarios, downstream buffering / start-stutter may be tolerated as long as quality is not compromised. Consumers watching movies using Netflix like solutions would expect high quality high bitrate movie streaming and playback - tolerating once-in-a-while start-and-stutter.
The upstream part of the media processing workflow is limited by bandwidth conditions, but once the media is ingested by the cloud infrastructure, cloud capabilities can be leveraged to process the data. As a case, the concept of Video Surveillance as a Service (VSaaS) allows media streams from IP Cameras to be streamed to the cloud, where it is transcoded and streamed down to target clients that have subscribed to this service. The transcoding tier and the streaming tier on the cloud can scale based on the number of channels being streamed to reduce latency of stream distribution to consumers. Retail stores can subscribe to such services based on need to cater to enhanced security needs during times of high shopper density during festivals or offer periods without having to invest in the compute infrastructure. Some transcoding services (for example, a transcode from a raw format to H264/AAC) would require higher processing power than potentially lesser formats and hence can exploit the cloud's processor scale-up potential. Interestingly, there are 'Transcoding as a Service' solutions already available. Encoding.com uses the Amazon Web Services (AWS) platform for transcoding archived videos into various popular formats. Encoding.com is considered to have pioneered the concept of Video Encoding Software as a Service with a usage-based billing model providing customers with great scalability on demand.
Video Surveillance footage being streamed to the cloud can be used for Video Analytics that can be used to the advantage of certain domains. For example, retailers can obtain reports of trends of shopper movement, analysis of shopper behavior during free offers etc. One could always subscribe to such a service to obtain frequent metric reports of daily customer count, queue dynamics etc.
Consumer services like music streaming can exploit the cloud to transcode music licensed from record labels into multiple formats to be streamed to subscribers as per audio formats playable on various target platforms. For example, though HTML5 is known to support audio playback, there is no uniformity in the codec support built into the browser - for example, IE10 might support a codec different to that in Safari, while Chrome supports something entirely different. Record Labels can exploit transcoding services on the cloud to convert media from obsolete formats to new and relevant lossless/lossy formats. Movie streaming services like Netflix may require the scale of the cloud to transcode the vast library of movie files to relevant modern formats in a batch - without having to invest in server racks on-premise.