Is there any way to determine the duration/length limit for a user when using Youtube API 3.0 to upload a video?
Navigate them to "Video Manager>Channel Settings>Features" and click on the "Enable" button in front of "Unlimited Uploads". (There may be an easier way to do this with the API)
Clearly, after performing this process, you can conclude that there is no limit, and do whatever it is you wanted to do that would require uploading longer videos.
Related
We are a UA agency and we are building an internal tool to automatically upload videos on YouTube in order to then use these videos in our Google Ads App Campaigns. However, we are currently limited to uploading 6 videos through YouTube API per day which is way too low compared to our needs. We followed the process to request a quota increase. However, we can't go through as our system is internal so Google can't check its use or purpose. We would like to get in touch with someone to whom we can explain the issue.
Cheers,
Matthieu
By default, YouTube allows video uploads that are up to 15 minutes long. If you try to upload videos longer than 15 minutes, the upload will fail. This is a YouTube limitation rather than a Brightcove limitation.
To upload longer videos to YouTube, you need to verify your account with YouTube:
Open the YouTube upload page at https://www.youtube.com/upload.
Click Increase your limit link at the bottom of the page.
Note: If you can't find the Increase your limit link, it's possible that you may already be able to upload long videos. Check the Longer videos section in your YouTube Account Features page to check if the feature has already been enabled.
Follow the steps to verify your account with a mobile phone.
When you receive a text message from YouTube in response, enter the verification code from the text message and click Submit.
YouTube will then confirm when your YouTube account has been activated for longer uploads. From this point, any videos longer than 15 minutes in your Video Cloud account will be synced to YouTube.
You'll need to apply for a quota extension, you can do so here: https://support.google.com/youtube/contact/yt_api_form?hl=en
Here is a link to video which does not work
https://www.youtube.com/watch?v=abEOkul6HEx
How I can programatically detect this ?
The scenario would be to monitor a list of youtube videos and detect if a single video was deleted or is no longer available
Any ideas ?
You can use following youtube v3 API GET request
https://www.googleapis.com/youtube/v3/videos?part=id&id={VIDEO_ID}&key={YOUR_API_KEY}
In the results check for pageInfo.totalResults attribute
Update
If you want to pass multiple video ids in one API, it also can. id={VIDEO_ID1},{VIDEO_ID2}. In this case you can't depend on pageInfo.totalResults you have to go through items[].id decide.
I'm building an iPad app (which is actually going to be part of a promotional kiosk), which lets whoever wants, to record a video (at the place, using the iPad), in order to get a chance to win a prize.
But I just realized that the Youtube API seems to have changed and now it requires user authentication in order to upload the video - which can't be done in my case.
Has anyone faced this problem before? Has anyone found an alternative to uploading the video from the iOS app directly to a specific Youtube account (which I've got full control of) without requiring user's authentication?
Help is highly appreciated!
For privacy issues, users have to upload videos into their accounts first. There is one way to get around it.
You can use YouTube Direct Lite.
So user's would still upload their videos with their own credentials, but then you have the option to moderate and approve those videos to have them in your playlist.
Otherwise if you try to login with only one account and upload all videos there, you will hit limits really soon.
I am a bit confused about the YouTube API's term & conditions. If I create an app for users to download only their own videos. Is that against the terms and conditions?
I know downloading other people content is definitely prohibited, but is it the same for your own videos? Since user can go to their video manager and download their own videosm this would be only a short-cut?
Anyone knows can/cannot do this? I was thinking of using this library http://ytdownloadextension.codeplex.com/
Any guidance would be appreciated,
Covo
Seems like YouTube already allows you to do that, so I'd say it's legal:
Download your videos
You can’t download other people’s YouTube videos, but ...
You can download MP4 files of videos that you’ve uploaded to YouTube in either 720p or 360p, depending on the video size.
See Download videos that you've uploaded.
I don't think so the Terms of Service of Youtube or the Terms of Service of the API allows you to do so:
Excerpt of Youtube ToS (5. K):
you agree not to access Content or any reason other than your personal, non-commercial use solely as intended through and permitted by the normal functionality of the Service, and solely for Streaming. "Streaming" means a contemporaneous digital transmission of the material by YouTube via the Internet to a user operated Internet enabled device in such a manner that the data is intended for real-time viewing and not intended to be downloaded (either permanently or temporarily), copied, stored, or redistributed by the user.
Excerpt of the API ToS (II. 11):
store copies of YouTube audiovisual content;
Both, state in a very clear way that neither the user nor applications built using the API can "store" content, which is a very direct statement that disallows you from giving such an option in your app. Now, whether Youtube does give its users an interface to download their content or not is an argument out of sequence here as Youtube don't need to follow their own ToS, in other words, it's up to them to give their users such an option, but you can't give it to the users of your app.
I suppose you need a special permission from Youtube to give such an option in your app.
Yes. You can definitely download your own videos from YouTube as it is your own content so you have full rights to it as the creator of the videos.
I have a content management server application written in Java. A background process goes through a list of video ids and fetches the details for those video ids using Youtube API.
I would like to check if a particular video entry is available for mobile or not.
I checked syndicate allowed like
String videoEntryUrl = "http://gdata.youtube.com/feeds/api/videos/"+videoID;
VideoEntry videoEntry = service.getEntry(new URL(videoEntryUrl), VideoEntry.class);
if(!videoEntry.getXmlBlob().getBlob().contains("yt:accessControl permission='denied' action='syndicate'")){
System.out.println("The video is syndicatable");
}
Checking for syndicate still not solved the problem and the server still lets in videos that cannot play on Android phone.
What is the right way to filter only the videos that can be played on mobile?
There's no single check to see whether a video is playable "on mobile".
There are a variety of different reasons why a particular video might not be playable on a particular platform, and unfortunately the only way to be absolutely sure whether a particular video will play in a particular player is to attempt to play it.
That being said, this blog post goes into more details about the types of common playback restrictions that crop up: http://apiblog.youtube.com/2011/12/understanding-playback-restrictions.html