compressed video quality

40
@iainvcodex Compressed Video Quality IASA 2017 Iain Richardson @iainvcodex

Upload: iain-richardson

Post on 22-Jan-2018

308 views

Category:

Technology


1 download

TRANSCRIPT

@iainvcodex

CompressedVideoQuality

IASA2017

IainRichardson@iainvcodex

@iainvcodex

Agenda

1. Compressedvideo2. Videoquality– whatisit?3. Videoquality– howcanwemeasureit?4. Walk-throughs5. Whattoremember6. Resources

@iainvcodex

Compressedvideo

@iainvcodex

Video Source

Decompress(Decode)

Compress(Encode)

Video Display

Codedvideo

Encoder + Decoder = CODEC

@iainvcodex

Container

Codedvideo

Codedaudio

Video format.264, .265, VP9…

Container formatMP4, MOV, WebM, MXF…

Audio format.aac, .ogg, .mp3…

@iainvcodex

1990

2000

2010

Earlyconcepts MPEG1 MPEG2 H.264 HEVC

VC-1 VP8 VP9

MPEG4

AOMedia

FVC

2017

@iainvcodex

Videoquality

@iainvcodex

Weknowitwhenweseeit…

@iainvcodex

Thespectrumofvisualquality

Perfect(Lossless)

Awful

VisuallyLossless?

Goodenough?

@iainvcodex

Whataffectsvisualquality?(1)

Compressionratio

Computation

Delay

Codectype

Codecversion

Transmissionerrors

SYSTEMISSUES

@iainvcodex

Whataffectsvisualquality?(2)

DetailMotion

Masking

CONTENTISSUES

@iainvcodex

Spatialmasking

@iainvcodex

Whataffectsvisualquality?(3)

EnvironmentAttention

Experience

HUMANISSUES

Task

@iainvcodex

Attention

@iainvcodex

Saccades:Yarbus,1967

@iainvcodex

Changeblindness

The “door” experiment:

https://youtu.be/VkrrVozZR2c?t=1m47s

@iainvcodex

@iainvcodex

@iainvcodex

Source: “Directed visual attention and the dynamic control of information flow”, Encyclopedia of Visual Attention, 2005

Thevisualworld

Unlimited

Retina

>100Bnbits/sec

Opticnerve

~3Mbits/sec

Attention

<10kbits/sec

Longtermmemory

<10bits/sec

Howmuchdowereallysee?

@iainvcodex

Honoré Daumier“Advice to a young artist”

@iainvcodex

Measuringvideoquality

@iainvcodex

Videoqualitymeasurement

Subjective Objective

@iainvcodex

Videoqualitymeasurement

Subjective Objective

Goldeneye Multipleviewers

Absolute Comparison

@iainvcodex

AbsoluteCategoryRating

Bad

Poor

Fair

Good

Excellent

@iainvcodex

Pair-wisecomparison

A B

@iainvcodex

MeanOpinionor

Goldeneye?

@iainvcodex

Videoqualitymeasurement

Subjective Objective

Fullreference

Reducedreference

Noreference

Distortionbased

Modelbased Hybrid

@iainvcodex

Objectivemetrics

• PeakSignaltoNoiseRatio(PSNR)• StructuralSimilarityIndex(SSIM)• JustNoticeableDifference(JND)• … andmanymore.

@iainvcodex

Walk-throughs

• Encodingatmultiplequality/bitratelevels• Visualcomparison• Objectivecomparison• Buildingarate-distortioncurve

@iainvcodex

Rate-DistortioncurvesIncreasing

Quality

IncreasingBitrate

Video A,Codec A,Bitrate A

@iainvcodex

IncreasingQuality

IncreasingBitrate

Video A,Codec A

@iainvcodex

IncreasingQuality

IncreasingBitrate

Video A,Codec A

@iainvcodex

IncreasingQuality

IncreasingBitrate

Video A,Codec A

Video A,Codec B

@iainvcodex

IncreasingQuality

IncreasingBitrate

Video A,Codec A

Video A,Codec B

Video B,Codec A

Video B,Codec B

VIDEO A

VIDEO B

@iainvcodex

Thetrade-offs

Newcodecs(HEVC,VP9)HigherbitrateLargerfilesizesSlowerencodingBetterqualityoriginals

Oldcodecs(MP2,H264)LowerbitrateSmallerfilesizesFasterencodingWorsequalityoriginals

@iainvcodex

Whattoremember

• ‘Perfect’videoqualitydoesn’treallyexist• Visuallylosslessmaybegoodenough• VideoqualitymeasurementisNOTanexactscience• Thereisalwaysatrade-off• Everyvendorsaysthattheirproducthasthe‘best’quality.

@iainvcodex

Do:

Assessmultipledifferentvideos

Assessmultiplebitratesorfilesizes

Don’t:

Relyonavendor’svideoortest

Relyonasinglequalitymeasurement

@iainvcodex

@iainvcodex

Resources

• twitter.com/iainvcodex :Linktotheseslides• vcodex.com :Tutorialsandresources• beamshare.com :Web-basedvideoingestandsharing• media.xiph.org/video/derf/:Rawvideofiles• Handbrake : User-friendlyvideocodinganddecoding• FFMpeg : Not-so-user-friendlyvideocodinganddecoding• VLC : Multi-standardvideoplayer(amongotherthings)• Vooya :.Y4Mcomparisontool• Commandlinesfortesting

@iainvcodex

FFMPEGcommandlines

• Encodingy4mwithH.264videocodec,MP4container,2Mbpsbitrate,PSNRmeasurement:

ffmpeg -i source.y4m-codech264 -b2000000destination.mp4 –psnr

(Othercodecs:-codecmpeg2video,-codechevc,-codecvp9,…)

• Decodingfromcodedmediafile(any)toy4m:ffmpeg -i source.mp4destination.y4m