107 Commits

Author SHA1 Message Date
ivoc
d66b44d565 Reland "Added option to specify a maximum file size when recording an AEC dump.", commit ae2c5ad12afc8cc29fe9c59dea432b697b871a87.
The revert of the original CL was commit 36d4c545007129446e551c45c17b25377dce89a4.
Original review: https://codereview.webrtc.org/1413483003/

The original CL changes a function on audio_processing.h that is used by Chrome, this CL adds back the old function.

TBR=glaznev@webrtc.org, henrik.lundin@webrtc.org, solenberg@google.com, henrikg@webrtc.org, perkj@webrtc.org
BUG=webrtc:4741
Committed: https://crrev.com/f4f5cb09277d5ef6aeac8341e5f54a055867803a
Cr-Commit-Position: refs/heads/master@{#11093}

Review URL: https://codereview.webrtc.org/1540103002

Cr-Commit-Position: refs/heads/master@{#11267}
2016-01-15 11:06:41 +00:00
deadbeef
2d110be77f Revert of Storing raw audio sink for default audio track. (patchset #7 id:120001 of https://codereview.chromium.org/1551813002/ )
Reason for revert:
tommi pointed out that using a refptr for the sink may cause issues. Will reland with a slightly different approach.

Original issue's description:
> Storing raw audio sink for default audio track.
>
> BUG=webrtc:5250
>
> Committed: https://crrev.com/e591f9377f33f3f725a30faecd1bef1a71fa6b99
> Cr-Commit-Position: refs/heads/master@{#11230}

TBR=pthatcher@webrtc.org,solenberg@webrtc.org,pbos@webrtc.org,tommi@webrtc.org
# Skipping CQ checks because original CL landed less than 1 days ago.
NOPRESUBMIT=true
NOTREECHECKS=true
NOTRY=true
BUG=webrtc:5250

Review URL: https://codereview.webrtc.org/1588693002

Cr-Commit-Position: refs/heads/master@{#11241}
2016-01-13 20:00:29 +00:00
deadbeef
e591f9377f Storing raw audio sink for default audio track.
BUG=webrtc:5250

Review URL: https://codereview.webrtc.org/1551813002

Cr-Commit-Position: refs/heads/master@{#11230}
2016-01-13 00:45:33 +00:00
ivoc
a4df27b671 Revert of Reland "Added option to specify a maximum file size when recording an AEC dump." (patchset #2 id:20001 of https://codereview.webrtc.org/1541633002/ )
Reason for revert:
Compile error on Android needs to be fixed before relanding.

Original issue's description:
> Reland "Added option to specify a maximum file size when recording an AEC dump.", commit ae2c5ad12afc8cc29fe9c59dea432b697b871a87.
>
> The revert of the original CL was commit 36d4c545007129446e551c45c17b25377dce89a4.
> Original review: https://codereview.webrtc.org/1413483003/
>
> The original CL changes a function on audio_processing.h that is used by Chrome, this CL adds back the old function.
>
> NOTRY=true
> TBR=glaznev@webrtc.org, henrik.lundin@webrtc.org, solenberg@google.com, henrikg@webrtc.org, perkj@webrtc.org
> BUG=webrtc:4741
>
> Committed: https://crrev.com/f4f5cb09277d5ef6aeac8341e5f54a055867803a
> Cr-Commit-Position: refs/heads/master@{#11093}

TBR=glaznev@webrtc.org,henrik.lundin@webrtc.org,solenberg@google.com,henrikg@webrtc.org,perkj@webrtc.org,kwiberg@webrtc.org
NOPRESUBMIT=true
NOTREECHECKS=true
NOTRY=true
BUG=webrtc:4741

Review URL: https://codereview.webrtc.org/1537213002

Cr-Commit-Position: refs/heads/master@{#11094}
2015-12-19 18:14:18 +00:00
ivoc
f4f5cb0927 Reland "Added option to specify a maximum file size when recording an AEC dump.", commit ae2c5ad12afc8cc29fe9c59dea432b697b871a87.
The revert of the original CL was commit 36d4c545007129446e551c45c17b25377dce89a4.
Original review: https://codereview.webrtc.org/1413483003/

The original CL changes a function on audio_processing.h that is used by Chrome, this CL adds back the old function.

NOTRY=true
TBR=glaznev@webrtc.org, henrik.lundin@webrtc.org, solenberg@google.com, henrikg@webrtc.org, perkj@webrtc.org
BUG=webrtc:4741

Review URL: https://codereview.webrtc.org/1541633002

Cr-Commit-Position: refs/heads/master@{#11093}
2015-12-19 18:02:39 +00:00
ivoc
36d4c54500 Revert of Added option to specify a maximum file size when recording an AEC dump. (patchset #5 id:120001 of https://codereview.webrtc.org/1413483003/ )
Reason for revert:
Breaks Chrome-FYI bots because of a change in the StartDebugRecording function in audio_processing.h, that is called from Chrome.

Original issue's description:
> Added option to specify a maximum file size when recording an AEC dump.
>
> For applications with a strict filesize limit for debug files,
> I added an option to specify a maximum filesize for AEC dumps. An
> existing unit test is extended to check that the feature works as
> advertised.
>
> BUG=webrtc:4741
> TBR=glaznev@webrtc.org
>
> Committed: https://crrev.com/ae2c5ad12afc8cc29fe9c59dea432b697b871a87
> Cr-Commit-Position: refs/heads/master@{#11081}

TBR=pthatcher@webrtc.org,henrik.lundin@webrtc.org,henrikg@webrtc.org,solenberg@webrtc.org,andrew@webrtc.org,kwiberg@webrtc.org,perkj@webrtc.org,glaznev@webrtc.org
NOPRESUBMIT=true
NOTREECHECKS=true
NOTRY=true
BUG=webrtc:4741

Review URL: https://codereview.webrtc.org/1533913004

Cr-Commit-Position: refs/heads/master@{#11087}
2015-12-18 16:05:21 +00:00
ivoc
ae2c5ad12a Added option to specify a maximum file size when recording an AEC dump.
For applications with a strict filesize limit for debug files,
I added an option to specify a maximum filesize for AEC dumps. An
existing unit test is extended to check that the feature works as
advertised.

BUG=webrtc:4741
TBR=glaznev@webrtc.org

Review URL: https://codereview.webrtc.org/1413483003

Cr-Commit-Position: refs/heads/master@{#11081}
2015-12-18 11:53:42 +00:00
Tommi
f888bb58da Support for unmixed remote audio into tracks.
BUG=chromium:121673
R=solenberg@webrtc.org

Review URL: https://codereview.webrtc.org/1505253004 .

Cr-Commit-Position: refs/heads/master@{#10995}
2015-12-12 00:37:14 +00:00
solenberg
246b8171a6 Refactor handling of AudioOptions.
- Remove MediaEngineInterface::GetAudioOptions(), SetAudioOptions() and SetSoundDevices().
- Remove the WebRtcVoiceEngine infrastructure for those calls.

BUG=webrtc:4690
TBR=pthatcher@webrtc.org

Review URL: https://codereview.webrtc.org/1500633002

Cr-Commit-Position: refs/heads/master@{#10938}
2015-12-08 17:50:33 +00:00
Stefan Holmer
9d69c3f4d9 Return a copy of the supported RTP header extensions instead of a reference.
This also renames the method to better reflect what it does.

BUG=webrtc:5187
R=pbos@webrtc.org, pthatcher@webrtc.org

Review URL: https://codereview.webrtc.org/1486123002 .

Cr-Commit-Position: refs/heads/master@{#10910}
2015-12-07 09:45:49 +00:00
Fredrik Solenberg
b572768efb - Remove calls to VoEDtmf from WVoE/MC.
- Flatten logic and make the relevant calls on VoE::Channel from AudioSendStream::SendTelephoneEvent().
- Store current payload type for telephone events in WVoMC, instead of setting it on the Channel. This should be refactored to be an AudioSendStream::Config parameter when we redo WVoMC::SetSendCodecs().

BUG=webrtc:4690
R=pthatcher@webrtc.org, tina.legrand@webrtc.org

Review URL: https://codereview.webrtc.org/1491743004 .

Cr-Commit-Position: refs/heads/master@{#10895}
2015-12-04 14:22:30 +00:00
solenberg
1d63dd0eaa - Remove cricket::VoiceChannel::PressDtmf(); AFAICT unused.
- Remove the DF_PLAY/DF_SEND flags, only allow sending.

BUG=webrtc:4690

Review URL: https://codereview.webrtc.org/1487393002

Cr-Commit-Position: refs/heads/master@{#10872}
2015-12-02 20:35:14 +00:00
solenberg
26c8c91de2 Using Rent-A-Codec for static Codec access in WVoE/MC.
Mostly moved code around in WebRtcVoiceEngine:
- Added new internal class WebRtcVoiceCodecs for static codec functions and the CodecPrefs.
- ConstructCodecs() -> WebRtcVoiceCodecs::SupportedCodecs().
- FindWebRtcCodec -> WebRtcVoiceCodecs::ToCodecInst().
- WebRtcVoiceMediaChannel::SetRecvCodecsInternal() folded into WebRtcVoiceMediaChannel::SetRecvCodecs() (slight logic change).
- Change to how SetRecPayloadType() is implemented in fakewebrtcvoiceengine.h (lines 460-470).

BUG=webrtc:4690

Review URL: https://codereview.webrtc.org/1461333002

Cr-Commit-Position: refs/heads/master@{#10819}
2015-11-27 12:00:31 +00:00
solenberg
bd13838ccc Remove SetVideoLogging/SetAudioLogging from ChannelManager and down the stack.
BUG=webrtc:4690

Review URL: https://codereview.webrtc.org/1457653003

Cr-Commit-Position: refs/heads/master@{#10734}
2015-11-21 00:08:11 +00:00
solenberg
7add058439 Move some receive stream configuration into webrtc::AudioReceiveStream.
Simplify creation of VoE channels and Call streams in WVoMC.

BUG=webrtc:4690

Review URL: https://codereview.webrtc.org/1454073002

Cr-Commit-Position: refs/heads/master@{#10731}
2015-11-20 17:59:40 +00:00
solenberg
3a94154035 Move some send stream configuration into webrtc::AudioSendStream.
BUG=webrtc:4690

Review URL: https://codereview.webrtc.org/1418503010

Cr-Commit-Position: refs/heads/master@{#10652}
2015-11-16 15:34:59 +00:00
solenberg
8093d5442e Change default SSRC for RTCP receiver reports to not collide with video.
BUG=chromium:547661
TBR=pthatcher@webrtc.org

Review URL: https://codereview.webrtc.org/1438183002

Cr-Commit-Position: refs/heads/master@{#10621}
2015-11-12 14:02:35 +00:00
Karl Wiberg
be57983f4b Rename Maybe to Optional
And add examples of good and bad usage to the documentation.

R=aluebs@webrtc.org, henrik.lundin@webrtc.org, pthatcher@webrtc.org

Review URL: https://codereview.webrtc.org/1432553007 .

Cr-Commit-Position: refs/heads/master@{#10588}
2015-11-10 21:34:32 +00:00
solenberg
566ef247b9 Move VoiceEngineObserver into AudioSendStream so that we detect typing noises and return properly in GetStats().
BUG=webrtc:4690

Review URL: https://codereview.webrtc.org/1403363003

Cr-Commit-Position: refs/heads/master@{#10548}
2015-11-06 23:34:58 +00:00
kwiberg
102c6a61bc Replace rtc:🦗:Settable with rtc::Maybe
The former is very similar to the latter, but less general (mostly in
naming).

This CL, which is the first to use Maybe at scale, also removes the implicit conversion from T to Maybe<T>, since it was agreed that the increased verbosity increased legibility.

Review URL: https://codereview.webrtc.org/1430433004

Cr-Commit-Position: refs/heads/master@{#10461}
2015-10-30 09:47:44 +00:00
ivoc
797ef12324 Added StopAecDump function to PeerConnectionFactory.
The function to stop recording an AEC dump was missing from the PeerConnectionFactory interface (only a start function was provided). This CL adds the missing stop function.

BUG=webrtc:4741

Review URL: https://codereview.webrtc.org/1415733005

Cr-Commit-Position: refs/heads/master@{#10372}
2015-10-22 10:25:45 +00:00
solenberg
c96df779b0 - Introduce internal classes WebRtcAudio[Send|Receive]Stream in WebRtcVoiceMediaChannel.
- Remove WebRtcVoiceMediaChannel::WebRtcVoiceChannelRenderer
- Create webrtc::AudioSendStreams.

BUG=webrtc:4690

Review URL: https://codereview.webrtc.org/1415563003

Cr-Commit-Position: refs/heads/master@{#10361}
2015-10-21 20:02:00 +00:00
solenberg
0a617e22a4 Remove the default send channel in WVoE.
BUG=webrtc:4690

Review URL: https://codereview.webrtc.org/1364643003

Cr-Commit-Position: refs/heads/master@{#10344}
2015-10-20 22:49:45 +00:00
ivoc
112a3d81db Added functions on libjingle API to start and stop the recording of an RtcEventLog.
BUG=webrtc:4741

Review URL: https://codereview.webrtc.org/1374253002

Cr-Commit-Position: refs/heads/master@{#10297}
2015-10-16 09:22:23 +00:00
stefan
c1aeaf0dc3 Wire up packet_id / send time callbacks to webrtc via libjingle.
BUG=webrtc:4173

Review URL: https://codereview.webrtc.org/1363573002

Cr-Commit-Position: refs/heads/master@{#10289}
2015-10-15 14:26:17 +00:00
solenberg
1ac561447e Remove default receive channel from WVoE; baby step 3.
Get rid of default receive channel.

BUG=webrtc:4690

Review URL: https://codereview.webrtc.org/1385893002

Cr-Commit-Position: refs/heads/master@{#10262}
2015-10-13 10:58:25 +00:00
solenberg
8fb30c328b Remove default receive channel from WVoE; baby step 2.
Rename voe_channel_ to default_send_channel_id_.

BUG=webrtc:4690

Review URL: https://codereview.webrtc.org/1388733002

Cr-Commit-Position: refs/heads/master@{#10261}
2015-10-13 10:07:07 +00:00
solenberg
d4cec0d8fa Remove MediaChannel::SetRemoteRenderer().
This is following discussion in: https://codereview.webrtc.org/1385893002/diff/60001/talk/media/webrtc/webrtcvoiceengine.cc#newcode2410

BUG=webrtc:4690

Review URL: https://codereview.webrtc.org/1398823003

Cr-Commit-Position: refs/heads/master@{#10237}
2015-10-09 15:55:54 +00:00
solenberg
4bac9c53da Change SetOutputScaling to set a single level, not left/right levels.
BUG=webrtc:4690

Review URL: https://codereview.webrtc.org/1397773002

Cr-Commit-Position: refs/heads/master@{#10234}
2015-10-09 09:32:58 +00:00
Peter Boström
0c4e06b4c6 Use suffixed {uint,int}{8,16,32,64}_t types.
Removes the use of uint8, etc. in favor of uint8_t.

BUG=webrtc:5024
R=henrik.lundin@webrtc.org, henrikg@webrtc.org, perkj@webrtc.org, solenberg@webrtc.org, stefan@webrtc.org, tina.legrand@webrtc.org

Review URL: https://codereview.webrtc.org/1362503003 .

Cr-Commit-Position: refs/heads/master@{#10196}
2015-10-07 10:23:32 +00:00
solenberg
d97ec30ce4 Remove default receive channel from WVoE; baby step 0.
Cleanup + add thread checker DCHECKs to various method in WebRtcVoiceEngine/MediaChannel.

BUG=webrtc:4690

Review URL: https://codereview.webrtc.org/1386653002

Cr-Commit-Position: refs/heads/master@{#10194}
2015-10-07 08:40:38 +00:00
stefan
1d8a506405 Add a PacketOptions struct to webrtc::Transport.
This allows us to pass packet meta data, such as transport sequence
number, to libjingle and further down to the socket implementation. A
similar struct already exist in libjingle, see rtc::PacketOptions in asyncpacketsocket.h.

BUG=4173

Review URL: https://codereview.webrtc.org/1376673004

Cr-Commit-Position: refs/heads/master@{#10144}
2015-10-02 10:39:40 +00:00
solenberg
5b14b42e93 Remove unused SignalMediaError and infrastructure.
BUG=webrtc:4690

Review URL: https://codereview.webrtc.org/1362913004

Cr-Commit-Position: refs/heads/master@{#10133}
2015-10-01 11:10:40 +00:00
solenberg
dfc8f4ff87 Change 'mute' parameter of MediaChannel::SetAudioSend()/SetVideoSend() to 'enable'.
BUG=webrtc:4690

Review URL: https://codereview.webrtc.org/1378513003

Cr-Commit-Position: refs/heads/master@{#10130}
2015-10-01 09:32:41 +00:00
solenberg
63b345441a Simplify handling of options in WebRtcVoiceMediaEngine.
Also removes unnecessary typedef ChannelList.

BUG=webrtc:4690

Review URL: https://codereview.webrtc.org/1364753002

Cr-Commit-Position: refs/heads/master@{#10107}
2015-09-29 13:06:36 +00:00
pbos
2d566686a2 Unify Transport and newapi::Transport interfaces.
BUG=webrtc:1695
R=stefan@webrtc.org
TBR=mflodman@webrtc.org

Review URL: https://codereview.webrtc.org/1369263002

Cr-Commit-Position: refs/heads/master@{#10096}
2015-09-28 16:59:36 +00:00
solenberg
4a3ccad29e Remove SetAudioDelayOffset() and friends.
BUG=webrtc:4690

Review URL: https://codereview.webrtc.org/1364093002

Cr-Commit-Position: refs/heads/master@{#10047}
2015-09-24 10:53:14 +00:00
solenberg
61e933eac7 Remove ChannelManager::GetCapabilities()
BUG=webrtc:4690

Review URL: https://codereview.webrtc.org/1364083002

Cr-Commit-Position: refs/heads/master@{#10045}
2015-09-24 08:45:41 +00:00
Peter Boström
d5c75b1a0b Reduce LS_INFO spam from voice_engine/.
Removes ShouldIgnoreTrace from WebRtcVoiceEngine and removes the spammy
log instances instead. Also removes trace-style logging from getters
(::GetLocalSSRC() for instance would print what SSRC it got, spamming
the log).

BUG=
R=henrika@webrtc.org

Review URL: https://codereview.webrtc.org/1347353004 .

Cr-Commit-Position: refs/heads/master@{#10028}
2015-09-23 11:24:43 +00:00
Fredrik Solenberg
7d173362d0 Remove the [Un]RegisterVoiceProcessor() API.
BUG=webrtc:4690
R=pthatcher@webrtc.org

Review URL: https://codereview.webrtc.org/1361633002 .

Cr-Commit-Position: refs/heads/master@{#10027}
2015-09-23 10:23:31 +00:00
Fredrik Solenberg
09677342ae Remove VoEFile from VoeWrapper and the remaining places in libjingle where it was being used.
BUG=webrtc:4690
R=pbos@webrtc.org

Review URL: https://codereview.webrtc.org/1360773002 .

Cr-Commit-Position: refs/heads/master@{#10026}
2015-09-23 10:05:47 +00:00
solenberg
c1a1b353ec Remove the SetLocalMonitor() API.
BUG=webrtc:4690

Review URL: https://codereview.webrtc.org/1344083004

Cr-Commit-Position: refs/heads/master@{#10020}
2015-09-22 20:31:28 +00:00
solenberg
22011c1b54 Remove Channel::SetRingbackTone() and Channel::PlayRingbackTone(), and the code beneath it (within libjingle).
BUG=webrtc:4690
TBR=juberti

Review URL: https://codereview.webrtc.org/1325023005

Cr-Commit-Position: refs/heads/master@{#10011}
2015-09-22 10:12:49 +00:00
Peter Boström
ac547a6538 Remove channel ids from various interfaces.
Starts by removing channel/engine id from ViEChannel which propagates
down to the RTP/RTCP module as well as the transport class.

IncomingVideoStream::RenderFrame() is untouched for now but receives a
fake id instead of the previous channel id. Added a TODO to remove it
later but the RenderFrame call is implemented in a lot of
platform-dependent files and should probably remove the "manager" aspect
of renderers, so preferring to do it separately

BUG=webrtc:1695
R=henrika@webrtc.org, mflodman@webrtc.org

Review URL: https://codereview.webrtc.org/1335353005 .

Cr-Commit-Position: refs/heads/master@{#9978}
2015-09-17 21:06:02 +00:00
Fredrik Solenberg
b071a19019 Full use of NnChannel::SetSendParameters and NnChannel::SetRecvParameters.
SetOptions(), SetMaxBandwidth(), Set[Send|Recv]RtpHeaderExtensions(), Set[Send|Recv]Codecs() are now private.

BUG=webrtc:4690
R=pbos@webrtc.org, pthatcher@webrtc.org

Review URL: https://codereview.webrtc.org/1327933002 .

Cr-Commit-Position: refs/heads/master@{#9973}
2015-09-17 14:43:06 +00:00
Fredrik Solenberg
709ed67c38 Move instantiation of webrtc::Call into a MediaController class so that it can be used for both audio and video media channels.
I'm not super happy with the GetVoE() function added on MediaEngineInterface, but this will eventually be gone, once webrtc::Call owns the shared VoE state (or initially, maps ADM* to an implicitly created VoE).

BUG=webrtc:4690
R=pbos@webrtc.org, pthatcher@webrtc.org

Review URL: https://codereview.webrtc.org/1269863005 .

Cr-Commit-Position: refs/heads/master@{#9939}
2015-09-15 10:26:45 +00:00
solenberg
1dd98f3219 - Rename VoiceChannel::MuteStream() -> SetAudioSend() (incl. media channel)
- Rename VideoChannel::MuteStream() -> SetVideoSend() (incl. media channel)
- Collapse NnChannel::SetChannelOptions() into the above.
- Collapse VoiceChannel::SetLocalRenderer into SetAudioSend().

BUG=webrtc:4690

Review URL: https://codereview.webrtc.org/1311533009

Cr-Commit-Position: refs/heads/master@{#9915}
2015-09-10 08:57:20 +00:00
solenberg
66f43392a3 Remove [Voice|Video]MediaChannel::GetOptions().
BUG=webrtc:4690

Review URL: https://codereview.webrtc.org/1324853003

Cr-Commit-Position: refs/heads/master@{#9904}
2015-09-09 08:36:31 +00:00
solenberg
bb741b3afa Remove GetOutputScaling from VoiceMediaChannel.
BUG=webrtc:4690

Review URL: https://codereview.webrtc.org/1331443003

Cr-Commit-Position: refs/heads/master@{#9870}
2015-09-07 10:56:45 +00:00
Fredrik Solenberg
af9fb21886 - Use C++11 loops in WebRtcVoiceMediaEngine/Channel.
- Pull out part of WebRtcVoiceMediaChannel::SetRecvCodecs() into WebRtcVoiceMediaChannel::SetRecvCodecsInternal().

BUG=webrtc:4690
R=pbos@webrtc.org

Review URL: https://codereview.webrtc.org/1291343002 .

Cr-Commit-Position: refs/heads/master@{#9785}
2015-08-26 08:46:05 +00:00