Underthe growth ofInternetvideo streaming severalissues may become apparent.One ofthem is the problem ofcentralized media servers overload.The increasing number of queries and outgoing requests along with the amount of data a media server has to process can become foritan insurmountable burden.Anotherfactor impeding even fasterdevelopmentofmultimedia contentusage is a powerconsumption required forviewing multimedia data.Scanty of energy resources ofportable devices make the problem even more critical. Thus,one of the major thing had to be done before streaming media could happen was video compression.With such a huge data as3.5MB persecond oneminutevideowould takeabout200MB.At thattime this amountofspace was noteven available on the hard. In multicasting, media server usually has only a single low-bandwidth connection toamulticastnode,wheretherestofthe transmission and eventualdata streams duplication is done by the nodes in the internet.Itresults in independence ofthe serverload from thenumberofconsumers.Such a technology iscalled ‘unicast’.
First, considering ‘unicast’implementation,themediaserverdoesnotbenefit with numberofusersgrowth.Anyway,theserverhastotransmita data to every consumer.Therefore,while the numberofusers will increase,the media server and network capacities mustgrow too. When a consumerneeds the multicastdata itidentifies the nearest multicastroutersothatitcan receivea ‘unicast’ofthedatastream from thatrouter (see Figure 3).Another factor impeding multicast networks from getting caughton is the paymentissue.Becausethe routerissuing thedataandtherouterduplicating thedatacanbefar away from each otherand may be controlled by differentISPs the costforthoseISPswillbedifferent. Suppose,forexample,aviewerdoesnotneedtowatchalltwo and half hours of the movie, but watches only first ten minutes.Then,iftheviewer’sInternetisfastenoughthewhole video willbe downloaded before he finishes watching a short part of it.This means,it willtake up bandwidth resources which could be used forotherpurposes.Also,itwilladd up moretrafficforwhichuserwillneedtopay.
Pseudo-streaming main featureis the ability to download an actualfile and to play that file as it is being downloaded. NowadaysYouTube tendsto use this technology.Becausethe video file is fully downloaded,one can replay YouTube video very quickly,nomoredataneededtobedownloaded.However, already downloadedvideofilewillbedeletedonceyou moveto anothervideo. Pseudo streaming is based on progressive download but mimics Video on Demand (VOD)streaming.Usually itis not supported by web servers however,additional extensions or plug-ins can be added to Apache,Tomcat,IIS and others.
Besidesthe advantages pseudo streaming method inherits from progressivedownload,ithasitsownpeculiarity.Forexample,it adds an ability to seek through the video.As a result,some partsofthevideocan beskippedandnotdownloadedby user, which provides a solution for the problems existing in progressivedownloadmethod.
Dynamic Adaptive Streaming over HTTP
Realstreaming is characterized by data-buffering without saving file on disk.It also allows automatic resolution changes once the network throughputorlatency changes happen.In comparison with the service we see on YouTube,resolution changes we can make there are one time made option,which is ifyou choose one outof severalqualityoptionallthevideowillbedownloadedinthisquality. When OO programming appeared first time, it caused a furor and quickly became a mainstream ofsoftware development.Programmers could simplify complex and intricate problems by interpreting big systems as an assortmentofobjects and setting the rules by which these objects interact.The only issue characterizing OO programming is thatitis static,which means thata smallchange in requirements mayprolongdevelopmenttimeline. Introduction:This is an inter-type declaration,which is declaring ofadditionalmethodsorfieldsonbehalfofatype.Asanexampleof introductionanew member(field,method,orconstructor)declaredby aspectclassbutownedbyothertypescanberegarded.Thismember iscalledinter-typemember.In Figure8PointAssertionsaspectclass.
In offline mode,to generate the classes you need to go through two stages.The fiststage is the standard ‘javac’compilation,after which AcpectWerkz compilerneed to be run in offline mode,being pointed tothenewly created classfiles.Afterthat,thecompilerwill modify the bytecode ofthe classes to include new advices atthe correct pont-cuts. Today’s mobile device energy lack problem involves due to two main factors:limited battery capacity and increasing energy demand from high-performance applications. Nowadays, there are three differenttypesofapplications,which facilitatethegrowth.Thoseare: video games, streaming videos, and a mobile device sensors.
Moreover,currenttendencies in battery technology does notgive a hope thatthe energy problem willdisappearin nearfuture.Recent researches aboutusing newer chemicals or fuelcells do notseem able to increase the capacity ofbatteries significantly.One ofthe solutions,which can be proposed to contend currentenergy problem isoffloading technique.Sofar,twowaysexisttoapply offloading to mobile device computations.These are eitheroffload through 3G or over Wi-Fi. Currently,decision making schemeistrivialand italwaysoffloads transcoding partifithasan accessto cloud server.In future,more sophisticated decision making scheme willbe developed,so thatit can offload code considering various factors such as connection bandwidth,computationalabilitiesand workload ofthemobiledevice andcloudserver. After code offloading decision is made,AOP starts its work.It weavesthecodewhich waschosen foroffloading with preambleand coda parts, where preamble is in order for serialization, and offloading,while coda partreceives the resultofcomputations done by cloud server.Also,aspartoffuturework,preambleswillcontain.
SorTube is an application which’s main goalis to make video playback even fasterand moreaccessible forusers.Two techniques in SorTube help itto achieve the goal,those are:the use ofthe offloading serverandpreciseadjusting parametersofvideo,making it perfectly fitcharacteristics ofviewer’s device.The offloading server may undertakepartofmediaserverworkload,making itpossiblefor more devices to access the same server. In SorTube application it solves a problem of video transferring between a mobile device,offloading server,and remote media server.Video transcoding makes originalhigh-quality video, needed to betransferred from remotemedia serverto theoffloading server,lessin sizeandexactly fitting therequirementsofthemobile device.Finally,video player allows a user to watch the requested videowithoutneedtoinstallanyadditionalsoftware. From the whole process prospect, while SorTube is responsible for allvideo related work,SorMob coordinates mutual work of two SorTube applications running at server and mobile device side and their communication with the remote media server.Therefore,we can treatSorTube and SorMob softwareasaresourceand managerelementscorrespondingly,where SorMob element sets an optimal control-flow for the whole.
WhenuserstartsSorTubeapplicationfirsttimeonamobiledevice, he orshe needs to provide SorTube application with theip address of the offloading server and the remote media server storing a requiredvideofile.Next,version ofSorTubeapplication storedatthe mobile device connects to the machine serving as an offloading. Afterthespecimen ofSorTubeapplication on theoffloading server receives the requestittransfers therequestto the media server.In turn,media server sends the originalvideo file to the offloading serverby DASH.Atthisstageoffloading serverobtainsthepackets of high quality video, which now should be processed. Transcodingisdoneinsuchawaythatthetranscoderreceivesvideo data by packets,converts video frames into the ones of required formatand sends them to a mobile device by chunks of5-seconds.
Through ChannelBuffers data is passed around in Netty.Thus,tosend an objectorarequesttotheserver, your data need to be wrapped into a request that HTTP server wouldunderstandafterthedataistransferred.Theabstraction ofthe network through which ChannelBuffer is transported is the Netty Channel.It provides the interface to connect and to write to the. Video transcoding containsa lotofcomputationswhich makesthe process a hard work forCPU and consequently consumes a lotof energy.Because ofthe limits ofenergy ofmobile devices,such a heavy data processing as transcoding should not be performed on them.In figure 18,given the comparison of time,average power consumption and total energy required for transcoding process performed on a mobile device.The experiment was conducted for fourdifferentcases,which are:idle,notranscoding isperformed;for originalvideo file,video file with doublebitrate,and video filewith. Third experimentwas conducted to check the amountofenergy which can be saved due to offloading compared to usual video download and playback.In figure 19,one can see thattotaltime required foroffloading and playback ofthe video isaboutthesame as the time required just for playback.It shows that extra time required by offloading technique is insignificantand does notspoil the advantages.Also,itis apparentthatmajor increase in energy consumption happensbecauseoftheincreasein quality ofthevideo, exactly resolution.Thus,thecontribution oftranscoding performed at the offloading server is substantialin terms of reducing a mobile device’senergyusage.
To conclude,above stated research addressed an idea ofreal-time massstreaming forheterogeneousassortmentofmobiledevices.The results of experiment show that the main demand to reduce the overload of centralized media servers is met successfully, which makes the idea viable for future ubiquitous adoption.Besides the reduction of media servers overload, proposed method allows to reduce a mobile device energy consumption of video viewing significantly.The importance ofthis achievementcan be understood the best while thinking about an average battery life of current smartphones,whichisapproximately6hours.