Стриминг Flash Video при помощи Nginx
14 Oct2006

Я ждал этой возможности в Nginx на протяжении последних 3 месяцев! И вот, наконец-то, она реализована! Теперь, nginx прекрасно работает на наших стриминг серверах, а возможность стриминга flv-файлов больше не является уникальной фичей Lighttpd. 🙂 Этот пост расскажет вам о том, как использовать новый модуль Nginx под названием http_flv_module, впервые реализованный в версии 0.4.7 (но там была досадная ошибка в реализации стриминга, которая исправляется моим патчем) и доведенный до идеала в 0.4.8.

Во-первых, для использования этого модуля, Вы должны перекомпилировать nginx с опцией –with-http_flv_module:

# ./configure --with-http_flv_module ...SOME-OTHER-OPTS...

Следующим действием является активация стриминга для Ваших flv-файлов в nginx.conf:

1
2
3
4
5
6
7
8
9
10
11
12
...
http {
    ...
    server {
        ...
        location ~ \.flv$ {
            flv;
        }
        ...
    }
    ...
}

Эта опция требует от Nginx добавлять специальный “заголовок” в поток данных, запрошенный из определенного flv-файла передачей параметра “?start=XXX”, обозначающего “отдай мне файл flv с байта XXX до конца файла” (такова идея стриминга видео во флеше).

Последнее действие, которое требуется, если вы его еще не сделали, – это конвертация Вашего видео в FLV формат и добавление meta-информации в созданные файлы. Детальнее об этом процессе вы можете прочесть в одном из моих предыдущих постов.

Как всегда, хочу попросить Вас, если Вам понравится этот пост, поддержите его на Digg.com