Are video codecs written in JavaScript really the future?
arstechnica.com
arstechnica.com
The other thing to note is that if ars is correct and that it only uses I-frames only in some cases, its not going to be bandwidth efficient. That's one compromise you can't really make in mobile land. Its also going to require two separate streams (one for each class)
One last thing, I've not actually seen any output "in the flesh" as it were. VP8 was supposed to be wonderful, but in fact its almost a clone of h264, just with marginally worse performance.
(another thing, its actually really hard to make an HD player from scratch. You wouldn't think it but putting frame on screen in a timely and smooth manor is really not trivial.)
There really isn't anything 'amazing' about VP8, except that some people think it fixes something about video coding because it is 'more free' than H264, which IMO is vastly overstated. In real life, for 99.9% of people (including those offering commercial video products), the difference is practically philosophical.
It's quite hard to argue against commoditised hardware codecs, particularly when the decoder is a low power mobile device. It's one of the main reasons h264 is going to be around for a long time...
There is a massive amount of high quality content, encoders and transport tools. Even when h.265 is properly ratified its going to be at least 2 years before we see mature tools/content.
I can see how this would allow more flexibility, since a codec could be downloaded at run-rime, which would remove the need for media to only be packaged in codecs with native, cross-browser support.
But is there any chance this could be even close to as efficient, CPU or power-wise, as the current standard native browser codec support?
I don't like how this article is written at all. It leaves a bias afterlook that Mozilla's goal here is to create a toy. JavaScript is the fastest interpreted language and plans are out to make it even speedier. There's a reason why "the future" is emphasized.
Perhaps I am biased as a Node.js programmer, but I do believe this is a good thing. JavaScript is seriously pretty sweet. I do like the design of the language. There are features that outblow many other languages.
Citation needed
http://en.wikipedia.org/wiki/JavaScript_engine#Performance_e...
asm.js promises speed 2x slower than native code. For interpreted code, that is amazing.
It's been a while since I rolled up my sleeves and ran various algorithms in js vs lua vs py (pypy was speedy as well last I checked).
asm.js isn't dynamically typed afaik, so I think of a fair comparison as v8 vs luajit
A nitpick: Current Javascript implementations are fast specifically because they are not interpreted. Look at V8 or JagerMonkey; those are JITting compilers, not interpreters.
a) fitting perfectly in the business model of Mozilla Corp.
b) the voluminous and unwavering support they can expect from their fan base.
Decoding in general purpose compute is expensive for client devices in comparison to codec specific hardware.
Otoy's goal is to make encoding computationally inexpensive on the server side. This makes applications like per client frame by frame watermarking and low latency encoding far more scalable than other solutions.
Otoy is trying to explore the market potential of inverting the typical encode/decode cost model so that rather than encode once -> decode many. It becomes affordable to encode on a per client basis.
ah, thats why i couldnt find it on github. and oh :(
Or would using the codec still be a copyright violation even if it is reverse engineered?
Can you still identify who shared a video, if the shared video was created by averaging ten copies with different watermarks?
> The viability of watermarking as an alternative to DRM is also speculative conjecture (...) In spite of the changes in the audio market, the video market has remained firmly in favor of DRM
A week-old demo and the author is already saying it doesn't have enough market share to be viable.
But a new codec like ORBX.js however can be designed to run efficiently in WebGL, that is what is interesting here.
I saw early whitepapers where they had planned even to do things like recognize people's faces, and deduce geometry, thereby separately compressing a person in the foreground vs background (use case: conference calls, news anchors, etc)
As for whether it is possible to deduce 3D structure 2D, there's been some progress in that regard, check this out: http://www.youtube.com/watch?v=CZiSK7OMANw
Movie codecs are hard. However jpeg2000 and similar wavelet codecs (like Red's(those bashful camera people) REDcode, or dirac) can yield amazing compression ratios. The main problem is processing power.
Take Red cameras for example. When they first came out, it was a massive pain. Unless you spunked $5k on a super unreliable pci card you'd only get a maximum of 6 fps out of a 8-core mac (and it could only be a mac as there was no linux SDK) With the advent of 3 generations of CPU and better programming skill from people like avid, aja and the foundry we can get real time playback on a laptop.
The problem with uncompressed formats at high resolution (like cinema 4k, and its smaller "UHD" cousin.) is that they eats bandwidth. Full res 4k images with basic RLE is 50megs. Thats 1.2 gigabyte a second. You're lucky to get that out of 10gig Ethernet.
Uncompressed anything is pretty much out of the reach of most consumers. iTunes, netflix, over the air, cable is all either MPEG2 or h.264
It just takes a long time to get from approval to acceptance. The other problem with JPEG2000 is that its not really a motion codec, so it doesn't degrade well over lossy links without special sauce. All of which is non standard.
http://iss.oy.ne.ro/HTML5-Video-Battery
Hardware decoding or not, Flash is always less efficient than the alternatives.
Um...what? Last time I checked WebGL ran and "shader programs" ran on the GPU. What am I missing?
Some things need to be clarified first though, like recent Nokia's patent sabotage to VP8. Not sure what is going on with that.