#include "third_party/blink/renderer/modules/webaudio/realtime_audio_destination_node.h"
#include "base/feature_list.h"
#include "third_party/blink/public/common/features.h"
#include "third_party/blink/public/platform/web_audio_latency_hint.h"
#include "third_party/blink/public/web/web_local_frame.h"
#include "third_party/blink/renderer/modules/webaudio/audio_context.h"
#include "third_party/blink/renderer/modules/webaudio/audio_node_input.h"
#include "third_party/blink/renderer/modules/webaudio/audio_node_output.h"
#include "third_party/blink/renderer/modules/webaudio/audio_worklet.h"
#include "third_party/blink/renderer/modules/webaudio/audio_worklet_messaging_proxy.h"
#include "third_party/blink/renderer/modules/webaudio/cross_thread_audio_worklet_processor_info.h"
#include "third_party/blink/renderer/platform/audio/audio_utilities.h"
#include "third_party/blink/renderer/platform/audio/denormal_disabler.h"
#include "third_party/blink/renderer/platform/bindings/exception_messages.h"
#include "third_party/blink/renderer/platform/bindings/exception_state.h"
#include "third_party/blink/renderer/platform/instrumentation/tracing/trace_event.h"
#include "third_party/blink/renderer/platform/wtf/cross_thread_copier_base.h"
namespace blink {
RealtimeAudioDestinationNode::RealtimeAudioDestinationNode(
AudioContext& context,
const WebAudioSinkDescriptor& sink_descriptor,
const WebAudioLatencyHint& latency_hint,
std::optional<float> sample_rate,
bool update_echo_cancellation_on_first_start)
: … { … }
RealtimeAudioDestinationNode* RealtimeAudioDestinationNode::Create(
AudioContext* context,
const WebAudioSinkDescriptor& sink_descriptor,
const WebAudioLatencyHint& latency_hint,
std::optional<float> sample_rate,
bool update_echo_cancellation_on_first_start) { … }
RealtimeAudioDestinationHandler& RealtimeAudioDestinationNode::GetOwnHandler()
const { … }
void RealtimeAudioDestinationNode::SetSinkDescriptor(
const WebAudioSinkDescriptor& sink_descriptor,
media::OutputDeviceStatusCB callback) { … }
}