Вопрос

Я использую netstream и объект video для воспроизведения видео во flash.В частности, видео в формате mp4.

То, что я пытаюсь сделать, это начать воспроизведение файла с определенной позиции (напр.20секунд).

Однако с netstreamObject.seek(20) не работает, если поток не был загружен за последние 20 секунд.Есть ли способ указать начало загрузки через 20 секунд?Или какой-либо другой способ добиться этого?

Это было полезно?

Решение

Вы можете использовать какой-нибудь сервер кэширования CDN (так что фактический файл будет обслуживаться через этот сервер кэширования), который поддерживает lighttpd, тогда вы можете искать дальше в видео.

Другие советы

не проще ли было бы создать новую версию файла, начиная с 20 секунд?таким образом, пользователю приходится меньше загружать.

попробуйте посмотреть здесь http://www.winmend.com/file-splitter/

Джош

Краткий ответ таков: "Вы не можете выполнять поиск в прогрессивном видео после точки загрузки". Однако Akamai и другие CDN (например, YouTube) имеют технологию, позволяющую осуществлять поиск в прогрессивном видео.Это не решит вашу проблему, потому что это проприетарная серверная технология.В вашей ситуации, используя только клиентский код без контроля над файлами или сервером потоковой передачи, невозможно выполнить поиск до тех пор, пока файл не загрузится.

Да, вы можете сделать это даже на progressive, это известно как http pseudostreaming, посмотрите его, и вы найдете массу примеров для этого.В принципе, вам нужна часть на вашем сервере для получения запроса, в начальном запросе вы добавите через http-заголовок начальную точку, серверная сторона автоматически переместится к этому смещению.

Однако сейчас есть способы получше.На мой взгляд, RTMP отстой, он очень проприетарный для Adobe и работает через нестандартные порты, поэтому у многих пользователей возникают с ним проблемы.Если ты хочешь стать серьезным и сделать это правильно.Найдите модуль apache f4f, Adobe http dynamic streaming и f4fpackager.Настройте сервер apache в соответствии с документами Adobe по модулю apache origin, используйте f4fpackager для разбиения вашего видео / аудио на сегменты.Теперь направьте свой netstream на f4m.Вы не только можете выполнять поиск с сумасшедшей скоростью, вы также переходите по стандартному http, можете использовать обычный старый CDN для кэширования и сервера запросов, но вы также можете поддерживать несколько скоростей передачи данных для адаптивной потоковой передачи.

Лицензировано под: CC-BY-SA с атрибуция
Не связан с StackOverflow
scroll top