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

No, his example referenced a little known fact about H.264, comparing hardware decodable H.264 versus non-hardware-decodable H.264. The iPhone isn't playing some other codec.

H.264 can be encoded, using the same tools, in a way that can, or cannot, be hardware decoded.



I was pretty sure he was referring to VP6-encoded Flash video, not some version of H.264 that is harder to decode. Could you provide more information on non-hardware-decodable versions?


VP6-encoded Flash video doesn't run on the iPhone, so that's not what he was referring to.

I believe Jobs is talking about comparing two videos on the iPhone, with hardware accelerated video lasting 10 hours and non-accelerated video lasting 5 hours. You may not notice if you're not paying attention to battery while you watch video.

To the sibling comment here, I'm not referring to profiles. I'm referring to the fact that various implementations of H.264 encoders produce content that, depending on the implementation, may or may not be accelerated by the iPhone's PowerVR SGX 535.

One can produce a pair of H.264 encoded in .mp4 container movies, encoded from the same mpeg2ts original, one of which can use hardware acceleration, and the other of which cannot.

(I haven't had the chance to check yet if Adobe's 'Gala' responds the same way to such files on the desktop Macs Gala supports.)


He probably means H.264 profiles.

iPhone (and Android phones) can decode only certain profiles (Baseline), and up to certain levels (depending on resolution). Even hardware assisted decoding with PC graphics cards can accelerate only up to certain level (usually high@4.1, but some nvidias can decode high@5).

The rest is more complex than hardware assisted decoders are able to decode and pure software codec has to be used.


iPhone supports High profile just fine.


IPhone does not support high profile by any stretch of imagination. Why don't you go and check Apple documentation? There's a technote for that.

Or just try playing high@ video on iphone.


http://120fps.org/l_high3.mp4

I copied this High@3.0 file out of my iTunes library and it successfully syncs to my 3GS.

I can't get it to play over Wifi, while I can get a Main@3.0 file to play, but I think this has something to do with not enforcing some bitrate limit rather than the profile.


iPhones don't even support Main profile (though some suggest that the 3GS actually has enough power to do so, it's only software limited by Apple to keep the line homogenous).

Search for "Baseline Profile" on this page for the full details:

http://www.apple.com/iphone/specs.html




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

Search: