Позвольте мне быть немного многословным, чтобы прояснить детали.
1) Что такое "потоковая передача".Обычно в мире потокового видео происходит доставка кадров в режиме реального времени.Если у вас есть 30-минутное видео, оно будет доставлено пользователю через 30 минут.
Существуют специальные протоколы, предназначенные исключительно для потоковой передачи: RTSP (возможно, древняя из ныне живущих), RTMP, MJPEG, семейство http-основанные протоколы (apple, abobe, microsoft) и некоторые другие протоколы закрытых поставщиков.
2) что такое "http-streaming" или "pseudo-streaming".Если вы просто поместите свой файл на HTTP-сервер, пользователь может скачать его и посмотреть.Если он загружает полное видео, он может даже искать в нем.Но что произойдет, если пользователь захочет перейти к середине фильма, не загружая первую часть?Он должен как-то сказать серверу: открыть файл-контейнер, поискать этот момент и упаковать файл обратно.Поэтому HTTP-сервер должен знать о структуре файлового контейнера, чтобы предоставить клиенту функциональность поиска.
nginx и apache могут сделать это для контейнеров flv и mp4, что нормально для 100% видео, которое можно воспроизводить через Flash Player.
3) что в настоящее время запутано в http-трансляции.Apple, Adobe и Microsoft разработали и реализовали потоковую передачу поверх HTTP.Это означает, что клиент загружает 10-секундный сегмент, сохраняя при этом правильную частоту кадров.30-минутный фильм все еще загружается через 30 минут, но между загрузками сегментов есть большие задержки.Можно искать в таком «формате», переключать битрейты и т. Д.
4) Потоковые серверы RTMP, такие как Red5 или erlyvideo, могут передавать видео H.264, H.263, VP6 и Screen.MPEG-4 (Xvid / DivX) или MPEG-2 не поддерживаются.