Multimedia Outline Compression RTP Scheduling Spring2002 CS461 - - PDF document

multimedia
SMART_READER_LITE
LIVE PREVIEW

Multimedia Outline Compression RTP Scheduling Spring2002 CS461 - - PDF document

Multimedia Outline Compression RTP Scheduling Spring2002 CS461 1 CompressionOverview EncodingandCompression Huffmancodes Lossless datareceived=datasent


slide-1
SLIDE 1

1

Spring2002 CS461 1

Multimedia

Outline

Compression RTP Scheduling

Spring2002 CS461 2

CompressionOverview

  • EncodingandCompression

– Huffmancodes

  • Lossless

– datareceived=datasent – usedforexecutables,textfiles,numericdata

  • Lossy

– datareceiveddoesnot!=datasent – usedforimages,video,audio

Spring2002 CS461 3

Lossless Algorithms

  • RunLengthEncoding(RLE)

– example:AAABBCDDDDencodingas3A2B1C4D – goodforscannedtext(8-to-1compressionratio) – canincreasesizefordatawithvariation(e.g.,someimages)

  • DifferentialPulseCodeModulation(DPCM)

– exampleAAABBCDDDDencodingasA0001123333 – changereferencesymbolifdeltabecomestoolarge – worksbetterthanRLEformanydigitalimages(1.5-to-1)

slide-2
SLIDE 2

2

Spring2002 CS461 4

Dictionary-BasedMethods

  • Builddictionaryofcommonterms

– variablelengthstrings

  • Transmitindexintodictionaryforeachterm
  • Lempel-Ziv(LZ)isthebest-knownexample
  • Commonlyachieve2-to-1rationontext
  • VariationofLZusedtocompressGIFimages

– firstreduce24-bitcolorto8-bitcolor – treatcommonsequenceofpixelsastermsindictionary – notuncommontoachieve10-to-1compression(x3)

Spring2002 CS461 5

ImageCompression

  • JPEG:JointPhotographicExpertGroup(ISO/ITU)
  • Lossystill-imagecompression
  • Threephaseprocess

– processin8x8blockchunks(macro-block) – grayscale:eachpixelisthreevalues(YUV) – DCT:transformssignalfromspatialdomainintoand equivalentsignalinthefrequencydomain(loss-less) – applyaquantization totheresults(lossy) – RLE-likeencoding(loss-less)

Source image JPEGcompression DCT Quantization Encoding Compressed image Spring2002 CS461 6

QuantizationandEncoding

  • Quantization Table

357911131517 5791113151719 79111315171921 911131517192123 1113151719212325 1315171921232527 1517192123252729 1719212325272931

  • EncodingPattern
slide-3
SLIDE 3

3

Spring2002 CS461 7

MPEG

  • MotionPictureExpertGroup
  • Lossycompressionofvideo
  • Firstapproximation:JPEGoneachframe
  • Alsoremoveinter-frameredundancy

Spring2002 CS461 8

MPEG(cont)

  • Frametypes

– Iframes:intrapicture – Pframes:predictedpicture – Bframes:bidirectionalpredictedpicture

  • ExamplesequencetransmittedasIPBBIBB

Frame1 Frame2 Frame3 Frame4 Frame5 Frame6 Frame7 Iframe Bframe Bframe Pframe Bframe Bframe Iframe MPEG compression Forward prediction Bidirectional prediction Compressed stream Input stream

Spring2002 CS461 9

MPEG(cont)

  • BandPframes

– coordinateforthemacroblockintheframe – motionvectorrelativetopreviousreferenceframe(B,P) – motionvectorrelativetosubsequentreferenceframe(B) – deltaforeachpixelinthemacroblock

  • Effectiveness

– typically90-to-1 – ashighas150-to-1 – 30-to-1forIframes – PandBframesgetanother3to5x

slide-4
SLIDE 4

4

Spring2002 CS461 10

MP3

  • CDQuality

– 44.1kHzsamplingrate – 2x 44.1x 1000x 16=1.41Mbps – 49/16x 1.41Mbps=4.32Mbps

  • Strategy

– splitintosomenumberoffrequencybands – divideeachsubbandintoasequenceofblocks – encodeeachblockusingDCT+Quantization +Huffman – trick:howmanybitsassignedtoeachsubband

Spring2002 CS461 11

RTP

  • Application-LevelFraming
  • DataPackets

– sequencenumber – timestamp(appdefines“tick”)

  • ControlPackets(sendperiodically)

– lossrate(fractionofpacketsreceivedsincelastreport) – measuredjitter

Spring2002 CS461 12

TransmittingMPEG

  • Adapttheencoding

– resolution – framerate – quantizationtable – GOPmix

  • Packetization
  • Dealingwithloss
  • GOP-inducedlatency
slide-5
SLIDE 5

5

Spring2002 CS461 13

LayeredVideo

  • Layeredencodeing

– e.g.,waveletencoded

  • ReceiverLayeredMulticast(RLM)

– transmiteachlayertoadifferentgroupaddress – receiverssubscribetothegroupstheycan“afford” – Probetolearnifyoucanaffordnexthighergroup/layer

  • SmartPacketDropper(multicastorunicast)

– selectlayerstosend/dropbasedonobservedcongestion – observedirectlyoruseRTPfeedback

Spring2002 CS461 14

Real-TimeScheduling

  • Priority
  • EarliestDeadlineFirst(EDF)
  • RateMonotonic(RM)
  • ProportionalShare

– withfeedback – withadjustmentsfordeadlines