Wednesday, April 17, 2013

The Helping Hand of an Expert

Have you ever been stuck working on a problem only to receive a solution from a friendly person you've never met? Some of the most helpful responses on Stack Overflow and open source code examples have been contributed by our YouTube API community members. The Google Developer Expert (GDE) program is designed to recognize the active and passionate YouTube API developers who make these outstanding contributions.


Each year, Google Developer Experts are selected for their existing accomplishments using Google technologies, their continued passion for these technologies, and their willingness to engage with and mentor other developers.

To learn more about what it’s like to be a GDE, check out this interview with two of our 2013 YouTube API GDEs, Matias Molinas from Argentina and Tim Wintle from the U.K. 



If you’d like to share your knowledge, connect with us on +YouTubeDev, contribute to Stack Overflow, and find like-minded developers at your local Google Developer Group (GDG)

Cheers,
—Jarek Wilkiewicz and Jeremy Walker, YouTube API Team

Wednesday, March 13, 2013

YouTube for Developers on... YouTube!

For almost a year, we’ve been recording weekly shows for YouTube API developers as part of the Google Developers Live series, hosted on the Google Developers YouTube channel. Now, if you want to get just YouTube API-related videos, check out the new YouTube for Developers channel.

On our new channel, you’ll find an up to date playlist of all our YouTube Developers Live shows (which we’ve also embedded below), as well as other playlists with videos related to the API. We still recommend subscribing to Google Developers as well, especially if you plan to work with multiple Google APIs in your applications.

Not surprisingly, we’re using the YouTube Data API v3 to maintain the YouTube Developers Live playlist, and also to post channel bulletins whenever any video related to YouTube is added to the Google Developers channel. If you’re interested in doing this type of automatic curation in your own channels, you can take a look at the open source Ruby script that does the work for us.



Cheers,

Wednesday, February 6, 2013

Keeping Up with YouTube API Updates

As the YouTube APIs continue to evolve, release notes are a good place to keep track of improvements. However, with a busy life, you may not remember checking regularly for updates. Now, for the first time, you can subscribe to RSS feeds to be notified as soon as new features are available.

The release notes for all of the YouTube APIs and widgets have their own corresponding RSS feed.
Feeds are available for:


Going forward, we will be pushing updates via RSS for all of the YouTube APIs. Follow our YouTube for Developers Google+ page, and subscribe to the RSS feeds to get the latest API updates!

Cheers,
Ibrahim Ulukaya, YouTube API Team

Friday, December 21, 2012

No WebView required, with native YouTube Player API for Android

Adding a high-quality video experience to your Android application just got a whole lot easier. Starting today, you can embed and play YouTube videos in your app using the new YouTube Android Player API.

The API, which was pre-announced at Google I/O 2012, offers these benefits:
We are launching the API as experimental, though we do not expect major interface changes going forward.

The Only Limit Now is Your Imagination (and ToS)

These instructions explain how to include the YouTubeAndroidPlayerApi.jar client library in your Android application. The library is supported on Android devices running version 4.2.16 or newer of the Android YouTube app.

You can use the YouTubeApiServiceUtil class' isYouTubeApiServiceAvailable method to confirm that a device is compatible.

For a simple embed, use the YouTubeStandalonePlayer. To build a more sophisticated user interface, try the YouTubePlayerView or the YouTubePlayerFragment. Fragments can help create an engaging experience as shown in the Video Wall app example.


Play With These Apps

Here are a few interesting apps available for you to explore:
  • See everything on Flipboard, all your news and life’s great moments in one place. Now you can watch YouTube videos from wherever you are in Flipboard without leaving the application, providing a more integrated and seamless experience.
  • BuzzFeed delivers original reporting, scoops, and the hottest social content on the web. Android users can now view their favorite BuzzFeed content featuring YouTube videos in the BuzzFeed app and share with their friends.
  • 9x9.tv enables users to discover and watch curated, topical videos that are organized into TV-like channels. Their blog describes their experience developing with the API.
  • SoundTracking lets people use their mobile phone or tablet to share their music moments and favorite jams with friends and family.  Users can now discover and play YouTube music videos of the songs within their music timeline.
  • Fitness Flow by Skimble helps you get in shape with high-quality exercise videos led by professional trainers. Skimble uses YouTube to stream workout content on your Android phone and tablets.
