Flash is no longer default option for YouTube embeds
I don't know how I missed this one: Google has taken iframe embedding out of beta and quietly made it the default choice. I noticed yesterday, when looking to embed a video here at Betanews. The default had been Adobe Flash with iframe embedding optional and labeled beta; where iframe was placed in the embed options there now is "use old embed code," meaning Flash. I've been embedding with the iframe code for months so Betanews readers using iPads or smartphones could watch embedded YouTube videos. Based on forum chatter, Google made the change as recently as four days ago.
Technically, the player isn't Flash-free. It's more like Flash is no longer required. Videos can stream in Flash or HTML5 video depending on the player detected. For reasons that don't make much sense from a consumer experience perspective, YouTube videos using the new embed code won't play on Safari without Flash installed (presumably other browsers, but I haven't yet tested). YouTube detects the browser and presents notice that Flash is necessary to play the video. It's not. YouTube is blocking HTML5 streamed content. Changing the browser's identification to "Mobile Safari -- iPad" solves the problem. But why is that necessary?
There has been some chatter about the embed code change over at Google's YouTube API forum. I've collected a small sampling of questions (which I've condensed) and responses from Jeff Posnick, who is part of Google's YouTube API Team.
1. Will the old embed code go away?
"We are in no way dropping support for the older embed codes. The only change that was made is in what type of embed code is generated by default."
2. Is there JavaScript support?
"There's no JavaScript API support right now, but it is something that the engineering team plans on adding in the future. We can't commit to anything right now, but I believe the general idea is to expose an API that is very similar if not identical to the existing interfaces and methods."
2. My blogging system strips out the iframe code. Why is that?
"It is definitely true that some blogging platforms or social networks might take steps to automatically strip out iframe tags or otherwise prevent the iframe embed code from working in posts. We first announced the new iframe embeds 6 months ago...and since then have worked with a number of the major content platforms to ensure that they support the new-style embed codes. There obviously is still not 100 percent support, and with the recent change to make the iframe embed code the default, we're obviously hearing more about the platforms that don't handle iframe embeds properly."
I'll add this: I've had WordPress strip out the code when using the WYSIWYG editor, but it's OK when working with the HTML editor. Typically, iframe is referenced surrounded by brackets <>, but using them causes the Betanews blogging system to try and read the bracketed iframe as a tag. So I've removed the brackets throughout this post, including the Google forum responses presented.
Compatibility appears to be developers' major concern right now, based on forum chatter. For example, one developer writes: "I manage the website for a hospital system that uses the Stellant content management system. The new embed code that uses iframe does not work at all." Posnick's response isn't exactly encouraging: "If you haven't yet done so, you could try reaching out to Stellant and asking them to support the iframe embed codes as well. We at YouTube obviously have no control over whether their software recognizes the new embeds or not."
Google gave developers about six months to prepare for the new embed code. Was that long enough? Did Google provide enough notice of the change? Please respond in comments or email joewilcox at gmail dot com.