| // 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); |
| }; |