使用ffmpeg进行流式传输时出现错误

时间:2019-11-30 07:09:46

标签: ffmpeg

我正在尝试与ffmpeg流式传输。视频源是vmix。在流式传输时,ffmpeg抛出I / O错误并停止。 可用设备:

[dshow @ 0000028c44498ec0] DirectShow video devices (some may be both video and audio devices)
[dshow @ 0000028c44498ec0]  "e2eSoft VCam"
[dshow @ 0000028c44498ec0]     Alternative name "@device_pnp_\\?\root#image#0000#{65e8773d-8f56-11d0-a3b9-00a0c9223196}\global"
[dshow @ 0000028c44498ec0]  "HP Truevision HD"
[dshow @ 0000028c44498ec0]     Alternative name "@device_pnp_\\?\usb#vid_04f2&pid_b50d&mi_00#6&2557162&1&0000#{65e8773d-8f56-11d0-a3b9-00a0c9223196}\global"
[dshow @ 0000028c44498ec0]  "vMix Video"
[dshow @ 0000028c44498ec0]     Alternative name "@device_sw_{860BB310-5D01-11D0-BD3B-00A0C911CE86}\{8E14549A-DB61-4309-AFA1-3578E927E938}"
[dshow @ 0000028c44498ec0]  "vMix Video External 2"
[dshow @ 0000028c44498ec0]     Alternative name "@device_sw_{860BB310-5D01-11D0-BD3B-00A0C911CE86}\{8E14549A-DB61-4309-AFA1-3578E927F974}"
[dshow @ 0000028c44498ec0]  "vMix Video YV12"
[dshow @ 0000028c44498ec0]     Alternative name "@device_sw_{860BB310-5D01-11D0-BD3B-00A0C911CE86}\{8E14549A-DB61-4309-AFA1-3578E927FF92}"
[dshow @ 0000028c44498ec0] DirectShow audio devices
[dshow @ 0000028c44498ec0]  "Microphone (Realtek High Definition Audio)"
[dshow @ 0000028c44498ec0]     Alternative name "@device_cm_{33D9A762-90C8-11D0-BD43-00A0C911CE86}\wave_{3522D665-FB21-41E0-AF83-CC3432431D30}"
[dshow @ 0000028c44498ec0]  "vMix Audio"
[dshow @ 0000028c44498ec0]     Alternative name "@device_sw_{33D9A762-90C8-11D0-BD43-00A0C911CE86}\{008E145B-DB61-4309-AEA1-3578E927E940}"
[dshow @ 0000028c44498ec0]  "vMix Audio - Bus A"
[dshow @ 0000028c44498ec0]     Alternative name "@device_sw_{33D9A762-90C8-11D0-BD43-00A0C911CE86}\{008E145B-DB61-4309-AEA1-3578E927E944}"
[dshow @ 0000028c44498ec0]  "vMix Audio - Bus B"
[dshow @ 0000028c44498ec0]     Alternative name "@device_sw_{33D9A762-90C8-11D0-BD43-00A0C911CE86}\{008E145B-DB61-4309-AEA1-3578E927E948}"
[dshow @ 0000028c44498ec0]  "vMix Audio - M A B"
[dshow @ 0000028c44498ec0]     Alternative name "@device_sw_{33D9A762-90C8-11D0-BD43-00A0C911CE86}\{008E145B-DB61-4309-AEA1-3578E927E952}"
[dshow @ 0000028c44498ec0]  "vMix Audio - M A"
[dshow @ 0000028c44498ec0]     Alternative name "@device_sw_{33D9A762-90C8-11D0-BD43-00A0C911CE86}\{008E145B-DB61-4309-AEA1-3578E927E956}"
[dshow @ 0000028c44498ec0]  "CABLE Output (VB-Audio Virtual Cable)"
[dshow @ 0000028c44498ec0]     Alternative name "@device_cm_{33D9A762-90C8-11D0-BD43-00A0C911CE86}\wave_{D27F382E-4EA5-49D0-8F87-2B5F144BC155}"

我尝试使用以下命令流式传输:

ffmpeg -re -rtbufsize 1024M -framerate 25 -f dshow -video_size 1280x720 -channels 2 -i video="vMix Video":audio="vMix Audio" -c:v libx264 -pix_fmt yuv420p -g 50 -crf 20 -profile:v high -preset:v veryfast -tune film -c:a libfaac -b:a 256k -f mp4 "D:\recordedfile.mp4"

获取错误为:

[dshow @ 0000028144d4c7c0] Could not set video options
video=vMix Video:audio=vMix Audio: I/O error

如果我使用gstreamer之类的其他工具,但它与ffmpeg不兼容,视频界面效果很好。请指出我错了什么或我想念什么?我正在使用Windows OS。谢谢您的阅读。

0 个答案:

没有答案