Як працює завантаження потокового відео?


Відповіді:


5

Існують як мінімум два способи досягти цього:

  1. Програмне забезпечення перехоплює потоки завантаження та зберігає будь-які відео, які він виявляє (це найбільш вірогідний сценарій)

  2. Програмне забезпечення просто копіює його з кешу веб-браузера (хоча це не неможливо, це набагато менш вірогідно з двох причин: 1., вимагає конкретних знань про всі підтримувані веб-браузери та, можливо, також певні відеопрогравачі; і 2., не всі відео зберігаються на диску в повному обсязі, оскільки це залежить від відеопрогравача)

    Редагувати: Додано третю та четверту можливості ...

  3. Програмне забезпечення запитує відео, створивши той самий запит на завантаження, що і плагін переглядача, а потім зберігає дані в міру їх отримання (це відрізняється від першої можливості, яку я перераховував вище, і може знадобитися деяка зворотна інженерія програвачі фільмів, написані у Flash або якийсь нюхаючий пакет, щоб визначити, як був побудований URI)

  4. Програмне забезпечення замінює обробник за замовчуванням для відеоплеєрів (або він може замінити обробник Flash Player і діяти як тимчасовий обробник на веб-сайтах, які він розпізнає, таких як YouTube.com, Video.Google.com тощо), але для веб-сайтів та Flash Вміст анімації він спеціально не розпізнає, він просто передає роботу попередньому плагіну Flash Player, щоб створити більш "прозорий" ефект для користувача)


Так, я це знаю, але хотів трохи детальнішої інформації про перший спосіб. тобто як саме програмне забезпечення ідентифікує відеопотік, як воно перехоплює потік тощо
Ankit Soni

Я не впевнений, як ви перехопили б такий потік відеозаписів, не використовуючи проксі, що, напевне, не роблять ці завантажувачі. Ще один спосіб зробити це - використовувати інформацію зі сторінки, щоб знайти фактичні відеофайли та завантажити їх безпосередньо. Див. Raw.github.com/rg3/youtube-dl/2011.08.04/youtube-dl для отримання додаткової інформації.
користувач55325

@ user55325: Аналогічним чином це зробило б програмне забезпечення для нюхання пакетів.
Рендольф Річардсон

Хіба це зазвичай не потрібно підключати безпосередньо до мережевих драйверів? Звичайно, це не так, як це робить youtube-dl; здається, це було б якось надмірно.
користувач55325

@ user55325: Ну, я описав " принаймні два способи " - я не особливо впевнений, як "youtube-dl" (я вважаю, це назва однієї з цих програм "захоплення відео") отримує відео, але на принаймні, тепер ви знаєте два можливі методи. Приєднання до мережевих драйверів, напевно, не потрібне, оскільки Windows, ймовірно, надає API більш високого рівня, який є більш загальним і не потребує гачків, характерних для NIC.
Рандольф Річардсон

2

YouTube має унікальну URL-адресу для кожного відео. Деякі сайти пропонують онлайн-скрипт, який перетворює відео YouTube на MP4 або подібне розширення відеофайлу. Цей сценарій зазвичай завантажує відео на свій сервер FFMPEG, а потім перетворює його в MP4 або будь-який інший підтримуваний формат і дозволяє завантажувати це потокове відео.


щодо конверсії, ви говорите про безкоштовне програмне забезпечення ffmpeg, коли ви говорите ffmpeg сервер? Я не знаю, як у нього є варіант сервера
барлоп

Відео, як правило, зберігається у форматі .FLV-файлу, який може відтворюватися у відмінній програмі VLC Player із відкритим кодом: videolan.org
Річардсон

@barlop, сервер використовує скрипт для перетворення. Існує безліч безкоштовних та платних сценаріїв, які роблять такий тип перетворення. Більшість із цих сценаріїв почалися як альтернативний сценарій клонування для youtube.
Рю

@Ryu Я ніколи не пробував це просто читати трохи зараз, але я думаю, ви маєте на увазі речі, які почалися як клон веб-сайту youtube, / сценарії веб-сайтів для обміну відео, рішення для хостингу та обміну відео, серверний конвертер flv, як це пакет youtube-clone.com Цікаво. Я бачу, ffmpeg включає в себе потокове передачу, так що, можливо, є така річ, як сервер ffmpeg, як ви кажете, так виглядайте, на що ви потрапляєте. Я з цим раніше не стикався.
барлоп

Драйвер WinCAP використовується на серверах Windows і на робочому столі для захоплення потоку. Ви можете google "URL snooper", щоб дізнатися, як потоки можуть бути захоплені цим драйвером на робочому столі Windows. Так само є сервери FFMPEG, які готові обробляти медіа-контент, наприклад файли flv, java та медіа-файли.
Рю

0

Існує інструмент під назвою youtube-dl, який робить це шляхом вилучення всієї необхідної інформації про відеофайл та його місцезнаходження, а потім завантаження його (або через RTMPDump, або безпосередньо) відповідно до специфікації користувача (багато відео YouTube доступні у різних форматах ).

Джерело Python доступне і має працювати в Linux, Windows та Mac OS X (за умови встановлення інтерпретатора Python).

Я думаю, саме так працює більшість завантажувачів.

Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.