小编Adr*_*ana的帖子

ffmpeg 原始视频和音频标准输入

目前,我使用 ffmpeg 从原始格式的帧开始生成在 OBS 中广播的视频输出。

问题是我们要向其添加音轨,即:每个帧现在都有其像素矩阵及其音频。

我不知道如何让 ffmpeg 接受这个复合信号或者最好的方法是什么。实际上我使用 ffmpeg 的标准输入。我使用这段代码来生成它:

url = "udp://" + udp_address + ":" + str(udp_port)
command = [
        'ffmpeg',
         '-loglevel',
         'error',
         '-re',
         '-y',
         
         # Input
         '-i', '-',
         '-f', 'rawvideo',
         '-vcodec', 'rawvideo',
         '-pix_fmt', 'bgr24',
         '-s', str(size[0]) + 'x' + str(size[1]),
         
         # Output
         '-b:v', '16M',
         '-maxrate', '16M',
         '-bufsize', '16M',
         '-pix_fmt', 'bgr24',
         '-f', 'mpegts', url
 ]

proc = subprocess.Popen(command, stdin=subprocess.PIPE)
proc.stdin.write(frame.tobytes())
Run Code Online (Sandbox Code Playgroud)

向每帧添加音频的最佳方法是什么?谢谢

python audio video ffmpeg

5
推荐指数
1
解决办法
5854
查看次数

使用标准库编译静态库链接(静态)

我正在尝试编译一个静态库(让我们称之为library.a).该库消耗标准库的资源.有一些方法可以使库静态链接标准库.

我证明了这样的事情:

g++ -c library -static-libstdc++ -o library.o
ar rcs library.o library.a
Run Code Online (Sandbox Code Playgroud)

但如果我这样做,就没有标准库的链接.

然后我证明了这一点:

g++ library -static-stdlib -o library.o
ar rcs library.o library.a
Run Code Online (Sandbox Code Playgroud)

但是请我添加一个主要功能.

是否有可能通过静态链接标准库(std :: string,std :: vector,std :: cin等...)来创建静态库.

谢谢 :)

c++ g++ standard-library static-libraries c++11

4
推荐指数
1
解决办法
6149
查看次数

标签 统计

audio ×1

c++ ×1

c++11 ×1

ffmpeg ×1

g++ ×1

python ×1

standard-library ×1

static-libraries ×1

video ×1