2015-06-09 227 views
1

我想使用ffmpeg和ffserver在我的目录中创建一个文件。但在ffmpeg和ffserver中都会发生错误。以下是我的ffserver配置文件。错误被ffmpeg和ffserver抛出,没有得到流

HTTPPort 8092 
HTTPBindAddress 0.0.0.0 
MaxHTTPConnections 2000 
MaxClients 1000 
MaxBandwidth 2000 
CustomLog - 
#NoDaemon 
NoDefaults 

<Feed feed1.ffm> 
    File /tmp/feed1.ffm 
    FileMaxSize 20M 
    ACL allow 127.0.0.1 
</Feed> 

<Stream live.webm>  
    Feed feed1.ffm    
    Format webm 

    AudioCodec vorbis 
    AudioBitRate 64    

    VideoCodec libvpx 
    VideoSize 720x576   
    VideoFrameRate 25   
    AVOptionVideo flags +global_header 
    AVOptionVideo cpu-used 0 
    AVOptionVideo qmin 10 
    AVOptionVideo qmax 42 
    AVOptionVideo quality good 
    AVOptionAudio flags +global_header 
    PreRoll 15 
    StartSendOnKey 
    VideoBitRate 400 
    AudioSampleRate 44100   
</Stream> 

我能够没有问题正常启动ffserver的,但是当我尝试使用的ffmpeg服务ffserver的一个文件,这种情况

ffmpeg -i sam.webm http://127.0.0.1:8092/feed1.ffm -vcodec copy 
    ffmpeg version N-72738-g7630cce Copyright (c) 2000-2015 the FFmpeg developers 
    built with gcc 4.8 (Ubuntu 4.8.2-19ubuntu1) 
    configuration: --enable-libvpx --enable-libvorbis --enable-libx264 --enable-gpl --enable-nonfree 
    libavutil  54. 27.100/54. 27.100 
    libavcodec  56. 41.100/56. 41.100 
    libavformat 56. 36.100/56. 36.100 
    libavdevice 56. 4.100/56. 4.100 
    libavfilter  5. 16.101/5. 16.101 
    libswscale  3. 1.101/3. 1.101 
    libswresample 1. 2.100/1. 2.100 
    libpostproc 53. 3.100/53. 3.100 
    Trailing options were found on the commandline. 
    Input #0, matroska,webm, from 'sam.webm': 
    Metadata: 
    title   : Sintel Trailer 
    encoder   : Lavf56.25.101 
    Duration: 00:00:52.21, start: 0.000000, bitrate: 305 kb/s 
    Stream #0:0: Video: vp8, yuv420p, 854x480, SAR 1:1 DAR 427:240, 24 fps, 24 tbr, 1k tbn, 1k tbc (default) 
Stream #0:1: Audio: vorbis, 48000 Hz, stereo, fltp (default) 
[libvpx @ 0x367e180] v1.3.0 
Output #0, ffm, to 'http://127.0.0.1:8092/feed1.ffm': 
Metadata: 
    title   : Sintel Trailer 
    creation_time : now 
    encoder   : Lavf56.36.100 
Stream #0:0: Audio: vorbis (libvorbis), 44100 Hz, stereo, fltp, 64 kb/s (default) 
Metadata: 
    encoder   : Lavc56.41.100 libvorbis 
Stream #0:1: Video: vp8 (libvpx), yuv420p, 720x576 [SAR 427:300 DAR 427:240], q=10-42, 400 kb/s, 24 fps, 1000k tbn, 25 tbc (default) 
Metadata: 
    encoder   : Lavc56.41.100 libvpx 
Stream mapping: 
    Stream #0:1 -> #0:0 (vorbis (native) -> vorbis (libvorbis)) 
    Stream #0:0 -> #0:1 (vp8 (native) -> vp8 (libvpx)) 
Press [q] to stop, [?] for help 
av_interleaved_write_frame(): Connection reset by peer 
    Last message repeated 2 times 
    frame= 14 fps=0.0 q=0.0 Lsize=  16kB time=00:00:00.56 bitrate= 234.1kbits/s dup=1 drop=0  
    video:1kB audio:2kB subtitle:0kB other streams:0kB global headers:4kB muxing overhead: 327.780670% 
    Conversion failed! 

这是消息我在ffserver的获得时,这错误发生在ffmpeg中。

ffserver 
ffserver version N-72738-g7630cce Copyright (c) 2000-2015 the FFmpeg developers 
built with gcc 4.8 (Ubuntu 4.8.2-19ubuntu1) 
configuration: --enable-libvpx --enable-libvorbis --enable-libx264 --enable-gpl --enable-nonfree 
libavutil  54. 27.100/54. 27.100 
libavcodec  56. 41.100/56. 41.100 
libavformat 56. 36.100/56. 36.100 
libavdevice 56. 4.100/56. 4.100 
libavfilter  5. 16.101/5. 16.101 
libswscale  3. 1.101/3. 1.101 
libswresample 1. 2.100/1. 2.100 
libpostproc 53. 3.100/53. 3.100 
Mon Jun 8 18:38:28 2015 FFserver started. 
Mon Jun 8 18:38:40 2015 127.0.0.1 - - [GET] "/feed1.ffm HTTP/1.1" 200 4175 
Mon Jun 8 18:38:40 2015 [NULL @ 0x29878a0]Missing key or no key/value separator found after key 'pkt_timebase' 
Mon Jun 8 18:38:40 2015 Feed '/tmp/feed1.ffm' stream number does not match registered feed 
Mon Jun 8 18:38:40 2015 127.0.0.1 - - [POST] "/feed1.ffm HTTP/1.1" 200 4096 

有人能帮我吗?

回答

1

如果您的目录中有文件,您可以尝试跳过供稿部分。这样,当服务器启动时,ffserver将使文件准备好流式传输,并且您不必使用ffmpeg命令。

相反的:

<Stream live.webm>  
Feed feed1.ffm 
... 

用途:

<Stream live.webm> 
Format webm   #if needed 
File "sam.webm" 
... 

你可能想通过饲料,如果你想先处理该文件。

相关问题