Welcome to Doom9's Forum, THE in-place to be for everyone interested in DVD conversion.

Before you start posting please read the forum rules. By posting to this forum you agree to abide by the rules.

 

Go Back   Doom9's Forum > Video Encoding > New and alternative video codecs

Reply
 
Thread Tools Search this Thread Display Modes
Old 12th June 2018, 22:58   #701  |  Link
benwaggoner
Moderator
 
Join Date: Jan 2006
Location: Portland, OR
Posts: 2,594
Quote:
Originally Posted by iwod View Post
So as a consumer if you want Youtube or Netflix 4K content you will have to buy a STB that support Vp9 or Av1. They won't be doing ANY HEVC content.
Netflix is certainly delivering UHD on devices that don't have VP9 hardware decoder support. And VP9 is a particularly challenging bitstream format for software decoding without high single-core CPU performance (this is much improved in AV1).

Tons of SmartTV and STB-like devices have way less CPU than a typical phone, so software decoding at 2160p is a non-starter. And replacement cycles are way slower for TVs and STBs than for phones and tablets.

Even if AV1 is an incredible success, companies would still have to deliver HEVC for legacy living room devices in 2025+. Heck, they will still have to deliver H.264 in 2025 for a number of device categories.

Personal computers and phones/tablets are by far the easiest markets for fast integration of new codec support. And lots of enterprises were still doing corporate content in WMV/VC-1 until they'd deprecated XP and Vista.

Massively improved technologies get the market moving, but even the best improvements can take a long time to become universally available in many markets.
__________________
Ben Waggoner
Principal Video Specialist, Amazon Instant Video

My Compression Book

Amazon Instant Video is hiring! PM me if you're interested.
benwaggoner is offline   Reply With Quote
Old 13th June 2018, 00:58   #702  |  Link
amichaelt
Registered User
 
Join Date: Apr 2018
Posts: 50
Quote:
Originally Posted by iwod View Post
So as a consumer if you want Youtube or Netflix 4K content you will have to buy a STB that support Vp9 or Av1. They won't be doing ANY HEVC content.
So your claim is that Netflix will cut off the 10s of millions (though probably actually more) of devices that are already streaming 4K HEVC from their service? Yeah, right... People are not going to buy a new TV or STB because of some silly codec war.
__________________
My project BDSup2Sub++: https://github.com/amichaeltm/BDSup2SubPlusPlus

Last edited by amichaelt; 13th June 2018 at 01:00.
amichaelt is offline   Reply With Quote
Old 13th June 2018, 02:49   #703  |  Link
IgorC
Registered User
 
Join Date: Apr 2004
Posts: 1,286
It's not like VP9 isn't supported by any smart TVs.

I have bought 1,5 years ago LG smartTV. This year after upgrading the Youtube aplication it starts to support VP9 (stats for nerds reports it) and plays Youtube 4K without single drop.
IgorC is offline   Reply With Quote
Old 13th June 2018, 07:03   #704  |  Link
Blue_MiSfit
Derek Prestegard IRL
 
Blue_MiSfit's Avatar
 
Join Date: Nov 2003
Location: Los Angeles
Posts: 5,405
Quote:
Even if AV1 is an incredible success, companies would still have to deliver HEVC for legacy living room devices in 2025+. Heck, they will still have to deliver H.264 in 2025 for a number of device categories.
Exactly, and this is why (unless CDN delivery costs are the vast majority of your opex) I don't see why a premium OTT VOD service would use AV1 anytime soon.
Blue_MiSfit is offline   Reply With Quote
Old 13th June 2018, 07:08   #705  |  Link
iwod
Registered User
 
Join Date: Apr 2002
Posts: 723
Quote:
Originally Posted by amichaelt View Post
So your claim is that Netflix will cut off the 10s of millions (though probably actually more) of devices that are already streaming 4K HEVC from their service? Yeah, right... People are not going to buy a new TV or STB because of some silly codec war.
Well I should have removed Netflix from that sentence, I am not sure if all of their Catalog are in HEVC already. But Youtube certainly aren't doing any HEVC at all. ( At least for now )

Yes, The point is, HEVC is already included in most TV or STB.

Quote:
Originally Posted by Blue_MiSfit View Post
Exactly, and this is why (unless CDN delivery costs are the vast majority of your opex) I don't see why a premium OTT VOD service would use AV1 anytime soon.
I wish we don't have the same problem with VVC.

Last edited by iwod; 13th June 2018 at 07:13.
iwod is offline   Reply With Quote
Old 13th June 2018, 21:16   #706  |  Link
MoSal
Registered User
 
Join Date: Jun 2013
Posts: 74
Quote:
I have bought 1,5 years ago LG smartTV. This year after upgrading the Youtube aplication it starts to support VP9 (stats for nerds reports it) and plays Youtube 4K without single drop.
I tested a cheap locally-assembled TV with Chinese parts the other day. VP9 4K@60fps is supported out of the box. Opus was the codec that's not supported.

