gpt4 book ai didi

go - 如何在 Golang 中使用字节保存 opus 文件?

转载 作者:数据小太阳 更新时间:2023-10-29 03:36:16 27 4
gpt4 key购买 nike

我们正在使用 pion/webrtc 库,我们有来自RTCPeerConnection

我们需要从 RTCPacket.Raw(字节列表)中保存 opus 音频文件。我们尝试使用他们的 OpusWriter 但它不起作用,音频已写入但无法播放。

那么问题是我们如何从字节中保存 Opus 音频文件?

代码:

        for {
rtpPacket, err := remoteTrack.ReadRTP()
b := rtpPacket.Raw

if ivfFile != nil {
if err := ivfFile.WriteRTP(rtpPacket); err != nil {
log.Println(err)
}
}

checkError(err)
videoTrackLock.RLock()
_, err = videoTrack.Write(b)
videoTrackLock.RUnlock()

if err != io.ErrClosedPipe {
checkError(err)
}
}

最佳答案

save-to-disk例子不适合你?这演示了将 VP8/Opus 保存到磁盘。

如果您确实想要直接来自 *RTP.Packet 的音频您应该使用 Payload 字段而不是 RawRaw 包含 RTP header ,而 Payload 将仅包含媒体。

感谢使用 Pion!我很乐意在这里或在 Slack 上提供帮助

关于go - 如何在 Golang 中使用字节保存 opus 文件?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/56380366/

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