我想知道audioContext.destination和audioContext.createMediaStreamDestination()之间有什么区别。
从目的地生成的流在浏览器页面上播放时的行为确实有所不同。因此,我想知道单独使用它们的最佳实践以及原因。
发布于 2022-09-16 03:01:19
BaseAudioContext.destination
(注意,它实际上来自BaseAudioContext
,AudioContext
扩展)是,而不是,它是一个流。这是一个AudioDestinationNode
。根据文档,它通常代表一个真正的输出设备:
-- BaseAudioContext接口的目的属性--返回一个AudioDestinationNode,表示上下文中所有音频的最终目的地。它通常代表一个实际的音频渲染设备,如您的设备的扬声器。
另一方面,AudioContext.createMediaStreamDestination()
实际上创建了一个音频流,例如,您可以在其中保存文件或通过RTC对其进行进一步的流。结果是一个MediaStreamAudioDestinationNode
,它实际上做的是而不是,它与AudioDestinationNode
有任何关系,除非它们具有相同的父接口AudioNode
。
-- AudioContext接口的createMediaStreamDestination()方法用于创建一个新的MediaStreamAudioDestinationNode对象,该对象与表示音频流的WebRTC MediaStream相关联,可以存储在本地文件中,也可以发送到另一台计算机。
简而言之:destination
代表一个(通常)真正的输出设备,而createMediaStreamDestination
则创建一个输出流,您可以进一步处理该流/数据/信息。
https://stackoverflow.com/questions/73739359
复制相似问题