繁体   English   中英

FFMPEG视频流选项

[英]FFMPEG options for video streaming

我正在尝试使用ffmpeg使用ffserver流式传输视频。 您将在ffserver1.conf文件和ffmpeg命令的日志输出下面找到。

错误之一引用了预设,并且每次尝试使用预设时,都会收到错误消息“找不到文件,即使将所有预设文件复制到当前目录中也是如此。

谢谢您的帮助。

YorgZ

FFSERVER CONF

YorgZ-Macbook$cat ffserver1.conf
Port 8090
BindAddress 0.0.0.0
MaxHTTPConnections 2000
MaxClients 1000
MaxBandwidth 4000
CustomLog -


<Feed feed1.ffm>
      File feed1.ffm
      FileMaxSize 1G
      ACL allow 127.0.0.1
      ACL allow localhost
      ACL allow 10.0.0.0 10.0.255.255
</Feed>

<Stream Live.mp4>
    Feed feed1.ffm
    Format mp4
    VideoFrameRate  29.97
    VideoBitRate    500
    VideoSize   640x352
</Stream>

<Stream stat.html>
    Format status
    ACL allow localhost
    ACL allow 10.0.0.0 10.0.255.255
</Stream>
YorgZ-Macbook$

FFMPEG COMMAND AND LOG 

 YorgZ-Macbook$./ffmpeg -loglevel debug -i TestStream.mp4  -codec:v libx264 -b:v 500k  -vf "scale=640:352" -r 29.97 -codec:a aac -b:a 128k http://127.0.0.1:8090/feed1.ffm

    ffmpeg version 2.1.3-tessus Copyright (c) 2000-2013 the FFmpeg developers
      built on Jan 16 2014 13:50:59 with llvm-gcc 4.2.1 (LLVM build 2336.1.00)
      configuration: --prefix=/Users/tessus/data/ext/ffmpeg/sw --as=yasm --extra-version=tessus --disable-shared --enable-static --disable-ffplay --enable-gpl --enable-pthreads --enable-postproc --enable-libmp3lame --enable-libtheora --enable-libvorbis --enable-libx264 --enable-libxvid --enable-libspeex --enable-bzlib --enable-zlib --enable-libopencore-amrnb --enable-libopencore-amrwb --enable-libxavs --enable-version3 --enable-libvo-aacenc --enable-libvo-amrwbenc --enable-libvpx --enable-libgsm --enable-libopus --enable-fontconfig --enable-libfreetype --enable-libass --enable-libbluray --enable-filters --enable-runtime-cpudetect
      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
      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 'TestStream.mp4'.
    Reading option '-codec:v' ... matched as option 'codec' (codec name) with argument 'libx264'.
    Reading option '-b:v' ... matched as option 'b' (video bitrate (please use -b:v)) with argument '500k'.
    Reading option '-vf' ... matched as option 'vf' (set video filters) with argument 'scale=640:352'.
    Reading option '-r' ... matched as option 'r' (set frame rate (Hz value, fraction or abbreviation)) with argument '29.97'.
    Reading option '-codec:a' ... matched as option 'codec' (codec name) with argument 'aac'.
    Reading option '-b:a' ... matched as option 'b' (video bitrate (please use -b:v)) with argument '128k'.
    Reading option 'http://127.0.0.1:8090/feed1.ffm' ... matched as output file.
    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 TestStream.mp4.
    Successfully parsed a group of options.
    Opening an input file: TestStream.mp4.
    [mov,mp4,m4a,3gp,3g2,mj2 @ 0x10201a200] Format mov,mp4,m4a,3gp,3g2,mj2 probed with size=2048 and score=100
    [mov,mp4,m4a,3gp,3g2,mj2 @ 0x10201a200] ISO: File Type Major Brand: mp42
    [mov,mp4,m4a,3gp,3g2,mj2 @ 0x10201a200] File position before avformat_find_stream_info() is 33783
    [mov,mp4,m4a,3gp,3g2,mj2 @ 0x10201a200] All info found
    [mov,mp4,m4a,3gp,3g2,mj2 @ 0x10201a200] File position after avformat_find_stream_info() is 64138
    Input #0, mov,mp4,m4a,3gp,3g2,mj2, from 'TestStream.mp4':
      Metadata:
        major_brand     : mp42
        minor_version   : 0
        compatible_brands: isommp42
        creation_time   : 2014-02-17 10:17:06
      Duration: 00:01:40.10, start: 0.000000, bitrate: 582 kb/s
        Stream #0:0(und), 15, 1/30000: Video: h264 (Constrained Baseline) (avc1 / 0x31637661), yuv420p, 640x360 [SAR 1:1 DAR 16:9], 1001/60000, 483 kb/s, 29.97 fps, 29.97 tbr, 30k tbn, 59.94 tbc (default)
        Metadata:
          handler_name    : VideoHandler
        Stream #0:1(und), 1, 1/44100: Audio: aac (mp4a / 0x6134706D), 44100 Hz, stereo, fltp, 95 kb/s (default)
        Metadata:
          creation_time   : 2014-02-17 10:17:06
          handler_name    : IsoMedia File Produced by Google, 5-11-2011
    Successfully opened the file.
    Parsing a group of options: output file http://127.0.0.1:8090/feed1.ffm.
    Applying option codec:v (codec name) with argument libx264.
    Applying option b:v (video bitrate (please use -b:v)) with argument 500k.
    Applying option vf (set video filters) with argument scale=640:352.
    Applying option r (set frame rate (Hz value, fraction or abbreviation)) with argument 29.97.
    Applying option codec:a (codec name) with argument aac.
    Applying option b:a (video bitrate (please use -b:v)) with argument 128k.
    Successfully parsed a group of options.
    Opening an output file: http://127.0.0.1:8090/feed1.ffm.
    [ffm @ 0x102037200] Format ffm probed with size=2048 and score=101
    [AVIOContext @ 0x101d04fe0] Statistics: 4096 bytes read, 0 seeks
    Mon Feb 24 11:53:05 2014 127.0.0.1 - - [GET] "/feed1.ffm HTTP/1.1" 200 4175
    Successfully opened the file.
    detected 8 logical cores
    [graph 0 input from stream 0:1 @ 0x101d05a20] Setting 'time_base' to value '1/44100'
    [graph 0 input from stream 0:1 @ 0x101d05a20] Setting 'sample_rate' to value '44100'
    [graph 0 input from stream 0:1 @ 0x101d05a20] Setting 'sample_fmt' to value 'fltp'
    [graph 0 input from stream 0:1 @ 0x101d05a20] Setting 'channel_layout' to value '0x3'
    [graph 0 input from stream 0:1 @ 0x101d05a20] tb:1/44100 samplefmt:fltp samplerate:44100 chlayout:0x3
    [audio format for output stream 0:0 @ 0x102d004e0] Setting 'sample_fmts' to value 's16'
    [audio format for output stream 0:0 @ 0x102d004e0] Setting 'sample_rates' to value '22050'
    [audio format for output stream 0:0 @ 0x102d004e0] Setting 'channel_layouts' to value '0x4'
    [audio format for output stream 0:0 @ 0x102d004e0] auto-inserting filter 'auto-inserted resampler 0' between the filter 'Parsed_anull_0' and the filter 'audio format for output stream 0:0'
    [AVFilterGraph @ 0x101d03ea0] query_formats: 4 queried, 6 merged, 3 already done, 0 delayed
    0.500000 0.500000 
    [auto-inserted resampler 0 @ 0x102d00ca0] ch:2 chl:stereo fmt:fltp r:44100Hz -> ch:1 chl:mono fmt:s16 r:22050Hz
    [graph 1 input from stream 0:0 @ 0x103b003a0] Setting 'video_size' to value '640x360'
    [graph 1 input from stream 0:0 @ 0x103b003a0] Setting 'pix_fmt' to value '0'
    [graph 1 input from stream 0:0 @ 0x103b003a0] Setting 'time_base' to value '1/30000'
    [graph 1 input from stream 0:0 @ 0x103b003a0] Setting 'pixel_aspect' to value '1/1'
    [graph 1 input from stream 0:0 @ 0x103b003a0] Setting 'sws_param' to value 'flags=2'
    [graph 1 input from stream 0:0 @ 0x103b003a0] Setting 'frame_rate' to value '30000/1001'
    [graph 1 input from stream 0:0 @ 0x103b003a0] w:640 h:360 pixfmt:yuv420p tb:1/30000 fr:30000/1001 sar:1/1 sws_param:flags=2
    [scaler for output stream 0:1 @ 0x103b00900] Setting 'w' to value '640'
    [scaler for output stream 0:1 @ 0x103b00900] Setting 'h' to value '352'
    [scaler for output stream 0:1 @ 0x103b00900] Setting 'flags' to value '0x4'
    [scaler for output stream 0:1 @ 0x103b00900] w:640 h:352 flags:'0x4' interl:0
    [format @ 0x103b00dc0] compat: called with args=[yuv420p|yuvj420p|yuv422p|yuvj422p|yuv444p|yuvj444p|nv12|nv16]
    [format @ 0x103b00dc0] Setting 'pix_fmts' to value 'yuv420p|yuvj420p|yuv422p|yuvj422p|yuv444p|yuvj444p|nv12|nv16'
    [AVFilterGraph @ 0x102d00fc0] query_formats: 5 queried, 4 merged, 0 already done, 0 delayed
    [scaler for output stream 0:1 @ 0x103b00900] w:640 h:360 fmt:yuv420p sar:1/1 -> w:640 h:352 fmt:yuv420p sar:44/45 flags:0x4
    [libx264 @ 0x102049800] broken ffmpeg default settings detected
    [libx264 @ 0x102049800] use an encoding preset (e.g. -vpre medium)
    [libx264 @ 0x102049800] preset usage: -vpre <speed> -vpre <profile>
    [libx264 @ 0x102049800] speed presets are listed in x264 --help
    [libx264 @ 0x102049800] profile is optional; x264 defaults to high
    Output #0, ffm, to 'http://127.0.0.1:8090/feed1.ffm':
      Metadata:
        major_brand     : mp42
        minor_version   : 0
        compatible_brands: isommp42
        creation_time   : now
        Stream #0:0(und), 0, 1/1000000: Audio: aac (libvo_aacenc), 22050 Hz, mono, s16, 128 kb/s (default)
        Metadata:
          creation_time   : 2014-02-17 10:17:06
          handler_name    : IsoMedia File Produced by Google, 5-11-2011
        Stream #0:1(und), 0, 1/1000000: Video: h264 ([33][0][0][0] / 0x0021), yuv420p, 640x352 [SAR 44:45 DAR 16:9], 1001/30000, q=2-31, 500 kb/s, 1000k tbn, 29.97 tbc (default)
        Metadata:
          handler_name    : VideoHandler
    Stream mapping:
      Stream #0:1 -> #0:0 (aac -> libvo_aacenc)
      Stream #0:0 -> #0:1 (h264 -> libx264)
    Error while opening encoder for output stream #0:1 - maybe incorrect parameters such as bit_rate, rate, width or height
    [AVIOContext @ 0x101d04fe0] Statistics: 0 seeks, 0 writeouts
    [AVIOContext @ 0x101d03fa0] Statistics: 65536 bytes read, 0 seeks
    Mon Feb 24 11:53:05 2014 127.0.0.1 - - [POST] "/feed1.ffm HTTP/1.1" 200 0
    YorgZ-Macbook$

好的,我发现了自己的问题。 MP4不能工作,因为它不可搜索,而且我显然不能输出比我输入的带宽更高的输出... Du !!!

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM