Я пробовал модуль nginx-rtmp с https://github.com/arut/nginx-rtmp-module. При реализации примера для ffmpeg, приведенного в ссылке, мой exec ffmpeg не выполняется. Моя конфигурация rtmp внутри файла nginx.conf:
rtmp {
server {
listen 1935;
ping 30s;
notify_method get;
application myapp {
live on;
exec on;
allow publish all;
allow play all;
exec_static ffmpeg -re -i /home/ubuntu/jwplayer/myVideo.mp4 -c copy -f flv rtmp://ec2-xx-xxx-xxx-xx.compute-1.amazonaws.com/myapp/livestream;
}
}
}
Когда я удаляю команду ffmpeg из nginx.conf и выполняю ее вне конфигурационного файла nginx, я могу просматривать потоковое видео. Я не уверен, почему он не работает, когда я храню его в файле nginx.conf. Я транслирую видео на rtmp://ec2-xx-xxx-xxx-xx.compute-1.amazonaws.com/myapp/livestream
используя jwplayer
.
Я также попытался использовать полный путь для ffmpeg
. Включение переменной PATH, такой как env PATH
тоже не сработало.
Я использую Ubuntu 12.04 на AWS-ec2. Версия nginx 1.2.4.