如何在 React Native 应用程序中使用 GetDisplayMedia 进行屏幕共享时从其他应用程序捕获音频?

问题描述 投票:0回答:1

我已经在 React Native 应用程序中使用 WebRTC 实现了屏幕共享,但遇到了一个问题,即在屏幕广播期间未捕获来自其他应用程序(例如 YouTube)的音频。

下面是我用于屏幕共享的 React Native 代码片段:

const screenShareStreamRef = useRef();
const [screenShareStream, setScreenShareStream] = useState(null);
const screenShareVideoProducer = useRef();
const screenShareAudioProducer = useRef();


let audioTrack, videoTrack, screenstream;
  const startScreenStream = async () => {
    try {
      const displayStream = await mediaDevices.getDisplayMedia({ video: true });
      videoTrack = displayStream.getVideoTracks()[0];
  
      const audioStream = await mediaDevices.getUserMedia({ audio: true });
      audioTrack = audioStream.getAudioTracks()[0];
  
      // Combine video and audio tracks into a single MediaStream
      screenstream = new MediaStream([videoTrack, audioTrack]);
  
      screenShareStreamRef.current = screenstream;
      setScreenShareStream(screenstream);
            
    } catch (error) {
      console.error(error);
    }
})

对于 iOS 和 Android,我已遵循本指南中提供的设置:指向设置指南的链接。

此外,对于 iOS,我已将必要的文件添加到项目中,如指南中所述:文件链接。

我正在寻找有关如何在屏幕共享期间从其他应用程序捕获音频的见解或解决方案。任何帮助,将不胜感激。谢谢!

android ios react-native webrtc broadcasting
1个回答
0
投票

您找到问题的答案了吗?我正在寻找相同的:D

© www.soinside.com 2019 - 2024. All rights reserved.