Merge pull request #2191 from chinmaygarde/master

Add iOS implementations for MediaPlayer volume and looping setters
This commit is contained in:
Chinmay Garde 2015-12-16 15:25:45 -08:00
commit e466c7dbd5
2 changed files with 28 additions and 0 deletions

View File

@ -32,6 +32,8 @@ class MediaPlayerImpl : public ::media::MediaPlayer {
void Start() override;
void Pause() override;
void SeekTo(uint32_t msec) override;
void SetVolume(float volume) override;
void SetLooping(bool looping) override;
private:
mojo::StrongBinding<::media::MediaPlayer> binding_;

View File

@ -17,6 +17,8 @@
- (BOOL)play;
- (void)pause;
- (BOOL)seekTo:(NSTimeInterval)interval;
- (void)setVolume:(double)volume;
- (void)setLooping:(BOOL)loop;
+ (NSString*)temporaryFilePath;
@ -58,6 +60,22 @@
return [_player playAtTime:_player.deviceCurrentTime + interval];
}
- (void)setVolume:(double)volume {
if (volume > 1.0) {
volume = 1.0;
}
if (volume < 0.0) {
volume = 0.0;
}
_player.volume = volume;
}
- (void)setLooping:(BOOL)shouldLoop {
_player.numberOfLoops = shouldLoop ? -1 : 0;
}
+ (NSString*)temporaryFilePath {
char temp[256] = {0};
@ -136,6 +154,14 @@ void MediaPlayerImpl::reset() {
audio_client_ = nullptr;
}
void MediaPlayerImpl::SetVolume(float volume) {
[audio_client_ setVolume:volume];
}
void MediaPlayerImpl::SetLooping(bool looping) {
[audio_client_ setLooping:looping];
}
void MediaPlayerFactory::Create(
mojo::ApplicationConnection* connection,
mojo::InterfaceRequest<::media::MediaPlayer> request) {