Hacker Newsnew | past | comments | ask | show | jobs | submitlogin

Aside: The 3d js demo (http://threejs.org/examples/webgl_buffergeometry.html) is close to a worst-case input for a video encoder, which is why the youtube video looks so bad.

Video codecs generally encode motion first ("move this rectangle left 10 pixels"), and then fix any residual errors ("apply this patch"). It is _far_ more efficient to transmit motions and residuals than an entire frame.

This demo actively resists motion encoding, since a 3d volume shifting perspective is approximated poorly by a linear shift. Almost every pixel is changing each frame, in an unpredictable manner. Youtube doesn't allow the encoder enough bits to represent the actual image well, and the result is a blurry mess with occasional flashes of clarity when the encoder transmits a keyframe (an entire picture, added to allow fast seeking).



Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: