We soon want to be able to pass in a new type of video codec factories, see issue 7925 for more information. We currently plumb these video codec factories in a clumsy way from the media engine to the video engine, which will require us to update a lot of places when we add new video codec factory types. This CL cleans up the way we pass in video codec factories to make it easier to add the new factory types. In particular, this CL: * Updates WebRtcVideoEngine to take the video codec factories as arguments in ctor instead of in SetExternalVideoCodec functions. * Remove the Init() function from the vidoe engines - this function is not used. * Update CompositeMediaEngine to take generic variadic arguments, so we can send different arguments for different engines, without having to update this class. * Simplify ownership of video codec factories in WebRtcVideoEngine. WebRtcVideoEngine outlives WebRtcVideoChannel, WebRtcVideoSendStream and WebRtcVideoReceiveStream, so it can keep ownership without having to share ownership with these classes. BUG=webrtc:7925 Review-Url: https://codereview.webrtc.org/3008043002 Cr-Commit-Position: refs/heads/master@{#19794}
Name: WebRTC URL: http://www.webrtc.org Version: 90 License: BSD License File: LICENSE Description: WebRTC provides real time voice and video processing functionality to enable the implementation of PeerConnection/MediaStream. Third party code used in this project is described in the file LICENSE_THIRD_PARTY.