Yes, thanks. I have seen that collection of articles, but I haven’t found specifically what I’m looking for so I don’t know if it’s there somewhere. I may not have explained my needs clearly the first time, I’ll try again. Maybe someone could point me to an article in that collection if one exists…
I run a corporate website. My marketing dept wants to embed videos-on-demand on certain pages. They’d prefer if the videos played in a player/plugin embedded in the page, but if for some reason on some device it needed to be a plain hyperlink straight to a video file that’s ok too. The core requirement is that our videos will play on as many different OS & device combinations as possible without creating multiple pages all designed for different devices. Here’s what I have so far…
When a customer requests a page from my web server (call it www.xyz.com), Coldfusion will detect (server-side) what the customer’s http_user_agent is. That will give my Coldfusion server information like browser, version, possibly OS, etc. Coldfusion needs to then return a web page back to the customer that includes html (or javascript) that embeds the appropriate player/plugin, and that player must point to a video stream appropriate for that player/plugin. That vod asset file will physically live on my Wowza server (wowza.xyz.com) so that means I’m not doing user_agent detection or any coding on the wowza server at all.
If the customer is on IE with a Flash plugin, I need to return a page that embeds the Flash player pointed at http://wowza.xyz.com:1935/vod/mp4:myvideo.mp4/manifest.f4m
If the customer is on an iPhone I need to return a page that embeds the default iPhone player pointed at http://wowza.xyz.com:1935/vod/mp4:myvideo.mp4/playlist.m3u8
and so on
This needs to be as cross platform, cross browser, cross player plugin as possible so that it plays seamlessly for everyone, so the first thing I’m doing is I’m going to encode MP4, H.264, AAC because I want universal vod asset files. Next, on the server side (www), when processing the customer’s request, I need to do something like this…
(Coldfusion, server-side)
If user agent is…
IE
return html w/embedded Flash player
if no Flash, embed Silverlight
if no Silverlight, hyperlink to mp4 file
Safari
return html w/embedded default apple video player
Android
return html w/embedded Flash player
if no Flash, hyperlink to mp4 file
etc
Does that make more sense? I know I entitled this article “client side player detection” but I didn’t mean I wanted to detect the player on the client side, I know that’s done on the server side, what I meant was I need to detect what client they’re running so I know what html to return, what player to embed, what vod asset to link to, etc.
Are there any articles that handle the most common browsers/players/plugins/devices on the server-side? Even if the code is PHP or .Net I can convert it to Coldfusion, that’s not a problem, it’s just coming up with a universal server-side code set that detects client environment and returns the proper player/plugin/stream link format.
Thanks