blob: 895a93e4967727e4d2846679b50433a2de46ff94 [file] [log] [blame]
// Copyright 2016 The Chromium Authors. All rights reserved.
// Use of this source code is governed by a BSD-style license that can be
// found in the LICENSE file.
module media.mojom;
import "media/mojo/interfaces/audio_parameters.mojom";
// This interface handles audio output stream operations.
// It allows to close a stream.
// TODO(rchtara): Add methods that allow the interaction with audio output
// streams: Play, Pause and SetVolume to this interface.
// See crbug.com/606707 for more details.
interface AudioOutputStream {
Close();
};
// This interface manages audio output streams.
// It allows to create an AudioOutputStream.
// TODO(rchtara): Add a method to request device authorization to this
// interface.
// See crbug.com/606707 for more details.
interface AudioOutput {
// TODO(rchtara): Remove |stream_id| from AudioOutput::CreateStream when all
// the stream operations are mojofied.
CreateStream(
int32 stream_id,
AudioParameters params) =>
(int32 stream_id,
AudioOutputStream? stream,
handle<shared_buffer>? shared_buffer,
handle? socket_descriptor);
};