Скачиваем видео с YouTube / Habr
Эта история берет начало в далеком 2006-м году… Я тогда был в начале своей программистской карьеры и работал в однойВсе конечно же оказалось не так просто. Наверняка ты знаешь, что ютуб никогда не давал прямых ссылок на свои файлы. Те ссылки, что можно выпарсить из страницы с плейером не дадут нужного результата. В лучшем случае ты упрешься в то, что получив наконец желаемую «прямую» ссылку на файл будешь получать 403-ю ошибку (нет прав доступа к файлу). Тогда, в 2006-м, я на этом и остановился после нескольких дней поиска и гугления. Кстати, тогда ютуб еще не был приобретением великого и ужасно доброго Гугла (спасибо anmipo за исправление). Я решил, что такой возможности как скачать видео с ютуба просто не существует. Как оказалось, я ошибся…
Я не буду приводить здесь исходный код приложения поскольку его читать будет слишком скучно. Если кому-то захочется узнать подробности реализации, вы можете писать мне напрямую.
Итак, перейдем к делу и рассмотрим процесс скачивания видео с ютуба пошагово.
Исходные данные
Ссылка на видео, например www.youtube.com/watch?v=JCYIwiT0X98&feature=g-all-esi&context=G265c44fFAAAAAAAAHAA
Первый шаг
Нужно получить метаинформацию о видео.
Видео ID берем из исходных данных, это параметр v=JCYIwiT0X98
В результате получаем текстовый стрим примерно такого вида:
dl.dropbox.com/u/26865519/get_video_info_example
Второй шаг
Получить ссылки на скачивание видео.
Сылки на видео содержатся в параметре url_encoded_fmt_stream_map. Формат этого параметра следующий:
url_encoded_fmt_stream_map=Url encoded(url=url 1,url=url 2,…,url=url n)
То есть в урле закодированы другие урлы, для этого и понадобилось из заенкодить. Если мы раскодируем наши ссылки то получим следующее:
url=http%3A%2F%2Fo-o.preferred.uarnet-kbp1.v11.lscache8.c.youtube.com%2Fvideoplayback%3Fsparams%3Did%252Cexpire%252Cip%252Cipbits%252Citag%252Csource%252Cratebypass%252Ccp%26fexp%3D916601%252C900203%26itag%3D45%26ip%3D91.0.0.0%26signature%3D84EA8CE08129B8AAF41D1F7898420BED2E2C3438.57CDB11E07D00A54C99F905DE0DA77AEBC0E9038%26sver%3D3%26ratebypass%3Dyes%26source%3Dyoutube%26expire%3D1328198927%26key%3Dyt1%26ipbits%3D8%26cp%3DU0hRTVFUVl9HUUNOMV9JTlpKOldSRTY2Tk9hSmU5%26id%3D242608c224f45fdf&quality=hd720&fallback_host=tc.v11.cache8.c.youtube.com&type=video%2Fwebm%3B+codecs%3D%22vp8.0%2C+vorbis%22&itag=45,url=http%3A%2F%2Fo-o.preferred.uarnet-kbp1.v15.lscache1.c.youtube.com%2Fvideoplayback%3Fsparams%3Did%252Cexpire%252Cip%252Cipbits%252Citag%252Csource%252Cratebypass%252Ccp%26fexp%3D916601%252C900203%26itag%3D22%26ip%3D91.0.0.0%26signature%3D1AC166895886593943D1346017A82762AFF47E9C.59C7B7E9030474710D768847DDD0433DE42D0A19%26sver%3D3%26ratebypass%3Dyes%26source%3Dyoutube%26expire%3D1328198927%26key%3Dyt1%26ipbits%3D8%26cp%3DU0hRTVFUVl9HUUNOMV9JTlpKOldSRTY2Tk9hSmU5%26id%3D242608c224f45fdf&quality=hd720&fallback_host=tc.v15.cache1.c.youtube.com&type=video%2Fmp4%3B+codecs%3D%22avc1.64001F%2C+mp4a.40.2%22&itag=22,url=http%3A%2F%2Fo-o.preferred.uarnet-kbp1.v21.lscache1.c.youtube.com%2Fvideoplayback%3Fsparams%3Did%252Cexpire%252Cip%252Cipbits%252Citag%252Csource%252Cratebypass%252Ccp%26fexp%3D916601%252C900203%26itag%3D44%26ip%3D91.0.0.0%26signature%3D0E18ABF397609CD176F02A026E6827BF89EDEEC1.AF7A313EFC85510A908760E20F3B88A69F9BC871%26sver%3D3%26ratebypass%3Dyes%26source%3Dyoutube%26expire%3D1328198927%26key%3Dyt1%26ipbits%3D8%26cp%3DU0hRTVFUVl9HUUNOMV9JTlpKOldSRTY2Tk9hSmU5%26id%3D242608c224f45fdf&quality=large&fallback_host=tc.v21.cache1.c.youtube.com&type=video%2Fwebm%3B+codecs%3D%22vp8.0%2C+vorbis%22&itag=44,url=http%3A%2F%2Fo-o.preferred.uarnet-kbp1.v8.lscache6.c.youtube.com%2Fvideoplayback%3Fsparams%3Did%252Cexpire%252Cip%252Cipbits%252Citag%252Csource%252Calgorithm%252Cburst%252Cfactor%252Ccp%26fexp%3D916601%252C900203%26algorithm%3Dthrottle-factor%26itag%3D35%26ip%3D91.0.0.0%26burst%3D40%26sver%3D3%26signature%3D3946508038978141EA2FE1E8A691C237497B20A8.5C4F1CAA8BFF22B061A304281162831BBDF8F3C1%26source%3Dyoutube%26expire%3D1328198927%26key%3Dyt1%26ipbits%3D8%26factor%3D1.25%26cp%3DU0hRTVFUVl9HUUNOMV9JTlpKOldSRTY2Tk9hSmU5%26id%3D242608c224f45fdf&quality=large&fallback_host=tc.v8.cache6.c.youtube.com&type=video%2Fx-flv&itag=35,url=http%3A%2F%2Fo-o.preferred.uarnet-kbp1.v22.lscache3.c.youtube.com%2Fvideoplayback%3Fsparams%3Did%252Cexpire%252Cip%252Cipbits%252Citag%252Csource%252Cratebypass%252Ccp%26fexp%3D916601%252C900203%26itag%3D43%26ip%3D91.0.0.0%26signature%3D25CE0D32BEF98C0B631656DCBCE204F44DB0678F.810337E9249E7AF4B5D06592FC3664AE81A054C7%26sver%3D3%26ratebypass%3Dyes%26source%3Dyoutube%26expire%3D1328198927%26key%3Dyt1%26ipbits%3D8%26cp%3DU0hRTVFUVl9HUUNOMV9JTlpKOldSRTY2Tk9hSmU5%26id%3D242608c224f45fdf&quality=medium&fallback_host=tc.v22.cache3.c.youtube.com&type=video%2Fwebm%3B+codecs%3D%22vp8.0%2C+vorbis%22&itag=43,url=http%3A%2F%2Fo-o.preferred.uarnet-kbp1.v7.lscache6.c.youtube.com%2Fvideoplayback%3Fsparams%3Did%252Cexpire%252Cip%252Cipbits%252Citag%252Csource%252Calgorithm%252Cburst%252Cfactor%252Ccp%26fexp%3D916601%252C900203%26algorithm%3Dthrottle-factor%26itag%3D34%26ip%3D91.0.0.0%26burst%3D40%26sver%3D3%26signature%3D639B6C6CE89DA078D0F236F2E6EF25D6699E92B3.8E643652167A642565D7CF46356702AB4240B039%26source%3Dyoutube%26expire%3D1328198927%26key%3Dyt1%26ipbits%3D8%26factor%3D1.25%26cp%3DU0hRTVFUVl9HUUNOMV9JTlpKOldSRTY2Tk9hSmU5%26id%3D242608c224f45fdf&quality=medium&fallback_host=tc.v7.cache6.c.youtube.com&type=video%2Fx-flv&itag=34,url=http%3A%2F%2Fo-o.preferred.uarnet-kbp1.v3.lscache3.c.youtube.com%2Fvideoplayback%3Fsparams%3Did%252Cexpire%252Cip%252Cipbits%252Citag%252Csource%252Cratebypass%252Ccp%26fexp%3D916601%252C900203%26itag%3D18%26ip%3D91.0.0.0%26signature%3D806E129CEA4EE91ABABDB54ABE1A57A133C97BCA.4807466495C2C05D71A918357D275F04CDDE1AFF%26sver%3D3%26ratebypass%3Dyes%26source%3Dyoutube%26expire%3D1328198927%26key%3Dyt1%26ipbits%3D8%26cp%3DU0hRTVFUVl9HUUNOMV9JTlpKOldSRTY2Tk9hSmU5%26id%3D242608c224f45fdf&quality=medium&fallback_host=tc.v3.cache3.c.youtube.com&type=video%2Fmp4%3B+codecs%3D%22avc1.42001E%2C+mp4a.40.2%22&itag=18,url=http%3A%2F%2Fo-o.preferred.uarnet-kbp1.v23.lscache1.c.youtube.com%2Fvideoplayback%3Fsparams%3Did%252Cexpire%252Cip%252Cipbits%252Citag%252Csource%252Calgorithm%252Cburst%252Cfactor%252Ccp%26fexp%3D916601%252C900203%26algorithm%3Dthrottle-factor%26itag%3D5%26ip%3D91.0.0.0%26burst%3D40%26sver%3D3%26signature%3D8CED45631A15BD0E90EDB77AEFEEE2C421F122F1.9C1BC70FB6A2ED45D3491A5A082A96F029A228CB%26source%3Dyoutube%26expire%3D1328198927%26key%3Dyt1%26ipbits%3D8%26factor%3D1.25%26cp%3DU0hRTVFUVl9HUUNOMV9JTlpKOldSRTY2Tk9hSmU5%26id%3D242608c224f45fdf&quality=small&fallback_host=tc.v23.cache1.c.youtube.com&type=video%2Fx-flv&itag=5&
Это все урлы нашего видео в различных форматах. За формат отвечает параметр itag. Вот возможные значения этого параметра:
itag=5 - FLV 320 x 240 itag=34 - FLV 640 x 360 itag=35 - FLV 854 x 480 itag=18 - MP4 640 x 360 itag=22 - MP4 1280 x 720 itag=37 - MP4 1920 x 1080 itag=38 - MP4 4096 x 1714 itag=43 - WEBM 640 x 360 itag=44 - WEBM 854 x 480 itag=45 - WEBM 1280 x 720
Казалось бы мы уже близки к скачиванию, достаточно просто взять нужный урл и все. Но нет… Нужно еще немного попрыгать с бубном поработать.
Для примера возьмем первый урл и декодируем его:
http://o-o.preferred.uarnet-kbp1.v15.lscache1.c.youtube.com/videoplayback?sparams=id%2Cexpire%2Cip%2Cipbits%2Citag%2Csource%2Cratebypass %2Ccp&fexp=916601%2C900203&itag=22&ip=91.0.0.0&signature=1AC166895886593943D1346017A82762AFF47E9C.59C7B7E9030474710D768847DDD0433DE42D0A19&sver=3&ratebypass=yes&source=youtube&expire=1328198927&key=yt1&ipbits=8&cp=U0hRTVFUVl9HUUNOMV9JTlpKOldSRTY2Tk9hSmU5&id=242608c224f45fdf&quality=hd720&fallback_host=tc.v15.cache1.c.youtube.com&type=video/mp4; codecs="avc1.64001F, mp4a.40.2"&itag=22
Если сейчас вставить его в браузерную строку, то получим нашу любимую 403-ю ошибку. Для того чтобы получить валидную ссылку на поток, нужно отбросить все параметры после id и добавить в конец «&title=Наш тайтл», то есть в нашем случае получаем:
http://o-o.preferred.uarnet-kbp1.v15.lscache1.c.youtube.com/videoplayback?sparams=id%2Cexpire%2Cip%2Cipbits%2Citag%2Csource%2Cratebypass %2Ccp&fexp=916601%2C900203&itag=22&ip=91.0.0.0&signature=1AC166895886593943D1346017A82762AFF47E9C.59C7B7E9030474710D768847DDD0433DE42D0A19&sver=3&ratebypass=yes&source=youtube&expire=1328198927&key=yt1&ipbits=8&cp=U0hRTVFUVl9HUUNOMV9JTlpKOldSRTY2Tk9hSmU5&id=242608c224f45fdf&title=%D0%9F%D1%8B%D0%BB%D1%8C+%D0%BD%D0%B0+%D0%91%D0%B8%D0%B1%D0%BB%D0%B8%D0%B8++%D1%80%D0%B6%D0%B0%D0%B2%D1%87%D0%B8%D0%BD%D0%B0+%D0%BD%D0%B0+%D1%81%D0%B5%D1%80%D0%B4%D1%86%D0%B5
Вот она — желанная ссылка на поток! 🙂 Кстати, тайтл для последнего параметра взят из шага 1, самый последний параметр из метаинформации.
Ну и напоследок даю ссылку на приложение для Андроида которое демонстрирует показанную здесь теорию на практике:
market.android.com/details?id=com.youtubedownloader
Источники
UPD: Поправил место где написано насчет «творения Гугла»
habr.com
Форматы видео для YouTube | Как конвертировать видео для YouTube
Монтаж видео на мобильном устройстве
- Назад
- Clips
- Для Android
- Для iOS
Всё, что нужно для обработки видео
- Назад
- Video Suite
- Для Windows
Редактирование видео
- Назад
- Видеоредактор
- Для Windows
- Для Mac
Больше возможностей редактирования
- Назад
- Видеоредактор Плюс
- Для Windows
- Для Mac
Монтаж панорамного видео
- Назад
- 360 Видеоредактор
- Для Windows
2 в 1: редактирование видео и запись экрана
- Назад
- Видеоредактор Бизнес
- Для Windows
- Для Mac
www.movavi.ru
В каком формате лучше заливать видео на Ютуб
Видеохостинг YouTube поддерживает несколько форматов видео. Поэтому уже на стадии монтажа нужно определиться с тем, в каком формате вы будете сохранять и выгружать ролик на сам сайт. Существует несколько версий, каждая из которых аргументирована разными фактами. Мы же разберемся во всех них, чтобы вы смогли подобрать для себя подходящий вариант.
В каком формате сохранять и выгружать видео
Многое зависит от ваших личных предпочтений и возможностей. Например, слабый компьютер не сможет обрабатывать большие объемы информации достаточно быстро, поэтому лучше выбрать формат, файлы которого не занимают много места. Существуют еще некоторые факторы, которых нужно придерживаться при подборе формата видео. Давайте рассмотрим их.
Размер файла
Один из важнейших параметров при сохранении видео. Так как при добавлении ролика на канал, если он большого размера, могут наблюдаться сбои, есть вероятность, что весь процесс придется начинать заново. Часто, чтобы сохранить адекватный объем файла, приходится чем-то жертвовать. В случае с видео – это ухудшение качества. Если исходить из основных форматов, что чаще всего используют, то тут лучше подойдет MP4, так как такие видео не имеют очень большого объема, но при этом их качество остается на высоте. Если вы не имеете возможности загружать большие ролики, то тут вы можете выбрать формат FLV. При относительно нормальном качестве вы будете получать маленький размер файлов, что ускорит загрузку на Ютуб и последующую обработку сервисом.
Качество картинки
Если же судить по самому важному, особенно для зрителей, критерию — качеству, то тут все сводится всего к двум форматам. MP4 и MOV. Первый имеет очень хорошее соотношение размера файла и качества картинки, что является очень важным преимуществом перед другими форматами. Также стоит обратить внимание, что при сжатии файла MP4 качество картинки практически не страдает. MOV – самый популярный формат, в котором можно получить отличное качество картинки, но сам файл может весить достаточно много. Если вы хотите получить как можно лучшее качество, то точно не стоит использовать FLV, он больше подходит для тех, кто хочет получить маленький размер файла.
Дополнительные параметры
При рендеринге и сохранении ролика берите во внимание не только формат, но и другие параметры. Вполне возможно, что ваше видео будет иметь черные полосы по краям. Случается это из-за того, что выбрано соотношение сторон 4:3, что не особо удобно для просмотра.
Большинство современных мониторов имеют соотношение сторон 16:9. Также, загружая видеоконтент в таком соотношении, Ютуб не внесет никаких изменений, которые могли бы испортить итоговый материал.
Что же касается качества, то рекомендуется заливать ролики не менее чем с 720p, то есть, HD. Более подробно о качестве видео вы можете узнать в таблице, которая приведена ниже.
Читайте также: Как рендерить видео в Sony Vegas
Теперь вы ознакомлены с тем, какой формат подходит для Ютуба и для вас. Выбирайте тот, с которым вам удобнее всего работать и который наиболее подойдет для вашего контента.
![качество видео](/800/600/https/lumpics.ru/social/close.png)
![качество видео](/800/600/https/lumpics.ru/social/close.png)
Помогла ли вам эта статья?
ДА НЕТlumpics.ru