#include "third_party/blink/renderer/modules/breakout_box/media_stream_audio_track_underlying_sink.h"
#include "third_party/blink/public/platform/platform.h"
#include "third_party/blink/renderer/bindings/modules/v8/v8_audio_data.h"
#include "third_party/blink/renderer/core/execution_context/execution_context.h"
#include "third_party/blink/renderer/core/streams/writable_stream_transferring_optimizer.h"
#include "third_party/blink/renderer/modules/breakout_box/metrics.h"
#include "third_party/blink/renderer/modules/breakout_box/pushable_media_stream_audio_source.h"
#include "third_party/blink/renderer/modules/webcodecs/audio_data.h"
#include "third_party/blink/renderer/platform/bindings/exception_state.h"
#include "third_party/blink/renderer/platform/scheduler/public/post_cross_thread_task.h"
#include "third_party/blink/renderer/platform/wtf/cross_thread_functional.h"
#include "third_party/blink/renderer/platform/wtf/functional.h"
namespace blink {
namespace {
class TransferringOptimizer : public WritableStreamTransferringOptimizer { … };
}
MediaStreamAudioTrackUnderlyingSink::MediaStreamAudioTrackUnderlyingSink(
scoped_refptr<PushableMediaStreamAudioSource::Broker> source_broker)
: … { … }
ScriptPromise<IDLUndefined> MediaStreamAudioTrackUnderlyingSink::start(
ScriptState* script_state,
WritableStreamDefaultController* controller,
ExceptionState& exception_state) { … }
ScriptPromise<IDLUndefined> MediaStreamAudioTrackUnderlyingSink::write(
ScriptState* script_state,
ScriptValue chunk,
WritableStreamDefaultController* controller,
ExceptionState& exception_state) { … }
ScriptPromise<IDLUndefined> MediaStreamAudioTrackUnderlyingSink::abort(
ScriptState* script_state,
ScriptValue reason,
ExceptionState& exception_state) { … }
ScriptPromise<IDLUndefined> MediaStreamAudioTrackUnderlyingSink::close(
ScriptState* script_state,
ExceptionState& exception_state) { … }
std::unique_ptr<WritableStreamTransferringOptimizer>
MediaStreamAudioTrackUnderlyingSink::GetTransferringOptimizer() { … }
void MediaStreamAudioTrackUnderlyingSink::Disconnect() { … }
}