http://www.youtube.com/get_video_info?video_id=<id video>
Полученный текст парсим
https://medialize.github.io/URI.js/ function parseSearch(str) {
return URI(str).search(true);
}
var info = parseSearch('?' + <полученный текст>);
//info.title - тут заголовок
var links = info.url_encoded_fmt_stream_map.split(',').map(function (raw) {
var u = parseSearch('?' + raw);
return u.url;
}) //тут массив ссылок
Стоит учитывать что так получаем только ссылки на видео со вшитой звуковой дорожкой. И выше 720р качество не получить.
Если нужно качество выше, то придется звук качать отдельно от видео.