ios - 通过 Webrtc 发送重播套件音频样本(不是麦克风)
问题描述
我能够将 Replaykit 视频样本发送到远程对等点,但没有音频。用什么代替 RTCVideoFrame?有没有办法可以一起发送音频视频数据?
以下是片段:
var peerConnectionFactory: RTCPeerConnectionFactory?
var localVideoSource: RTCVideoSource?
var videoCapturer: RTCVideoCapturer?
func setupVideoCapturer(){
// localVideoSource and videoCapturer will use
localVideoSource = self.peerConnectionFactory!.videoSource()
videoCapturer = RTCVideoCapturer()
localVideoSource.capturer(videoCapturer, didCapture: videoFrame!)
let videoTrack : RTCVideoTrack = self.peerConnectionFactory!.videoTrack(with: localVideoSource, trackId: "100”)
let mediaStream: RTCMediaStream = (self.peerConnectionFactory?.mediaStream(withStreamId: “1"))!
mediaStream.addVideoTrack(videoTrack)
self.newPeerConnection!.add(mediaStream)
}
override func processSampleBuffer(_ sampleBuffer: CMSampleBuffer, with sampleBufferType: RPSampleBufferType) {
switch sampleBufferType {
case RPSampleBufferType.video:
// create the CVPixelBuffer
let pixelBuffer:CVPixelBuffer = CMSampleBufferGetImageBuffer(sampleBuffer)!;
// create the RTCVideoFrame
var videoFrame:RTCVideoFrame?;
let timestamp = NSDate().timeIntervalSince1970 * 1000
videoFrame = RTCVideoFrame(pixelBuffer: pixelBuffer, rotation: RTCVideoRotation._0, timeStampNs: Int64(timestamp))
// connect the video frames to the WebRTC
localVideoSource.capturer(videoCapturer, didCapture: videoFrame!)
break
}
}
解决方案
推荐阅读
- composer-php - 具有依赖项的 Composer 包给了我错误
- php - 插入我的本地 sql server
- reactjs - 反应异步组件WillUnmount
- xml - 通过 isXML() 但在 ColdFusion 中失败 xmlParse() 的 XML
- oracle - PL/SQL: ORA-44201: 游标需要重新解析
- python - python manage.py migrate 分段错误:11
- ios - 如何在谷歌地图中快速创建标记的自定义视图
- python - Umat 很慢(OpenCV、Python)
- javascript - 移动不同范围滑块时动态更改范围滑块值
- multithreading - 16个线程等待同一个锁