Запись потокового RTMP видео — Мой метод
В последнее время периодически проводятся довольно большое количество различный конференций, съездов, семинаров и прочих мероприятий IT-направленности. Большинство из них проводит прямую web-трансляцию с места событий, а некоторые даже потом выкладывают записи. Например «Платформа» , «HighLoad» , …
Анонсы мероприятий обычно выкладываются на Хабре или IT-Event.ru
С одной стороны, трансляции — это прекрасно: Можно не отходя от компьютера «посетить» интересное событие. С другой стороны — не всё так просто. Во-первых, не всегда есть техническая возможность посмотреть трансляцию (Качество Интернет-каналов всё ещё оставляет желать лучшего). Во-вторых, не всегда есть свободное время на нужный момент. В третьих, некоторые конференции проводятся одновременно в нескольких залах. Тут уже физически невозможно посмотреть всё и сразу. Хорошо, если выкладываются записи мероприятий, но они, как правило, в Сети появляются гораздо позже описываемых событий, да и выкладывают их лишь единицы. В общем, я поставил себе задачу найти способ сохранения видео с конференций для дальнейшего хранения и просмотра.
Следует отметить одну особенность: С рабочего места писать видео я не могу по причине помегабайтной тарификации (Получить безлимитный 100-мегабитный канал в Челябинске за разумные деньги нереально) поэтому скачивать буду на сервере хостинга Amazon.com.
Так же следует отметить вторую особенность: Flash отказывается работать на Instance от Amazon.com. Любой браузер при открытии страницы с флешем мгновенно падает с ошибкой. Причину я так и не выяснил. Возможно, это из-за отсутствия звуковой карты или из-за операционной системы Windows 2008 R2, возможно — особенность облачного хостинга Amazon.com. Этой проблемой ещё предстоит заняться.
Подавляющее большинство программ для сохранения трансляций по RTMP и другим протоколам вещания самостоятельно перехватывают поток и приступают к записи, не информируя пользователя о технических подробностях этого момента. Мне же по озвученным выше причинам требуется прямая ссылка на вещание. Как правило, при публикации трансляции ссылки на поток не размещаются. Посетителю сразу предоставляется страница с Flash или HTML5 плеером, который и занимается демонстрацией видео.
т.е. первым этапом предстоит перехватить RTMP-поток и получить ссылку.
Программ-перехватчиков найдено было 2 штуки: URL Snooper и LoopBack из комплекта WM Recorder.
URL Snooper не очень хорошо справляется с поставленной задачей, отлавливая в основном .swf банеры, а LoopBack оказалась, что называется, «В яблочко».
Ссылку на RTMP-стриминг можно получить, запустив LoopBack в режиме «LoopBack», а затем правой кнопкой мыши по перехваченному потоку — «Save stream propertis» — «Stream details».
На примере Seopult.tv:
Отдельная задача — правильно сформировать полный URL на поток. Для каждого сервиса или программы может быть своя специфика. Из приведенного выше скриншота методом проб и ошибок получена работающая ссылка:
rtmp://81.95.46.34/online/mp4:tv2
Теперь осталось скормить эту ссылку программе, которая будет сохранять поток в файл на жестком диске.
Мне удалось «приручить» две программы:
Консольная RTMPDump
На потоке прямой трансляции RTMPDump работает довольно сносно. На опубликованных роликах, вероятно, требуется тонкая настройка параметров, т.к. на тестовом фильме запись упорно обрывалась на 55%.
К RTMPDump есть GUI-оболочка Raljeta, но мне не удалось заставить её работать.
Менеджер закачек Net Transport
С прямой трансляцией справляется отлично. Тестовую запись удалось сохранить только установив закачку в 1 поток, иначе каждый поток скачивал только пропорциональную часть записи с её начала. Например, первые 20% при 5 потоках. Сказывается недоработка программы.
В целом, поставленную задачу можно считать решенной. Осталось уточнить несколько моментов с последующей обработкой записанного видео, попробовать запустить Flash на Amazon Instance и протестировать сохранение не-RTMP потоков. Полученные записи буду публиковать на сайте с IT видео.
При работе использовались статьи:
- Как скачать потоковое видео
- Скачивание с rutube.ru по rtmp-ссылкам
Если у кого есть что дополнить — прошу в комментарии.


(1 голосов, средний: 4,00 из 5)



Добавить комментарий