blob: 711954562dcb5be527d776abaa161fbc4d2c80c0 [file] [log] [blame]
// Copyright 2017 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 content.mojom;
import "media/mojo/interfaces/audio_output_stream.mojom";
import "media/mojo/interfaces/audio_parameters.mojom";
import "media/mojo/interfaces/media_types.mojom";
// This interface is used to create output streams. The client supplies a
// request for a stream provider, and then supplies the desired audio
// parameters to that to create the stream.
interface RendererAudioOutputStreamFactory {
// Used to request a device. The AudioOutputStreamProviderRequest will be
// bound to an AudioOutputStreamProvider implementation or closed
// (in case of an error).
RequestDeviceAuthorization(
media.mojom.AudioOutputStreamProvider& stream_provider_request,
int32 session_id,
string device_id) =>
(media.mojom.OutputDeviceStatus state,
media.mojom.AudioParameters output_params,
string matched_device_id);
};