commit | 76d29f9bf8604a30e01f7cc0496297efbbeac51b | [log] [tgz] |
---|---|---|
author | ossu <ossu@webrtc.org> | Fri Jun 09 14:30:13 2017 |
committer | Commit Bot <commit-bot@chromium.org> | Fri Jun 09 14:30:13 2017 |
tree | 3124c4b21b141fee286b86aae282ac8e2f9e203b | |
parent | 7fdd0676f94ccce8563034f75faba24f3a60e09d [diff] |
Fix Channel::GetSendCodec when used together with SetEncoder. When using the SetEncoder interface, there's no actual CodecInst to return from Channel::GetSendCodec. Before this CL, this was done by calling the ACM, which has functionality for generating a CodecInst with the necessary values even when handed an external encoder. Unfortunately, this call takes a lock and does some extra processing which isn't strictly necessary in this case. Since GetSendCodec is called inside the audio input callback code, this can cause problems. This CL instead generates a CodecInst in the SetEncoder call and has GetSendCodec simply return that one if it's available. If it isn't the value from codec_manager_ is returned instead, as was the case before injectable audio codec related changes were added to Channel. BUG=b/38018041 Review-Url: https://codereview.webrtc.org/2924363004 Cr-Commit-Position: refs/heads/master@{#18515}
WebRTC is a free, open software project that provides browsers and mobile applications with Real-Time Communications (RTC) capabilities via simple APIs. The WebRTC components have been optimized to best serve this purpose.
Our mission: To enable rich, high-quality RTC applications to be developed for the browser, mobile platforms, and IoT devices, and allow them all to communicate via a common set of protocols.
The WebRTC initiative is a project supported by Google, Mozilla and Opera, amongst others.
See http://www.webrtc.org/native-code/development for instructions on how to get started developing with the native code.