retrieving video information and link to mp4 - youtube-api

Is there any documentation about the http://www.youtube.com/get_video_info?video_id=XXX ?
Since a week or so it seems I do not get correct information anymore. I am using the url_encoded_fmt_stream_map property in the response stream to get the url for the video link of the mp4 type of my video. But this property is now returning an empty value.
Has something been changed in the get_video_info functionality?

The get_video_info endpoint is not, and has never been, a supported public API.
If you'd like to play back YouTube content, you need to use one of the official YouTube Players:
https://developers.google.com/youtube/getting_started#player_apis

Related

Permanent Stream Now link for embedding 2019/2020

I've found multiple links to embed YouTube livestreams across Stack:
https://www.youtube.com/embed/live_stream?channel={CHANNEL_ID}
https://www.youtube.com/channel/{ChannelID}/live
But no one works when I use my correct channel id. It looks like YouTube doesn't support permanent links for unlisted live streams anymore. Can anyone confirm this, or does it still exist?
Or can I use the YouTube API to know what the next Stream Now video id is going to be. That could also solve my problems. However, up until now I haven't found a way to retrieve this data.
P.s. Our stream must be UNLISTED. We don't want to stream publicly.

how to ensure that a youtube API response only contains videos that are suitable for playback on a mobile device

I am trying to add some youtube videos from my Admin page to database. So that mobile application can make use of them to play.
I want to filter the result from YouTube API link so that i can make sure that whatever videos i add to the database will be able to play on mobile devices like IOS and Android.
I tried
&format=5 and &format=1
but no use.
I also went through Youtube API v2.0 Docs but unable to find the correct way to assign fields parameter to my query string
can anyone guide me to fix this?
What you need is videoEmbeddable and videoSyndicated.
Here's my answer to original question: retrive only mobile-supported video from YouTube API

Can I get youtube video as mp3 sound in iOS ?

as mentioned in the question
Can I get the youtube as sound file with any extension
I mean specifically with using JSON or any other way ?
One way to get songs from Youtube is to use their API, and search for your song. It will return a youtubeID url of video/song.
You can then stream this into an iOS app.
A handy framework to extract video url from youtube ID url, is LBYoutubePlayer which can be found here https://github.com/larcus94/LBYouTubeView
You would then need to extract the audio from the video.
Technically, that could all work. Not sure if it goes beyond Youtube's terms and services though.

Get info about a YouTube video

I'm looking to get the title and duration of a YouTube video and display it within my app. I want to do this dynamically since there will be several videos and they will change. I've looked for a URL that provides this information, but I've had no luck. Does anyone know a way to do this?
You need to use the Youtube API, details on how to do this for a single video are here:
https://developers.google.com/youtube/2.0/developers_guide_protocol_video_entries
Here's the URL to get the API data for Friday:
https://gdata.youtube.com/feeds/api/videos/kfVsfOSbJY0?v=2

YouTube API: How to specify an API callback after an uploaded video has finished encoding?

I am uploading videos using the YouTube/Gdata API (in python).
After a video has been uploaded via the API, I receive the a response with data about the video (Youtube link, id, etc). However, the video is not publicly available while it is being encoded by YouTube (typically a few minutes).
Can I specify a callback url that YouTube can post to after it finishes processing the video?
No.
You need to poll using the video id to and check the 'state' of the video to detect when 'processing' is no longer present.
With Youtube's V3 API, you need to do something similar, but slightly different.
GET https://www.googleapis.com/youtube/v3/videos?part=processingDetails&id={VIDEO_ID}&key={YOUR_API_KEY}
Further details here:
https://developers.google.com/youtube/v3/docs/videos/list

Resources