返回

ffmpeg 输出到标准输出是一个黑盒(python)

发布时间:2022-07-31 13:55:54 335
# node.js

项目背景:我正在从事的项目从UE模拟摄像机中获取图像,使用OpenCV将图像转换为.jpg,并将.jpg流到本地主机端口,以便第二个程序可以检索图像并注释模拟中的对象。我正在尝试将这些转换为合适的UE4的WmfMediaPlayer通过ffmpeg的格式,以便可以流式传输到另一个本地主机端口。

问题:我已经设法使流处于活动状态,但流末尾的视频是一个黑色正方形。我有信心但不能百分之百肯定我已经正确设置了ffmpeg。控制台的输出似乎暗示转换正在工作,但我以前被愚弄过。它也可能是烧瓶产率成分。

ffmpeg declaration/setup:

process = (
        ffmpeg
        .input('C:/MOT/test.jpg')   
        .output('pipe:1', vcodec='libx264', format='avi')   
        .overwrite_output()
        .run_async(pipe_stdin=True, pipe_stdout=True)
    )

Flask Integration:

@app.route('/annotated')
def annotated():
    return Response(
        frame_generator_annotated(),
        mimetype='multipart/x-mixed-replace; boundary=frame'
    )


def frame_generator_annotated():
    global process
    while (True):
        frame = process.stdout.read()
        yield (b'--frame\r\n'
               b'Content-Type: video/avi\r\n\r\n' + frame + b'\r\n\r\n')

流视图:http://localhost:5001/annotated

ffmpeg console output:

Running on all addresses.
   WARNING: This is a development server. Do not use it in a production deployment.
 * Running on http://192.168.1.220:5001/ (Press CTRL+C to quit)
ffmpeg version 4.3.1 Copyright (c) 2000-2020 the FFmpeg developers
  built with gcc 10.2.1 (GCC) 20200726
  configuration: --disable-static --enable-shared --enable-gpl --enable-version3 --enable-sdl2 --enable-fontconfig --enable-gnutls --enable-iconv --enable-libass --enable-libdav1d --enable-libbluray --enable-libfreetype --enable-libmp3lame --enable-libopencore-amrnb --enable-libopencore-amrwb --enable-libopenjpeg --enable-libopus --enable-libshine --enable-libsnappy --enable-libsoxr --enable-libsrt --enable-libtheora --enable-libtwolame --enable-libvpx --enable-libwavpack --enable-libwebp --enable-libx264 --enable-libx265 --enable-libxml2 --enable-libzimg --enable-lzma --enable-zlib --enable-gmp --enable-libvidstab --enable-libvmaf --enable-libvorbis --enable-libvo-amrwbenc --enable-libmysofa --enable-libspeex --enable-libxvid --enable-libaom --enable-libgsm --enable-librav1e --disable-w32threads --enable-libmfx --enable-ffnvcodec --enable-cuda-llvm --enable-cuvid --enable-d3d11va --enable-nvenc --enable-nvdec --enable-dxva2 --enable-avisynth --enable-libopenmpt --enable-amf
  libavutil      56. 51.100 / 56. 51.100
  libavcodec     58. 91.100 / 58. 91.100
  libavformat    58. 45.100 / 58. 45.100
  libavdevice    58. 10.100 / 58. 10.100
  libavfilter     7. 85.100 /  7. 85.100
  libswscale      5.  7.100 /  5.  7.100
  libswresample   3.  7.100 /  3.  7.100
  libpostproc    55.  7.100 / 55.  7.100
[mjpeg @ 00000269be0faec0] EOI missing, emulating
Input #0, image2, from 'C:/MOT/test.jpg':
  Duration: 00:00:00.04, start: 0.000000, bitrate: 1968 kb/s
    Stream #0:0: Video: mjpeg (Baseline), yuvj420p(pc, bt470bg/unknown/unknown), 1024x576 [SAR 1:1 DAR 16:9], 25 tbr, 25 tbn, 25 tbc
Stream mapping:
  Stream #0:0 -> #0:0 (mjpeg (native) -> h264 (libx264))
Press [q] to stop, [?] for help
[libx264 @ 00000269be0fc240] using SAR=1/1
[libx264 @ 00000269be0fc240] using cpu capabilities: MMX2 SSE2Fast SSSE3 SSE4.2 AVX FMA3 BMI2 AVX2
[libx264 @ 00000269be0fc240] profile High, level 3.1, 4:2:0, 8-bit
Output #0, avi, to 'pipe:1':
  Metadata:
    ISFT            : Lavf58.45.100
    Stream #0:0: Video: h264 (libx264) (H264 / 0x34363248), yuvj420p(pc), 1024x576 [SAR 1:1 DAR 16:9], q=-1--1, 25 fps, 25 tbn, 25 tbc
    Metadata:
      encoder         : Lavc58.91.100 libx264
    Side data:
      cpb: bitrate max/min/avg: 0/0/0 buffer size: 0 vbv_delay: N/A
frame=    1 fps=0.0 q=28.0 Lsize=       2kB time=00:00:00.04 bitrate= 447.2kbits/s speed= 2.9x    
video:1kB audio:0kB subtitle:0kB other streams:0kB global headers:0kB muxing overhead: 157.307251%
[libx264 @ 00000269be0fc240] frame I:1     Avg QP:13.00  size:   869
[libx264 @ 00000269be0fc240] mb I  I16..4: 100.0%  0.0%  0.0%
[libx264 @ 00000269be0fc240] 8x8 transform intra:0.0%
[libx264 @ 00000269be0fc240] coded y,uvDC,uvAC intra: 0.0% 0.0% 0.0%
[libx264 @ 00000269be0fc240] i16 v,h,dc,p: 97%  0%  3%  0%
[libx264 @ 00000269be0fc240] i8c dc,h,v,p: 100%  0%  0%  0%
[libx264 @ 00000269be0fc240] kb/s:173.80
特别声明:以上内容(图片及文字)均为互联网收集或者用户上传发布,本站仅提供信息存储服务!如有侵权或有涉及法律问题请联系我们。
举报
评论区(0)
按点赞数排序
用户头像
下一篇
c#-.Net Core 直接从 HTML 调用 OnPost 2022-07-31 11:35:21