On Mon, Oct 7, 2013 at 9:01 AM, Brion Vibber <bvibber(a)wikimedia.org> wrote:
As an experiment, I've built Xiph's ogg,
vorbis, and theora C libraries
cross-compiled to JavaScript
[snip]
Performance on iOS devices isn't great, but is
better with lower
resolution files :)
I've also started on an experimental native iOS library for .ogg/.oga/.ogv
playback, again cross-compiling the existing Xiph ogg, vorbis, and theora
reference libraries as the actual decoder:
<https://github.com/brion/OgvKit>
It's still a proof of concept, currently without color conversion, sane
drawing code, audio, playback controls, etc, but the demo successfully
plays a small 3-second sample video I pulled from Commons: <
https://commons.wikimedia.org/wiki/File:Peacock_Mating_Call.ogg>
Note that doing custom video decoding like this will still be a lot less
efficient and user-friendly than using native, hardware-accelerated
.mp4/H.264/AAC playback, but would be *much* faster for iPhones and iPads
than the JavaScript version... and a hell of a lot better as a fallback
position than "no audio/video for you".
(Unfortunately you can't download an installable build yet due to Apple's
restrictions on third-party app installation. If anybody's interested in
testing, I'll continue to do some experimenting on this on the weekends and
could make builds available via TestFlight. Let me know!)
-- brion