Embedding Video In a Site For iPhone/iPod?
Russ writes "Our corporate media delivery platform is in the process of being refactored (at long, long last), and one of the preferred requirements is the ability to serve streaming video to iPhone and iPod Touch devices, similar to the way YouTube does it — show a screen shot, and when the user taps it, the video should play full-screen and landscaped automatically. The problem comes from the severe lack of documentation Apple provides on how, precisely, this can be done. From what I can tell, YouTube still fires a Flash object to the iPhone despite its lack of Flash support. I have, to a certain extent, been able to review some of YouTube's Flash code and get a hack working on our platform (no screenshot, not landscape, but does play automatically), but I'm sure I'm missing a 'trick of the trade' somewhere that makes the process transparent to the user. Has anyone out there done this before, and if so, how? The standard (and non-standard) Quicktime object/embed codes seem to only provide partial functionality on the iPhone/iPod."
All you need is a direct link to an Apple-compatible MPEG4 video with the correct mediatype on a server that supports the Range HTTP header. The iPhone/iPod's player will automatically start and allow seeking in the video.
We've been using this technique for a commercial IPTV service for about a year already.
to ask the source:
https://developer.apple.com/safari/library/documentation/AppleApplications/Reference/SafariWebContent/CreatingVideoforSafarioniPhone/chapter_9_section_1.html#//apple_ref/doc/uid/TP40006514-SW1
requires a login, etc but if your going to develop for an iphone you might as well save yourself some headbashing and sign up.
http://developer.apple.com/safari/mobile.php
It's worth signing up for a free account, even if it's only to access Mobile Safari's documentation.
You can point your non-iphone browser there to get a sense of how its done.
They've done a splendid job of letting people stream video directly from their site to the iphone simply by having every video on their site converted to Iphone-compatible quicktime (mp4) format. The video quality is even quite a step up from what youtube offers on the iphone.
Details are always nice... (Yes, there are far more options available!)
From mplayer:
mplayer -ss 60 -vo jpeg foo.mpg
Where:
-ss 60 starts 60 seconds into the video stream.
-vo jpeg outputs each frame as a jpeg image with the name 00000000.jpg.
Pick a bunch of winners... Motion blur can be a problem!
From ImageMagick:
convert -delay 10 -loop 0 000000{01,17,23,34,97}.jpg animated.gif
Where:
-delay 10 gives one frame every (10/100) or 0.1 seconds.
-loop 0 makes it repeat endlessly.
000000{01,17,23,34,97}.jpg are the source images.
animated.gif is the output file.
You may also want to use -geometry for resizing (making thumbnails). And perhaps -crop.
The problem comes from the severe lack of documentation Apple provides on how, precisely, this can be done.
Given the number of different links to apple.com web pages already provided in this thread, I'd say the real problem is someone doesn't want to do any reading.
#DeleteChrome
Seriously the standard of developers these days seems to have plummeted. If you want to provision for a device go and get the manual for that device, find out that H264 is what you need for the iPhone and that YouTube most certainly does NOT stream flash to iPhones.
I'm going to put my grumpy old bloke hat on here, but its the same hat I wore when I was 25 and someone asked me how to run Windows apps on an IBM RS6000. That person's excuse was that they just "thought it would work" which was a woeful statement from someone who had a degree in IT. This AskSlashdot is at the same level in that the question boldly states something that ISN'T TRUE (YouTube stream flash) and thinks there is some magic secret.
There is no magic secret, there is something that shouldn't be considered a secret at all. That thing is called RESEARCH, hell I'm not even asking you to hit the books in a library but just Google YouTube iPhone to find a FREE converter that talks about the video differences or YouTube iPhone video codec. It really is trivial. And if you can't do that then have a thought about just giving up and using Google Apps Premier Edition for your business and using the commercial version of YouTube that it supplies.
An Eye for an Eye will make the whole world blind - Gandhi
Stop contributing to the Apple monopoly. You aren't helping matters when you support it. We consumers end up with less choice and more problems. The iPhone, the iPod, all crap lock-in and not even real "platforms" despite people acting like it is something you can develop for.
Regardless of one's feelings toward Apple and the iPhone, I think this is an interesting question to address. At least, I have no desire to own or develop for an iPhone, but I do have great interest in not using Flash.
If there's any one thing I like about the iPhone, it has people asking questions like "How can I provide a good user experience for streaming video on a platform that doesn't support Adobe's Flash plugin?". The iPhone is obviously a proprietary, closed platform, but I appreciate that at least to a small degree it's making people think about solutions that had become almost universally tied to other proprietary technology.
I hope to see fewer browser plugins like Flash on all smart phones, so that solutions such as the YouTube app can be taken advantage of to produce desktop solutions where Flash is also unavailable (or unwanted).
This is because all the followers of The Church of Steve Jobs are promoting anything iphone/apple on firehose.
Maybe, but if you step back for a moment, you will also find that the church of Adobe (Flash) and the church of Microsoft (Silverlight0 has an alternative: the church of open standards. As an example, take the following page:
http://lessig.blip.tv/file/1714232/
and then simply select "MPEG-4 video" as the format. It plays without any extra magic.
I may use an iPhone, but I am very pro open standards. Sure anyone can keep a local copy of the MPEG4 file, but this is where Creative Commons comes into play.
Jumpstart the tartan drive.