Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(58)

Side by Side Diff: media/mojo/interfaces/media_renderer.mojom

Issue 1094783002: Switch to double for time calculations using playback rate. (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: Making changes at chromecast side to fix trybots Created 5 years, 8 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch
OLDNEW
1 // Copyright 2014 The Chromium Authors. All rights reserved. 1 // Copyright 2014 The Chromium Authors. All rights reserved.
2 // Use of this source code is governed by a BSD-style license that can be 2 // Use of this source code is governed by a BSD-style license that can be
3 // found in the LICENSE file. 3 // found in the LICENSE file.
4 4
5 module mojo; 5 module mojo;
6 6
7 import "media/mojo/interfaces/demuxer_stream.mojom"; 7 import "media/mojo/interfaces/demuxer_stream.mojom";
8 import "media/mojo/interfaces/media_types.mojom"; 8 import "media/mojo/interfaces/media_types.mojom";
9 9
10 interface MediaRenderer { 10 interface MediaRenderer {
11 // Initializes the Renderer with one or both of an audio and video stream, 11 // Initializes the Renderer with one or both of an audio and video stream,
12 // calling back upon completion. 12 // calling back upon completion.
13 // NOTE: If an error occurs, MediaRendererClient::OnError() will be called 13 // NOTE: If an error occurs, MediaRendererClient::OnError() will be called
14 // before the callback is executed. 14 // before the callback is executed.
15 Initialize(MediaRendererClient client, 15 Initialize(MediaRendererClient client,
16 DemuxerStream? audio, 16 DemuxerStream? audio,
17 DemuxerStream? video) => (); 17 DemuxerStream? video) => ();
18 18
19 // Discards any buffered data, executing callback when completed. 19 // Discards any buffered data, executing callback when completed.
20 // NOTE: If an error occurs, MediaRendererClient::OnError() can be called 20 // NOTE: If an error occurs, MediaRendererClient::OnError() can be called
21 // before the callback is executed. 21 // before the callback is executed.
22 Flush() => (); 22 Flush() => ();
23 23
24 // Starts rendering from |time_usec|. 24 // Starts rendering from |time_usec|.
25 StartPlayingFrom(int64 time_usec); 25 StartPlayingFrom(int64 time_usec);
26 26
27 // Updates the current playback rate. The default playback rate should be 1. 27 // Updates the current playback rate. The default playback rate should be 1.
28 SetPlaybackRate(float playback_rate); 28 SetPlaybackRate(double playback_rate);
29 29
30 // Sets the output volume. The default volume should be 1. 30 // Sets the output volume. The default volume should be 1.
31 SetVolume(float volume); 31 SetVolume(float volume);
32 }; 32 };
33 33
34 interface MediaRendererClient { 34 interface MediaRendererClient {
35 // Called to report media time advancement by |time_usec|. 35 // Called to report media time advancement by |time_usec|.
36 // |time_usec| and |max_time_usec| can be used to interpolate time between 36 // |time_usec| and |max_time_usec| can be used to interpolate time between
37 // calls to OnTimeUpdate(). 37 // calls to OnTimeUpdate().
38 // |max_time_usec| is typically the media timestamp of the last audio frame 38 // |max_time_usec| is typically the media timestamp of the last audio frame
39 // buffered by the audio hardware. 39 // buffered by the audio hardware.
40 // |max_time_usec| must be greater or equal to |time_usec|. 40 // |max_time_usec| must be greater or equal to |time_usec|.
41 OnTimeUpdate(int64 time_usec, int64 max_time_usec); 41 OnTimeUpdate(int64 time_usec, int64 max_time_usec);
42 42
43 // Called to report buffering state changes, see media_types.mojom. 43 // Called to report buffering state changes, see media_types.mojom.
44 OnBufferingStateChange(BufferingState state); 44 OnBufferingStateChange(BufferingState state);
45 45
46 // Executed when rendering has reached the end of stream. 46 // Executed when rendering has reached the end of stream.
47 OnEnded(); 47 OnEnded();
48 48
49 // Executed if any error was encountered during decode or rendering. If 49 // Executed if any error was encountered during decode or rendering. If
50 // this error happens during an operation that has a completion callback, 50 // this error happens during an operation that has a completion callback,
51 // OnError() will be called before firing the completion callback. 51 // OnError() will be called before firing the completion callback.
52 OnError(); 52 OnError();
53 }; 53 };
OLDNEW
« no previous file with comments | « media/filters/audio_renderer_algorithm_unittest.cc ('k') | media/mojo/services/mojo_renderer_impl.h » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698