Added support for changing the volume of RTCAudioSource as discussed in BUG=webrtc:6533
This is a short term solution to change the volume of a RTCAudioTrack (which contains an RTCAudioSource property) until applyConstraints for RTCMediaStreamTracks has been implemented. This CL adds one new Objective-C method to AudioSourceInterface's wrapper: -(void)setVolume:(double)volume BUG=webrtc:6533, webrtc:6805 This is my first CL for Chromium/WebRTC, so please let me know if I did something wrong. Review-Url: https://codereview.webrtc.org/2534843002 Cr-Commit-Position: refs/heads/master@{#16809}
This commit is contained in:

committed by
Commit bot

parent
7aadbfa06e
commit
0d1305ee88
4
AUTHORS
4
AUTHORS
@ -1,4 +1,4 @@
|
||||
# Names should be added to this file like so:
|
||||
# Names should be added to this file like so:
|
||||
# Name or Organization <email address>
|
||||
|
||||
Adam Fedor <adam.fedor@gmail.com>
|
||||
@ -13,9 +13,9 @@ Christophe Dumez <ch.dumez@samsung.com>
|
||||
Cody Barnes <conceptgenesis@gmail.com>
|
||||
Colin Plumb
|
||||
Eric Rescorla, RTFM Inc. <ekr@rtfm.com>
|
||||
Frederik Riedel, Frogg GmbH <frederik.riedel@frogg.io>
|
||||
Giji Gangadharan <giji.g@samsung.com>
|
||||
Graham Yoakum <gyoakum@skobalt.com>
|
||||
Hugues Ekra <hekra01@gmail.com>
|
||||
Jake Hilton <jakehilton@gmail.com>
|
||||
James H. Brown <jbrown@burgoyne.com>
|
||||
Jiawei Ou <jiawei.ou@gmail.com>
|
||||
|
@ -16,6 +16,8 @@
|
||||
rtc::scoped_refptr<webrtc::AudioSourceInterface> _nativeAudioSource;
|
||||
}
|
||||
|
||||
@synthesize volume = _volume;
|
||||
|
||||
- (instancetype)initWithNativeAudioSource:
|
||||
(rtc::scoped_refptr<webrtc::AudioSourceInterface>)nativeAudioSource {
|
||||
RTC_DCHECK(nativeAudioSource);
|
||||
@ -38,6 +40,11 @@
|
||||
return [NSString stringWithFormat:@"RTCAudioSource( %p ): %@", self, stateString];
|
||||
}
|
||||
|
||||
- (void)setVolume:(double)volume {
|
||||
_volume = volume;
|
||||
_nativeAudioSource->SetVolume(volume);
|
||||
}
|
||||
|
||||
#pragma mark - Private
|
||||
|
||||
- (rtc::scoped_refptr<webrtc::AudioSourceInterface>)nativeAudioSource {
|
||||
|
@ -20,6 +20,13 @@ RTC_EXPORT
|
||||
|
||||
- (instancetype)init NS_UNAVAILABLE;
|
||||
|
||||
// Sets the volume for the RTCMediaSource. |volume] is a gain value in the range
|
||||
// [0, 10].
|
||||
// Temporary fix to be able to modify volume of remote audio tracks
|
||||
// TODO: property stays here temporarily until a proper volume-api is avaialble
|
||||
// on the surface exposed by webrtc
|
||||
@property(nonatomic, assign) double volume;
|
||||
|
||||
@end
|
||||
|
||||
NS_ASSUME_NONNULL_END
|
||||
|
Reference in New Issue
Block a user