i've set up the rtmp.conf for my nginx server as follows
rtmp {
server {
listen 1935;
application vod {
live on;
play /media/70TB_ingest/s3/files;
allow play all;
allow publish all;
notify_method get;
}
}
}
but when i try to play a file in that folder via ffmpeg to test it,
$ ffmpeg -loglevel debug -i rtmp://38.98.50.32:1935/vod/ft_1000041_5320882a688ba.mov [13:19:43]
ffmpeg version 2.1.4 Copyright (c) 2000-2014 the FFmpeg developers
built on Mar 2 2014 13:38:24 with Apple LLVM version 5.0 (clang-500.2.79) (based on LLVM 3.3svn)
configuration: --prefix=/usr/local/Cellar/ffmpeg/2.1.4 --enable-shared --enable-pthreads --enable-gpl --enable-version3 --enable-nonfree --enable-hardcoded-tables --enable-avresample --enable-vda --cc=clang --host-cflags= --host-ldflags= --enable-libx264 --enable-libfaac --enable-libmp3lame --enable-libxvid
libavutil 52. 48.101 / 52. 48.101
libavcodec 55. 39.101 / 55. 39.101
libavformat 55. 19.104 / 55. 19.104
libavdevice 55. 5.100 / 55. 5.100
libavfilter 3. 90.100 / 3. 90.100
libavresample 1. 1. 0 / 1. 1. 0
libswscale 2. 5.101 / 2. 5.101
libswresample 0. 17.104 / 0. 17.104
libpostproc 52. 3.100 / 52. 3.100
Splitting the commandline.
Reading option '-loglevel' ... matched as option 'loglevel' (set logging level) with argument 'debug'.
Reading option '-i' ... matched as input file with argument 'rtmp://38.98.50.32:1935/vod/ft_1000041_5320882a688ba.mov'.
Finished splitting the commandline.
Parsing a group of options: global .
Applying option loglevel (set logging level) with argument debug.
Successfully parsed a group of options.
Parsing a group of options: input file rtmp://38.98.50.32:1935/vod/ft_1000041_5320882a688ba.mov.
Successfully parsed a group of options.
Opening an input file: rtmp://38.98.50.32:1935/vod/ft_1000041_5320882a688ba.mov.
[rtmp @ 0x7fa92140a3a0] Handshaking...
[rtmp @ 0x7fa92140a3a0] Type answer 3
[rtmp @ 0x7fa92140a3a0] Server version 13.14.10.13
[rtmp @ 0x7fa92140a3a0] Proto = rtmp, path = /vod/ft_1000041_5320882a688ba.mov, app = vod, fname = ft_1000041_5320882a688ba.mov
[rtmp @ 0x7fa92140a3a0] Server bandwidth = 5000000
[rtmp @ 0x7fa92140a3a0] Client bandwidth = 5000000
[rtmp @ 0x7fa92140a3a0] New incoming chunk size = 4096
[rtmp @ 0x7fa92140a3a0] Creating stream...
[rtmp @ 0x7fa92140a3a0] Sending play command for 'ft_1000041_5320882a688ba.mov'
[rtmp @ 0x7fa92140a3a0] Server error: Video on demand stream not found
rtmp://38.98.50.32:1935/vod/ft_1000041_5320882a688ba.mov: Operation not permitted
but i know the file exists because i can play it from the http url for the same file.
the port is open because from the nginx access log i can see the PLAY request for the file
but i still cant seem to play the file in vlc / ffmpeg cli
I have found that it maybe cause by nfs.
I mount a nfs path to my vod dir, then I can't play the rtmp stream.
Since I umount it, and upload a mp4 video, then it work.
Check the permission
i've set up the rtmp.conf for my nginx server as follows
but when i try to play a file in that folder via ffmpeg to test it,
but i know the file exists because i can play it from the http url for the same file. the port is open because from the nginx access log i can see the PLAY request for the file but i still cant seem to play the file in vlc / ffmpeg cli