No one will forget AV1, not even the no name chip manufacturers. Here is hope, from now on, they will not forget Opus either.
__________________
saldl: a command-line downloader optimized for speed and early preview.
MoSal is offline   Reply With Quote
Old 14th June 2018, 03:13   #707  |  Link
amichaelt
Registered User
 
Join Date: Apr 2018
Posts: 50
Quote:
Originally Posted by IgorC View Post
It's not like VP9 isn't supported by any smart TVs.

I have bought 1,5 years ago LG smartTV. This year after upgrading the Youtube aplication it starts to support VP9 (stats for nerds reports it) and plays Youtube 4K without single drop.
But itís not supported by everything whereas anything that can do 4K with a Netflix app has to have HEVC support.
__________________
My project BDSup2Sub++: https://github.com/amichaeltm/BDSup2SubPlusPlus
amichaelt is offline   Reply With Quote
Old 15th June 2018, 09:46   #708  |  Link
Blue_MiSfit
Derek Prestegard IRL
 
Blue_MiSfit's Avatar
 
Join Date: Nov 2003
Location: Los Angeles
Posts: 5,405
Quote:
anything that can do 4K with a Netflix app has to have HEVC support.
Exactly
Blue_MiSfit is offline   Reply With Quote
Old 22nd June 2018, 10:24   #709  |  Link
blurred
Registered User
 
Join Date: Jul 2016
Posts: 13
Interesting discussion regarding the choice of entropy coder for AV1: https://encode.ru/threads/1890-Bench...ll=1#post56945

Daala range coder using 16 multiplications per symbol has won with rANS using 1 multiplication per symbol, and ~7x faster implementations: https://sites.google.com/site/powturbo/entropy-coder

Do anybody know why the slower and more costly one was chosen?

ps. This nibble adaptive rANS is e.g. used in recent open source Dropbox DivANS: https://blogs.dropbox.com/tech/2018/...r-with-divans/

Last edited by blurred; 22nd June 2018 at 10:40. Reason: Dropbox DivANS
blurred is offline   Reply With Quote
Old 22nd June 2018, 11:43   #710  |  Link
nevcairiel
Registered Developer
 
Join Date: Mar 2010
Location: Hamburg/Germany
Posts: 9,389
Often the choice is for simpler hardware implementations, since thats really the future, not software. I'm also not convinced a generic benchmark can fully represent the performance characteristics of an actual codec.
__________________
LAV Filters - open source ffmpeg based media splitter and decoders

Last edited by nevcairiel; 22nd June 2018 at 11:47.
nevcairiel is offline   Reply With Quote
Old 22nd June 2018, 12:13   #711  |  Link
Phanton_13
Registered User
 
Join Date: May 2002
Posts: 87
If I don't remenber incorrectly the rANS does some things in a reverse way and othes things that complicated the cost of implimentation in hardware, in other works of implementing in silicon the 16 multipliers in Daala range coder is cheapier than implementing the memory need to implement the rANS. Also it apears that rANS can increase the latency specially at low rates due to the buffers. Most of this problems are being tackled in a new generation of ANS coders, but they are not going to be ready for a possible implementation in AV1.

Also remenber: Faster/cheapier in software is not the same as faster/cheapier in hardware.
Phanton_13 is offline   Reply With Quote
Old 22nd June 2018, 17:03   #712  |  Link
blurred
Registered User
 
Join Date: Jul 2016
Posts: 13
But doesn't 16 multiplications cost more energy than one - paid in energy consumption and battery life of our devices?
blurred is offline   Reply With Quote
Old 23rd June 2018, 00:55   #713  |  Link
Phanton_13
Registered User
 
Join Date: May 2002
Posts: 87
That only aplies to software implementations, in hardware you dont think in number of instructions but in number of gates/transistors, and the maping is not that simple as sometimes you can implement a function with 9 multiplications into the same number of gates that takes to implent 2 multiplications (this in an example of a real case). Memory also have cost in gates and power and you ned to evaluate If it's more eficient to expend the gates on memory or in procesing, the result of this evaluation is what determined the use of the Daala range coder as av1 have been designed with the hardware implementation in mind because it is critical for mobile phones.

Last edited by Phanton_13; 23rd June 2018 at 00:58.
Phanton_13 is offline   Reply With Quote
Old 24th June 2018, 12:32   #714  |  Link
blurred
Registered User
 