Check out a few screen shots below or download the apps from Google Play today!
Flipboard BuzzFeed Skimble Workout Trainer
FlipboardBuzzFeedFitness Flow by Skimble
Learn More

If you would like to learn more about the YouTube Android Player API, the documentation is a great place to start. In addition, we have curated useful videos in this playlist. Please subscribe to the YouTube for Developers' channel to keep up on the latest.


Check Out The Sample Code

We’ve prepared several code examples to make it easy for you to get started with the new API. You will find them on code.google.com. The description of the examples is available in our documentation. If you need additional help with the API feel free to use our support resources.

Cheers,
-- Ross McIlroy, Anton Hansson, and Horia Ciurdar, YouTube Mobile Team

Friday, December 14, 2012

The Simpler, Yet More Powerful New YouTube Data API

Since its initial launch in 2007, the YouTube Data API has become one of Google’s most popular APIs by request volume, thanks to the awesome apps from developers like you. To help you make better integrated video experiences, you can now use the YouTube API version 3.0. The new API is easy to use thanks to rich client library support, improved tooling, reference documentation and integration with Google’s common API infrastructure.  Version 3.0 only returns what you ask for and is using JSON rather than XML encoding for greater efficiency. The API introduces new core functionality including Freebase integration via topics, and universal search.  If you develop social media management apps, you’ll love channel bulletin post and full subscriber list management, also new in this release. Version 3.0 of the API constitutes the API's biggest overhaul to date and we’re eager for you to try it today

New Functionality: Topics, Universal Search, and Audience Engagement Support

Have you ever tried to search for YouTube videos only to find out that keyword search can produce ambiguous results? With the new Topics API, thanks to the power of Freebase, you can find exactly what you’re looking for by specifying Freebase topic IDs rather than search keywords.

For example, if you’re reading this post from outside of the US and would like to search for content related to football, /m/02vx4 is probably the topic ID you're after. The API's universal search feature lets you retrieve channels, playlists and videos matching the topic with just one request like this one. Find out more in our Topics API Guide.

Version 3.0 introduces better tools to engage and interact with one’s YouTube audience. Social media management apps can now help content creators communicate with their channel subscribers using buletin posts

Efficiency, Client Libraries, Better Tooling and More!

To help you reduce your app’s bandwidth requirements version 3.0 only returns the information you ask for as specified by the “part” parameter.

While the default JSON encoding in version 3.0 is more efficient than XML in version 2.0, if parsing JSON isn’t your thing, check out the client libraries for .NET, Dart, Go, Java, JavaScript, Objective-C, PHP, Python and Ruby. The libraries use OAuth 2.0 authorization and work with the YouTube API as well as other modern Google APIs thus simplifying your application.

The familiar Google API tools such as the API console  work with YouTube API version 3.0 without any extra hassles. Additionally, our API reference documentation now allows you to scroll down to the bottom of any reference page to try the API. You can also or visit the standalone API Explorer to browse a list of supported methods. 

App Examples

Even though version 3.0 is still experimental, a number of exciting new apps are already using it. Let’s look at a few examples: 
  •  Showyou, an app that makes it easy to watch the Internet, integrated the Topics API to enable users to discover related videos after tapping on topics associated with the Showyou feed. 
  • Argentina-based Interesante integrated the Topics API to determine the Freebase topic of videos being shared. Interesante used this to serve interest-based video recommendations. 
  • FanBridge, a company specializing in growing and managing one’s fan base, recently introduced channel bulletin post functionality with scheduled posts support.
  • Tubular Labs, which focuses on YouTube audience development, uses subscriber list to help content creators develop a better understanding of their audiences. 
  • Pixability, a company specializing in YouTube marketing software, was able to quickly port their Online Video Grader to the YouTube API version 3.0 thanks to the new Python client library.
Learn More

If you would like to learn more about the YouTube API version 3.0, in addition to the API documentation, the material curated in this playlist is a great place to start. Please subscribe to the YouTube for Developers' channel to keep up on the latest.


