Разница между потоковым видео и передачей файлов - PullRequest
2 голосов
/ 25 мая 2011

Настройка и объяснение :

Я работаю над проектом для школы и столкнулся с недоумением. Я пытаюсь передать сигнал USB без проводов 3-4 фута через всю комнату. Я приобрел три разных беспроводных USB-устройства, которые утверждают, что способны выполнить именно то, что я ищу. Два из них используют протокол WUSB, а третий использует уменьшенный протокол 802.11g. Следующие три устройства были:

IOGear Wireless Hub

Беспроводной концентратор Belkin

Gefen Wireless Hub

При выполнении тестов только устройство с возможностями 802.11g (Gefen) вообще транслировало любое видео, и оно имело значительную потерю частоты кадров. Итак, я разработал тест, в котором я мог бы собрать некоторые достоверные данные. То, что я нашел, было довольно интересно.

Вместо того, чтобы ехать до магазина, чтобы купить веб-камеру, поскольку большинство вещей, которыми я владею, интегрированы, я решил вместо этого превратить свой Droid Incredible в веб-камеру с помощью приложения DroidCam. Я настроил переадресацию TCP-порта и настроил клиента в Windows. Затем я использовал Advanced USB Port Monitor для измерения базовой полосы пропускания, когда он был подключен напрямую к компьютеру с помощью провода. Это в среднем около 10,05 Мбит / с. Затем я поместил файл 200 МБ на свой Droid, скопировал этот файл и провел измерение. Это в среднем около 37,76 Мбит / с. Затем я переключился на устройство Gefen и провел тот же тест. Тест DroidCam выполнялся со средней скоростью около 1,05 Мбит / с, а средняя скорость передачи файлов - 13,36 Мбит / с. Хотя я ожидал снижения скорости, присущего беспроводной сети, я не ожидал такого большого снижения.

Как упомянуто выше, я не мог заставить концентраторы Belkin или IOGear передавать любое видео (также проверено с другим источником видео, чтобы убедиться, что это был не мой Droid), но их скорость передачи файлов была на самом деле лучше, чем Гефен. Концентратор IOGear работал со средней скоростью 19,56 Мбит / с, а Belkin со скоростью 17,28 Мбит / с.

Вопрос : Это где тег алгоритмов вступает в игру. Какие алгоритмы используются для копирования файлов против потокового видео, и есть ли способ использовать алгоритм «копирование файлов» вместо потокового видео? Исходя из результатов копирования файлов, беспроводные устройства имеют более чем достаточную пропускную способность для обработки видеопотока. Мне кажется, что я просто не пользуюсь, так сказать, правильным источником ресурсов.

Буду признателен за любую помощь!

1 Ответ

1 голос
/ 31 мая 2011

Копирование файла и потоковое видео очень разные.

Обычно для потокового видео используется протокол UDP (протокол пользовательских дейтаграмм), который является протоколом без соединения. Это означает, что нет «состояния» соединения, а сообщения «отправлены и забыты». Если по какой-либо причине пакет был получен неправильно, вам не повезло, и хосты перешли к следующему пакету.

С другой стороны, общий доступ к файлам обычно осуществляется по протоколу TCP, который является протоколом с установлением соединения. Это означает, что между двумя хостами существует постоянная связь относительно текущего состояния передачи. Когда хост отправляет сообщение по TCP, он не просто отправляет сообщение, но также отправляет HASH сообщения, чтобы другой хост мог применить тот же алгоритм хеширования к полезной нагрузке пакета и подтвердить, что полезная нагрузка из пакета является действительно полезная нагрузка, которая должна была быть отправлена ​​(и не была скомпрометирована по какой-либо причине). Если хэши не совпадают, то сообщение отправляется снова. Как правило, подобный алгоритм был бы гораздо менее эффективен для потокового видео, так как происходит гораздо больше вычислений и передач.

Что касается этих реализаций, я бы предложил прочитать о реализациях UDP и TCP.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...