I am attempt to understand the logic behind whatever trips the 'blocking' mechanism for YouTube's video playback.
Here I am attempt to play back a song which is blocked from embedded playback inside of a JS Fiddle. Observe that it works:
Now, I use the exact same code inside of my Google Chrome extension:
http://www.meomixes.com/ if you'd like to click to download extension.
http://www.meomixes.com/Test.crx for direct link to extension.
Observe that I cannot playback the same youtube video:
I was wondering what my debugging options were for this scenario. Does anyone have any ideas on what I should explore? I've tried requesting the following permissions in my manifest, but it did not have any effect:
"permissions": [
"http://*.youtube.com",
"https://*.youtube.com",
"http://*.google.com",
"https://*.google.com"
]
I've placed the full source of Test.crx here: http://www.meomixes.com/Test.zip To load:
- Unzip
- Go to Google Chrome's extension page and enable 'Developer Mode'
- Click 'Load Unpacked Extension' and point to the unzipped directory.
- Observe that the video does not play back.
Last of note: The song plays happily in a Facebook post.
EDIT: I found this: http://gdata.youtube.com/feeds/api/videos/UfESt2KdOdc?v=2&prettyprint=true for the video in question. It pairs with: http://apiblog.youtube.com/2011/12/understanding-playback-restrictions.html.
Just building on the first response. Basically, there is a setting called 'syndication' which prevents from playing on 'external devices' such as TVs and Google Chrome Extensions.
Looking at ways to bypass this issue now.