Use The Source, Luke! 

Since the most fun way to work with it is to try it, we’ve prepared a few code examples in Python and JavaScript to get you started. For a more comprehensive client-side app using the Topics API, try the Topics Explorer. You can find its source code on code.google.com.

Cheers,
-- Raul Furnică, Vladimir Vuskovic and Pepijn Crouzen, YouTube API Team

Tuesday, December 11, 2012

ClientLogin using Google Accounts

Long-time readers might remember a blog post from a while back entitled “ClientLogin #FAIL”, in which we covered the myriad ways in which your ClientLogin authorization attempts might result in an error. Even though ClientLogin has been officially deprecated since April 2012, and even though we’ve been recommending that developers switch to OAuth 2 for longer than that, we know there are still a good number of legacy applications out there that still rely on ClientLogin.

If you are a developer of such an application, there’s another thing that you (and your users) will need to start watching out for: at some point in the future, we will start requiring that the username parameter passed to ClientLogin (i.e. what’s referred to as the Email= value in the ClientLogin request) correspond to the full email address of the Google Account that’s associated with an underlying YouTube channel. We’ve supported using Google Account email addresses with ClientLogin for many years now, ever since we started linking Google Accounts to YouTube channels, but old habits die hard, and many users still use YouTube usernames.

We haven’t yet determined a date for when we still stop supporting ClientLogin with YouTube usernames and will provide additional details when we know more about when it will take place. However, if you use ClientLogin, it’s not too early to start encouraging your application’s users to start providing their Google Account email addresses instead of their YouTube usernames when logging in. If you have the ability to update your existing application’s user interface, we recommend doing so to indicate that the username field should take a Google Account email address. If you have any online help materials or technical support for your software, update them to ensure that users know to provide their Google Account email address.

Users who log in via the YouTube.com web interface, or who go through the AuthSub, OAuth 1, or OAuth 2 web authorization flows will soon be required to use their Google Account email address instead of their YouTube username as well. This web-based transition will take place well before we deprecate YouTube usernames for ClientLogin, and it should be transparent to developers since Google controls the user interface for these flows. For more information, see this help center article.

As mentioned, we’ll have a follow-up post in coming months with more details about exactly when we’ll stop supporting YouTube usernames with ClientLogin. That post will also communicate the exact error message that ClientLogin will return when a YouTube username is used. We’d like to close with one more plea: ClientLogin is deprecated, and is technically inferior to OAuth 2 in a number of important ways. Our new Google APIs client libraries provide first-class OAuth 2 integration that developers can take advantage of in their new code, or back port to their existing code. You will be doing your users a service and making their accounts more secure by transitioning from ClientLogin to OAuth 2.

Cheers,
Jeff Posnick, YouTube API Team

Thursday, November 15, 2012

Using WebM to power the YouTube app for Nintendo Wii

When we began building the new YouTube app for Nintendo Wii, we wanted to make video playback smooth and beautiful. This meant squeezing the most available power from the console CPU and fitting the video decoding process within the tight bounds of available memory. After trying out several video encoding formats on Wii, we found that 360p WebM encoding performed the best. With the largest install base of current generation consoles, YouTube on Wii is the largest deployment of WebM video in the world today.

WebM is particularly well-suited to devices where available memory is limited, because of its technical approach to video encoding. VP8, the video codec in WebM, uses reference frames (called alternative reference frames, or "alt-ref") from which adjacent video frames are derived and compressed. This type of compression is commonly used in modern video encoding schemes, but VP8 uses the technique with particular efficiency, which results in a smaller memory footprint and smoother video playback on Wii.

We went one step further and performed low-level optimization of the VP8 decoder specifically tuned to the Wii’s processor. This included: using paired-single floating point operations to perform motion compensation, loop filtering, and idct; using the GPU to do color conversion and scaling; and dcbz instructions to copy buffers. This kind of
optimization is available to anyone, as the VP8 code is open source under a BSD license.

We’ll keep looking into other ways we can use WebM, so stay tuned on this blog to learn more.

Fritz Koenig, Engineer, recently watched Phantogram - "Don't Move", and Matt Darby, Product Manager, recently watched “JP Auclair Street Segment.”