Join Date: Jul 2016
Posts: 13
Quote:
Originally Posted by Phanton_13 View Post
(...)you can implement a function with 9 multiplications into the same number of gates that takes to implent 2 multiplications(...)
Looks like you are referring to serial execution, which might require 16x frequency increase here (?)
And hardware decoding requires replacing current hardware - meanwhile (~5 years) it will be made software, where being 7x slower seems a huge sacrifice.
Additionally, Google is still fighting for this ANS patent over dead bodies ( https://arstechnica.com/tech-policy/...public-domain/ ) - if it is not intended for AV1, will it prevent others using ANS in video compression?
blurred is offline   Reply With Quote
Old 24th June 2018, 15:21   #715  |  Link
Phanton_13
Registered User
 
Join Date: May 2002
Posts: 87
Quote:
Originally Posted by blurred View Post
Looks like you are referring to serial execution, which might require 16x frequency increase here (?)
No, I refering to reimplemt the function, in that case a 50Mhz FPGA implementation of the full ASIC was able to match a Core2duo at 2Ghz runing its functionality in software, and in silicon the asic was runing at 1Ghz.

Hardware design is very diferent that software development, for example in the range coder of daala most multiplication are constant*value, in this case in hardware you don't need to do multiplication always, for example in the case that the constant is "2" there are various variants as for example in unsigned is only a bit shift but in harware is even cheaper as you only resoute the data and for signed you use and adder or a modified shifter. And for other values most of the time there is an alternative and faster way to implement it instead of doing a full multiplier. Also most of the time you don't need to implement a full multiplication unit as you only implement it what you need, for example you can do a 12 bit multiplier instad of a 16bit one if you values always fit in 12 bits, or you only implement the lower bits of a 16 bits multiplication and ignore any value over 16bits...

In hardware design the frecuency is a derived value of data propagation (delay, timing) and what you whant is results, even if some implementation have slower frecuency but produces the result faster you go for it.

Quote:
Originally Posted by blurred View Post
And hardware decoding requires replacing current hardware - meanwhile (~5 years) it will be made software, where being 7x slower seems a huge sacrifice.
That is true, bus is more like 2-3 years for hardware to start apearing, and in this case it can be reduced to 1 year due to the varios hardware designers and manufactures in AOM.

Quote:
Originally Posted by blurred View Post
Additionally, Google is still fighting for this ANS patent over dead bodies ( https://arstechnica.com/tech-policy/...public-domain/ ) - if it is not intended for AV1, will it prevent others using ANS in video compression?
No, actually having it refused can actually be good as it's detimentral if its aproved at posteriori for other entity because it can be used to put the patent office and the posteriori aproval in question and invalidate it. More this also demostrated the disfuntionality in both the patent system and the legal teams in companies.
Phanton_13 is offline   Reply With Quote
Old 24th June 2018, 16:17   #716  |  Link
blurred
Registered User
 
Join Date: Jul 2016
Posts: 13
Quote:
Originally Posted by Phanton_13 View Post
(...)in the range coder of daala most multiplication are constant*value(...)
If I properly understand, there are 16 multiplications due to "maximal alphabet size" = 16 - it needs to multiply "range size" by CDF value for all 16 symbols.
In contrast, rANS needs to multiply by only one value (p[s] = CDF[s+1]-CDF[s]), where s is the currently decoded symbol.

CDF changes with data type (context), and can be adapted - these are definitely not constant values.
In hardware you can build 16 parallel multipliers not to increase frequency, but it would need 16x more gates, and most importantly: consume 16x more energy.
blurred is offline   Reply With Quote
Old 24th June 2018, 19:45   #717  |  Link
Phanton_13
Registered User
 
Join Date: May 2002
Posts: 87
In part you are rigth but at the same time you are forgeting one thing, those 16 pararell multipliers consume more energy than the extra memory needed in rANS? the hardware is inerent pararell, then is theupdate posible to do in pararel with another task during the decoding process? Also there is the posibility of optimization for those 16 pararell multiplications as one operand is comon to all. On thing that help with hardware is not to think of it like a computer program but as a data flow between operands.
Phanton_13 is offline   Reply With Quote
Old 24th June 2018, 21:24   #718  |  Link
blurred
Registered User
 
Join Date: Jul 2016
Posts: 13
Such additional (for rANS) buffer is only needed in encoder, which for video compression is usually an order of magnitude more costly, and for example for youtube, netflix video used only once per thousands or millions of views (decodings).
And video compressor seems to require huge flexible buffers for various modellings/predictions - is it a non-negligible cost to share a few kilobytes with entropy coder?

Quote:
Originally Posted by Phanton_13 View Post
Also there is the posibility of optimization for those 16 pararell multiplications as one operand is comon to all.
Interesting, indeed the range is varying, but the same for all 16 multiplications.
Thinking about multiplication as shifts and additions, the cheap shifting part can be indeed shared, but it doesn't seem simple to get systematic optimization for separate additions - do you maybe know some paper showing how to optimize it?
blurred is offline   Reply With Quote
Old 25th June 2018, 21:13   #719  |  Link
Quikee
Registered User
 
Join Date: Jan 2006
Posts: 38
AV1 freeze

AV1 1.0.0 code tag

Also specs don't have draft status anymore.

No official announcement yet..
Quikee is offline   Reply With Quote
Old 26th June 2018, 00:12   #720  |  Link
GTPVHD
Registered User
 
Join Date: Mar 2008
Posts: 235
https://aomediacodec.github.io/av1-spec/

Still says Draft Document here.
GTPVHD is offline   Reply With Quote
Reply

Thread Tools Search this Thread
Search this Thread:

Advanced Search
Display Modes

Posting Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

BB code is On
Smilies are On
[IMG] code is On
HTML code is Off

Forum Jump


All times are GMT +1. The time now is 03:54.


Powered by vBulletin® Version 3.8.11
Copyright ©2000 - 2018, vBulletin Solutions Inc.