我在ubuntu上使用avconv,我找到了这个命令
avconv -f alsa -i pulse -f x11grab -r 25 -s 1280x720 -i :0.0+0,0 -acodec libfaac -vcodec libx264 -pre:0 lossless_ultrafast -threads 0 video.mkv
保存为文件,此命令
avconv -i ./test.m4v -re -c copy -f flv "rtmp://localhost/livestream"
推送直播。
我如何将它们组合在一起?
答案 0 :(得分:0)
首先,你应该在video.stackexchange.com上提出这样的问题,而不是在这里。
其次,让我们拆开你找到的两个命令:
-f alsa
- 输入格式为alsa
-i pulse
- 您正在阅读pulse
(pulseaudio驱动程序)-f x11grab
- 计划从x11的屏幕上阅读-r 25 -s 1280x720
- 传入视频流的速率和大小-i :0.0+0,0
- 这会选择传入视频的来源-acodec libfaac
- 此处输出选项开始,您将音频代码设置为libfaac,或者至少尝试...因为此选项很久以前已被弃用,目前-c:a
将被用于-vcodec libx264
- 设置视频代码,但您应该使用-c:v
-pre:0 lossless_ultrafast -threads 0
- 有关如何进行编码的某种参数video.mkv
- 这是输出文件第二个
-i ./test.m4v
- 您正在阅读的文件-re
- "以原生帧速率读取输入" -c copy
- 不要重新编码,只需按原样管道-f flv
- 容器格式"rtmp://localhost/livestream"
- 你计划在那里写下所有内容。当你理解这一点时,你应该清楚的是,你打算做的是使用第一个命令的输入和编码部分,以及第二个命令的格式和输出。
我没有时间检查你找到的所有东西是否有效,你应该自己做。