gpt4 book ai didi

node.js - 无法在真实服务器上使用 FFmpeg 记录 mediasoup 生产者

转载 作者:行者123 更新时间:2023-12-04 23:21:31 29 4
gpt4 key购买 nike

我已经为音频调用构建了一个不错的应用程序,非常感谢 MediaSoup !
为了更上一层楼,我需要记录我的一些电话。
我使用本教程作为引用:
mediasoup recording demo
我遵循了 FFmpeg 的方式,并且已经达到了创建一个 plainTransport 的地步

    router.createPlainTransport({
// No RTP will be received from the remote side
comedia: false,
// FFmpeg and GStreamer don't support RTP/RTCP multiplexing ("a=rtcp-mux" in SDP)
rtcpMux: false,
listenIp: {ip:"0.0.0.0", announcedIp:"MY_PUBLIC_IP"},
});

然后我连接到这个传输:
    rtpPlainTransport.connect({
ip: 127.0.0.1,
port: "port1",
rtcpPort: "port2",
});

我的第一个疑问:上面提供的 .connect({}) 参数中的 IP 地址是否正确?
其次,FFMPEG 命令需要一个 SDP header 。这是我的:
    v=0
o=- 0 0 IN IP4 127.0.0.1
s=-
c=IN IP4 127.0.0.1
t=0 0
m=audio port1 RTP/AVPF 111
a=rtcp:port2
a=rtpmap:111 opus/48000/2
a=fmtp:111 minptime=10;useinbandfec=1
当我开始录制时,FFMPEG 进程没有收到任何数据。
此外,在停止时,我收到以下消息

Output file is empty, nothing was encoded (check -ss / -t / -framesparameters if used) Exiting normally, received signal 2. Recordingprocess exit, code: 255, signal: null


当服务器本身在本地主机上运行时,我能够使用 127.0.0.1 将录音保存在本地主机上。
但是,使用 Nginx 托管的实际服务器,我无法弄清楚出了什么问题。
我可以看到正在我的音频端口上发送的数据:
1 0.000000000    127.0.0.1 → 127.0.0.1    UDP 117 10183 → 5004 Len=75
2 0.020787740 127.0.0.1 → 127.0.0.1 UDP 108 10183 → 5004 Len=66
3 0.043201757 127.0.0.1 → 127.0.0.1 UDP 118 10183 → 5004 Len=76
我该如何处理 FFmpeg 以便它开始录制!?
有人可以帮忙吗?

最佳答案

解决了错误。我没有设置
mediaCodecs 中的“preferredPayloadType”值将音频设置为 111,这是 FFmpeg 要求的。
100 不起作用。虽然我不完全明白为什么。应该是111。
如果有人可以解释这一点,那就太好了。但无论如何,我现在可以录音了!
所以媒体编解码器必须是:

        {
kind: "audio",
mimeType: "audio/opus",
preferredPayloadType: 111,
clockRate: 48000,
channels: 2,
parameters: {
minptime: 10,
useinbandfec: 1,
},
},
和 sdp 应该是:
v=0
o=- 0 0 IN IP4 127.0.0.1
s=-
c=IN IP4 127.0.0.1
t=0 0
m=audio 5004 RTP/AVPF 111
a=rtcp:5005
a=rtpmap:111 opus/48000/2
a=fmtp:111 minptime=10;useinbandfec=1

关于node.js - 无法在真实服务器上使用 FFmpeg 记录 mediasoup 生产者,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/65038920/

29 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com