Commit Graph

56 Commits

Author SHA1 Message Date
614d5b78d6 Move VideoEncoderSoftwareFallbackWrapper from webrtc/video_encoder.h to webrtc/media/engine/
The class VideoEncoderSoftwareFallbackWrapper is an implementation
detail of webrtc/media/engine/webrtcvideoengine2.cc and should not be
directly under webrtc/video_encoder.h. The main purpose is to improve
the dependency graph in WebRTC so that VideoEncoderSoftwareFallbackWrapper
can depend on cricket::VideoCodec.

The test for VideoEncoderSoftwareFallbackWrapper is also moved from
webrtc/video/video_encoder_unittest.cc to
webrtc/media/engine/videoencodersoftwarefallbackwrapper_unittest.cc.

BUG=webrtc:6337

Review-Url: https://codereview.webrtc.org/2484863009
Cr-Commit-Position: refs/heads/master@{#15085}
2016-11-15 14:31:01 +00:00
445fb8fa4f Use correct define in H264 end-to-end tests.
Right now, the H264 end-to-end tests are not run on the bots.

BUG=None

Review-Url: https://codereview.webrtc.org/2484913007
Cr-Commit-Position: refs/heads/master@{#15062}
2016-11-14 12:11:30 +00:00
13ceeeadfc Revert of H.264 packetization mode 0 (try 2) (patchset #27 id:520001 of https://codereview.webrtc.org/2337453002/ )
Reason for revert:
Broke a lot of tests in chromium.webrtc browser_tests. See e.g. https://build.chromium.org/p/chromium.webrtc/builders/Mac%20Tester/builds/62228 and https://build.chromium.org/p/chromium.webrtc/builders/Win8%20Tester/builds/30102.
[ RUN      ] WebRtcVideoQualityBrowserTests/WebRtcVideoQualityBrowserTest.MANUAL_TestVideoQualityH264/1
...
#
# Fatal error in e:\b\c\b\win_builder\src\third_party\webrtc\modules\rtp_rtcp\source\rtp_format_h264.cc, line 170
# last system error: 0
# Check failed: packetization_mode_ == kH264PacketizationMode1 (0 vs. 2)
#

Original issue's description:
> Implement H.264 packetization mode 0.
>
> This approach extends the H.264 specific information with
> a packetization mode enum.
>
> Status: Parameter is in code. No way to set it yet.
>
> Rebase of CL  2009213002
>
> BUG=600254
>
> Committed: https://crrev.com/3bba101f36483b8030a693dfbc93af736d1dba68
> Cr-Commit-Position: refs/heads/master@{#15032}

TBR=hbos@webrtc.org,sprang@webrtc.org,mflodman@webrtc.org,hta@webrtc.org
# Not skipping CQ checks because original CL landed more than 1 days ago.
BUG=600254
NOPRESUBMIT=true

Review-Url: https://codereview.webrtc.org/2500743002
Cr-Commit-Position: refs/heads/master@{#15050}
2016-11-12 16:54:50 +00:00
hta
3bba101f36 Implement H.264 packetization mode 0.
This approach extends the H.264 specific information with
a packetization mode enum.

Status: Parameter is in code. No way to set it yet.

Rebase of CL  2009213002

BUG=600254

Review-Url: https://codereview.webrtc.org/2337453002
Cr-Commit-Position: refs/heads/master@{#15032}
2016-11-11 05:50:05 +00:00
bf6a45b442 Moved transport_adapter.h/.cc from call/ to video/ dir to remove circular dependency
Issue: video_receive_stream.cc includes transport_adapter.h which use to be inside call/ and call depends on video/ which caused circular dependency. We moved transport_adapter.h/.cc inside video/ and removed dependency of video/ on call/

BUG=webrtc:6412
NOTRY=True

Review-Url: https://codereview.webrtc.org/2470913004
Cr-Commit-Position: refs/heads/master@{#14907}
2016-11-03 11:21:47 +00:00
e5ba44eab1 Implement framesDecoded stat in video receive ssrc stats.
Implemented as defined by this pull request: https://github.com/w3c/webrtc-stats/pull/70

BUG=webrtc:6541

Review-Url: https://codereview.webrtc.org/2423823003
Cr-Commit-Position: refs/heads/master@{#14789}
2016-10-26 14:09:29 +00:00
a3cac0514a GN: move webrtc/video/ targets from webrtc/BUILD.gn into webrtc/video/BUILD.gn
Move the following targets into webrtc/video/BUILD.gn:
* screenshare_loopback
* video_quality_test
* video_loopback

Add new target 'run_tests' in webrtc/test/BUILD.gn, being used by two
of the above and make then depend on that instead.

BUG=webrtc:6440
NOTRY=True

Review-Url: https://codereview.webrtc.org/2438973002
Cr-Commit-Position: refs/heads/master@{#14735}
2016-10-24 09:09:40 +00:00
e40a7ee007 GN: Exclude suppressions of Chromium Clang warnings for Chromium builds.
These suppressions are causing GN errors when Chromium targets are depending
directly on WebRTC targets (needed for https://codereview.chromium.org/2413103004)

BUG=webrtc:4256
NOTRY=True

Review-Url: https://codereview.webrtc.org/2408133008
Cr-Commit-Position: refs/heads/master@{#14644}
2016-10-17 06:56:20 +00:00
ae04e36f56 Cleanup unused dependency on video_capture_module.
BUG=none

TBR=mflodman@webrtc.org

Review-Url: https://codereview.webrtc.org/2401613002
Cr-Commit-Position: refs/heads/master@{#14561}
2016-10-07 07:13:26 +00:00
15d8357bab Remove OnLocalSsrcChanged and rename EncoderStateFeedback.
The renaming is to reflect this class is only used for RTCP interaction
and not for other transports.

This Cl will be followed by multiple CLs moving all send-side RTP
functionality to a separate class, rtp module ownership away from
VideoSendStream and use TaskQueue instead of ProcessThread for RTP.

BUG=webrtc:6456

Review-Url: https://codereview.webrtc.org/2390463002
Cr-Commit-Position: refs/heads/master@{#14556}
2016-10-06 15:35:19 +00:00
cc91d284e4 Moved RtcEventLog files from call/ to logging/
The RtcEventLog headers need to be accessible from any place which needs
logging, and the implementation needs access to data structures that are
logged.

After a discussion in the code review, we all agreed to move the RtcEventLog implementation into its own top level directory - which I called "logging/" in expectation that other types of logging may have similar requirements. The directory contains two main build targets - "rtc_event_log_api", which is just rtc_event_log.h, that has no external dependencies and can be used from anywhere, and "rtc_event_log_impl" which contains the rest of the implementation and has many dependencies (more in the future).

The "api" target can be referenced from anywhere, while the "impl" target is only needed at the place of instantiation (currently Call, soon to be moved to PeerConnection by https://codereview.webrtc.org/2353033005/).

This change allows using RtcEventLog in the p2p/ directory, so that we
can log STUN pings and ICE state transitions.

BUG=webrtc:6393
R=kjellander@webrtc.org, kwiberg@webrtc.org, solenberg@webrtc.org, stefan@webrtc.org, terelius@webrtc.org

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

Cr-Commit-Position: refs/heads/master@{#14485}
2016-10-04 01:31:32 +00:00
89a3a1a363 Moved Gn target rtc_event_log to one directory above.
This is done to ensure GN targets are placed in the same directory as of the source files.

BUG=webrtc:6412
NOTRY=True

Review-Url: https://codereview.webrtc.org/2365383004
Cr-Commit-Position: refs/heads/master@{#14411}
2016-09-28 07:49:04 +00:00
b62dbbe985 GN: Change rtc_source_set targets --> rtc_static_library
This changes most non-test related rtc_source_set targets to be
rtc_static_library instead. Targets without any .cc files are excluded.
This should bring back the build behavior we used to have with GYP
(i.e. same symbols exported in the libjingle_peerconnection.a file, which
are used by some downstream projects).

After doing an Android build with these changes:
$ nm --defined-only -g -C out/Release/lib.unstripped/libjingle_peerconnection_so.so | grep -i createpeerconnectionf
00077c51 T Java_org_webrtc_PeerConnectionFactory_nativeCreatePeerConnectionFactory
$ nm --defined-only -g -C out/Release/obj/webrtc/api/libjingle_peerconnection.a | grep -i createpeerconnectionf
00000001 T webrtc::CreatePeerConnectionFactory(rtc::Thread*, rtc::Thread*, rtc::Thread*, webrtc::AudioDeviceModule*, cricket::WebRtcVideoEncoderFactory*, cricket::WebRtcVideoDecoderFactory*)
00000001 T webrtc::CreatePeerConnectionFactory()

See https://chromium.googlesource.com/chromium/src/+/master/tools/gn/docs/cookbook.md#Note-on-static-libraries
for more details on this.

NOTICE: This should be further cleaned up in the future, to reduce
binary bloat and unnecessary linking time. Right now it's more
important to restore the desired build output though.

BUG=webrtc:6410, chromium:630755

Review-Url: https://codereview.webrtc.org/2361623004
Cr-Commit-Position: refs/heads/master@{#14364}
2016-09-23 07:38:58 +00:00
e9cc686293 GN Templates: Move common_inherited_config to the template.
Remove common_inherited_config from the targets and add it to the
template instead.

BUG=webrtc:6187
NOTRY=True

Review-Url: https://codereview.webrtc.org/2311843002
Cr-Commit-Position: refs/heads/master@{#14069}
2016-09-05 13:10:23 +00:00
7a2ce0b738 GN Templates: Move common_config to the template.
Remove common_config from the targets' config and add
it to the template instead.

BUG=webrtc:6187
NOTRY=True

Review-Url: https://codereview.webrtc.org/2300413002
Cr-Commit-Position: refs/heads/master@{#14063}
2016-09-05 08:35:48 +00:00
38a2132b02 GN: Introduce templates.
Defines the rtc_executable, rtc_source_set, rtc_test and
rtc_static_library templates.

These templates provide no functionality yet, but will enable common
configuration to be introduced, avoiding repetition in every target

Changes summary:
- Prepend rtc_ to test, source_set, executable and static_library targets
- Change "configs -= [" to "suppressed_configs += ["
- Include webrtc/build/webrtc.gni where it wasn't included yet
- Delete import("//testing/test.gni"), since rtc_test makes it unnecessary.

BUG=webrtc:6187
TBR=henrik.lundin@webrtc.org,tommi@webrtc.org
NOTRY=True

Review-Url: https://codereview.webrtc.org/2301053002
Cr-Commit-Position: refs/heads/master@{#14043}
2016-09-02 11:10:41 +00:00
26091b1118 This reverts commit 8eb37a39e79fe1098d3503dcb8c8c2d196203fed. Chrome now have its own implementation of TaskQueues that is based on Chrome threads.
cl was originally reviewed here:
https://codereview.webrtc.org/2060403002/

- Add task queue to Call with the intent of replacing the use of one of the process threads.

- Split VideoSendStream in two. VideoSendStreamInternal is created and used on the new task queue.

- BitrateAllocator is now created on libjingle's worker thread but always used on the new task queue instead of both encoder threads and the process thread.

- VideoEncoderConfig and VideoSendStream::Config support move semantics.

- The encoder thread is moved from VideoSendStream to ViEEncoder. Frames are forwarded directly to ViEEncoder which is responsible for timestamping ? and encoding the frames.

TBR=mflodman@webrtc.org
BUG=webrtc:5687

Review-Url: https://codereview.webrtc.org/2250123002
Cr-Commit-Position: refs/heads/master@{#14014}
2016-09-01 08:17:43 +00:00
8eb37a39e7 Revert of Add task queue to Call. (patchset #42 id:840001 of https://codereview.webrtc.org/2060403002/ )
Reason for revert:
Failed on Win 10 Chrome FYI.

https://build.chromium.org/p/chromium.webrtc.fyi/builders/Win10%20Tester/builds/3847/steps/content_browsertests/logs/stdio

#
# Fatal error in e:\b\c\b\win_builder\src\third_party\webrtc\base\task_queue_win.cc, line 138
# last system error: 87
# Check failed: ((DWORD)0xFFFFFFFF) != result (4294967295 vs. 4294967295)
#

WebRtcBrowserTest

#

Original issue's description:
> - Add task queue to Call with the intent of replacing the use of one of the process threads.
>
> - Split VideoSendStream in two. VideoSendStreamInternal is created and used on the new task queue.
>
> - BitrateAllocator is now created on libjingle's worker thread but always used on the new task queue instead of both encoder threads and the process thread.
>
> - VideoEncoderConfig and VideoSendStream::Config support move semantics.
>
> - The encoder thread is moved from VideoSendStream to ViEEncoder. Frames are forwarded directly to ViEEncoder which is responsible for timestamping ? and encoding the frames.
>
> BUG=webrtc:5687
>
> Committed: https://crrev.com/cc168360f41322332860cb075edeb1cde21aa473
> Cr-Commit-Position: refs/heads/master@{#13767}

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

Review-Url: https://codereview.webrtc.org/2248713003
Cr-Commit-Position: refs/heads/master@{#13774}
2016-08-16 09:40:59 +00:00
cc168360f4 - Add task queue to Call with the intent of replacing the use of one of the process threads.
- Split VideoSendStream in two. VideoSendStreamInternal is created and used on the new task queue.

- BitrateAllocator is now created on libjingle's worker thread but always used on the new task queue instead of both encoder threads and the process thread.

- VideoEncoderConfig and VideoSendStream::Config support move semantics.

- The encoder thread is moved from VideoSendStream to ViEEncoder. Frames are forwarded directly to ViEEncoder which is responsible for timestamping ? and encoding the frames.

BUG=webrtc:5687

Review-Url: https://codereview.webrtc.org/2060403002
Cr-Commit-Position: refs/heads/master@{#13767}
2016-08-16 07:38:51 +00:00
4cd2790f17 Move RTP for synchroninzation and rename classes, files and variables.
This CL removes (almost) the last RTP references in VideoReceiveStream.
There are still references to RTPFragmentationHeader and SSRCs, which
will be dealt with later.

There are also new GUARDED_BY and thred checker added to the
synchronization class.

When there are othre transports than RTP, there will instead be an
interface + inheritance for RtpStreamReceiver and
RtpStreamSynchronizattion in VideoReceiveStream. This work will be done
when we actually know how we want to make thee transport interface.

BUG=webrtc:5838

Review-Url: https://codereview.webrtc.org/2216533002
Cr-Commit-Position: refs/heads/master@{#13655}
2016-08-05 13:28:50 +00:00
4e417b242a Reland of Switch to use SequencedTaskChecker instead of ThreadChecker where needed.
(patchset #1 id:1 of https://codereview.webrtc.org/2149553002/ )"
This reverts commit efd902cb1d9bbd81247a3e168f2080beae761d78.

Originally reviewed in https://codereview.webrtc.org/2149553002

The uptream problem should be fixed by https://codereview.webrtc.org/2145393003/

BUG=webrtc:5687
TBR=tommi@webrtc.org

Review-Url: https://codereview.webrtc.org/2152013002
Cr-Commit-Position: refs/heads/master@{#13483}
2016-07-15 06:36:00 +00:00
efd902cb1d Revert of Switch to use SequencedTaskChecker instead of ThreadChecker where needed. (patchset #1 id:1 of https://codereview.webrtc.org/2149553002/ )
Reason for revert:
Breaks Chrome FYI

https://build.chromium.org/p/chromium.webrtc.fyi/builders/Linux%20Builder/builds/8187/steps/compile/logs/stdio

Original issue's description:
> Switch to use SequencedTaskChecker instead of ThreadChecker where needed.
> This cl is in preparation for https://codereview.webrtc.org/2060403002/ Add task queue to Call.
> In the coming cl the video_sender, and i420_buffer_pool will be used on a task queue and therefore SequencedTaskChecker is needed instead of a ThreadChecker.
>
> BUG=webrtc:5687
>
> Committed: https://crrev.com/ec7cef854d85be2d9fd5b1a4e2c59a67feb662eb
> Cr-Commit-Position: refs/heads/master@{#13474}

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

Review-Url: https://codereview.webrtc.org/2150843003
Cr-Commit-Position: refs/heads/master@{#13475}
2016-07-14 09:33:25 +00:00
ec7cef854d Switch to use SequencedTaskChecker instead of ThreadChecker where needed.
This cl is in preparation for https://codereview.webrtc.org/2060403002/ Add task queue to Call.
In the coming cl the video_sender, and i420_buffer_pool will be used on a task queue and therefore SequencedTaskChecker is needed instead of a ThreadChecker.

BUG=webrtc:5687

Review-Url: https://codereview.webrtc.org/2149553002
Cr-Commit-Position: refs/heads/master@{#13474}
2016-07-14 08:32:09 +00:00
37ad337848 Remove EncodedFrameCallbackAdapter.
EncodedFrameCallbackAdapter was used VideoSendStream and
VideoReceiveStream, but there is no reason to have it as these classes
can call EncodedFrameObserver directly.

Review-Url: https://codereview.webrtc.org/2068463004
Cr-Commit-Position: refs/heads/master@{#13145}
2016-06-14 22:29:45 +00:00
0208322ee3 GN: Add video_engine_tests
Adds separate source_sets for the video_engine_tests subtargets inside
audio, call and video and merges them together into video_engine_tests.

BUG=webrtc:5949
R=kjellander@webrtc.org
TBR=mflodman@webrtc.org

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

Cr-Commit-Position: refs/heads/master@{#13127}
2016-06-14 10:53:09 +00:00
0e9d6d9e0c Add class which periodically computes statistics.
During a period (e.g. 2 seconds), different metrics can be computed, e.g.:
- average of samples
- percentage/permille of samples
- units per second

Each periodic metric can be either:
- reported to an observer each period
- aggregated during the call (e.g. min, max, average)

BUG=webrtc:5283

Review-Url: https://codereview.webrtc.org/1640053003
Cr-Commit-Position: refs/heads/master@{#12847}
2016-05-23 13:08:05 +00:00
cfc8e3b9ef Removed all RTP dependencies from ViEChannel and renamed class.
ViEChannel is now called VideoStreamReceiver.

There will be a follow up CL removing all rtp references from VideoReceiveStream, but that made this CL to big and it will be done separately.

BUG=webrtc:5079

Review-Url: https://codereview.webrtc.org/1929313002
Cr-Commit-Position: refs/heads/master@{#12619}
2016-05-04 04:22:12 +00:00
35151f35ec Add histogram stats for average send delay of sent packets for a sent video stream. The delay is measured from a packet is sent to the transport until leaving the socket.
- "WebRTC.Video.SendDelayInMs"

Change so that PacketOption packet id is always set in RtpSender (if having a TransportSequenceNumberAllocator).
Add SendDelayStats class for computing delays.
Add SendPacketObserver to RtpRtcp config and register SendDelayStats as observer.
Wire up OnSentPacket to SendDelayStats.

BUG=webrtc:5215

Review-Url: https://codereview.webrtc.org/1478253002
Cr-Commit-Position: refs/heads/master@{#12600}
2016-05-03 06:44:11 +00:00
b99395a544 Reland of Delete video_render module. (patchset #1 id:1 of https://codereview.webrtc.org/1923613003/ )
Reason for revert:
Chrome's build files have now been updated, see cl https://codereview.chromium.org/1929933002/

Original issue's description:
> Revert of Delete video_render module. (patchset #12 id:220001 of https://codereview.webrtc.org/1912143002/ )
>
> Reason for revert:
> This breaks every buildbot in chromium.webrtc.fyi and I don't see any roll in progress to address this (and I don't see how that would be possible either).
> Usage in Chrome: https://code.google.com/p/chromium/codesearch#search/&q=modules.gyp%3Avideo_render&sq=package:chromium&type=cs
>
> Example failures:
> https://build.chromium.org/p/chromium.webrtc.fyi/builders/Linux%20Builder/builds/5420
> https://build.chromium.org/p/chromium.webrtc.fyi/builders/Win%20Builder/builds/4526
>
> I think it's fine to delete our video_render_module_internal_impl target and those files, but video_render target needs to remain.
>
> Original issue's description:
> > Delete video_render module.
> >
> > BUG=webrtc:5817
> >
> > Committed: https://crrev.com/97cfd1ec05d07ef233356e57f7aa4b028b74ffba
> > Cr-Commit-Position: refs/heads/master@{#12526}
>
> TBR=mflodman@webrtc.org,pbos@webrtc.org,nisse@webrtc.org
> # Skipping CQ checks because original CL landed less than 1 days ago.
> NOPRESUBMIT=true
> NOTREECHECKS=true
> NOTRY=true
> BUG=webrtc:5817

TBR=mflodman@webrtc.org,pbos@webrtc.org,kjellander@webrtc.org
# Not skipping CQ checks because original CL landed more than 1 days ago.
BUG=webrtc:5817

Review-Url: https://codereview.webrtc.org/1929223003
Cr-Commit-Position: refs/heads/master@{#12556}
2016-04-29 07:58:48 +00:00
fa66659c6b Rename ViEReceiver and move ownership to VideoReceiveStream.
This CL will be followed up with another CL removing everything related
to RTP from ViEChannel to RtpStreamReceiver, i.e. remove ViEChannel::rtp_stream_receiver_.

BUG=5838

Review-Url: https://codereview.webrtc.org/1917363005
Cr-Commit-Position: refs/heads/master@{#12553}
2016-04-29 06:15:38 +00:00
0190367cea Revert of Delete video_render module. (patchset #12 id:220001 of https://codereview.webrtc.org/1912143002/ )
Reason for revert:
This breaks every buildbot in chromium.webrtc.fyi and I don't see any roll in progress to address this (and I don't see how that would be possible either).
Usage in Chrome: https://code.google.com/p/chromium/codesearch#search/&q=modules.gyp%3Avideo_render&sq=package:chromium&type=cs

Example failures:
https://build.chromium.org/p/chromium.webrtc.fyi/builders/Linux%20Builder/builds/5420
https://build.chromium.org/p/chromium.webrtc.fyi/builders/Win%20Builder/builds/4526

I think it's fine to delete our video_render_module_internal_impl target and those files, but video_render target needs to remain.

Original issue's description:
> Delete video_render module.
>
> BUG=webrtc:5817
>
> Committed: https://crrev.com/97cfd1ec05d07ef233356e57f7aa4b028b74ffba
> Cr-Commit-Position: refs/heads/master@{#12526}

TBR=mflodman@webrtc.org,pbos@webrtc.org,nisse@webrtc.org
# Skipping CQ checks because original CL landed less than 1 days ago.
NOPRESUBMIT=true
NOTREECHECKS=true
NOTRY=true
BUG=webrtc:5817

Review-Url: https://codereview.webrtc.org/1923613003
Cr-Commit-Position: refs/heads/master@{#12534}
2016-04-27 15:56:56 +00:00
97cfd1ec05 Delete video_render module.
BUG=webrtc:5817

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

Cr-Commit-Position: refs/heads/master@{#12526}
2016-04-27 09:52:27 +00:00
7ffeab525c Reland "Move webrtc/audio/audio_sink.h to webrtc/ and fix some dependencies."
This is a reland of https://codereview.webrtc.org/1737593002/ minus
the added missing headers in webrtc/{BUILD.gn,webrtc.gyp} and
webrtc/common.gyp that breaks GN in Chromium since it's using
the --check flag (which we should support).

BUG=webrtc:4243, webrtc:5589
TESTED=Tried generating GN files with --check in a Chromium checkout with this patch applied, successfully.
TBR=pbos@webrtc.org, perkj@webrtc.org, solenberg@webrtc.org, tommi@webrtc.org

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

Cr-Commit-Position: refs/heads/master@{#11794}
2016-02-26 21:46:22 +00:00
7324eb9e62 Revert of Move webrtc/audio/audio_sink.h to webrtc/ and fix some dependencies. (patchset #2 id:40001 of https://codereview.webrtc.org/1737593002/ )
Reason for revert:
Breaks GN in chromium.

Original issue's description:
> Move webrtc/audio/audio_sink.h to webrtc/ and fix some dependencies.
>
> webrtc/audio/audio_sink.h is used by voice engine, but webrtc/audio is
> depending on voice engine, resulting in a cyclic dependency (which we
> don't detect since we have that check turned off, see webrtc:4243).
>
> BUG=webrtc:4243, webrtc:5589
> R=pbos@webrtc.org, perkj@webrtc.org, solenberg@webrtc.org
> TBR=tommi@webrtc.org
>
> Committed: https://crrev.com/99b345c4e50c59a776c56949c17da3f50992f1a2
> Cr-Commit-Position: refs/heads/master@{#11766}

TBR=solenberg@webrtc.org,pbos@webrtc.org,perkj@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:4243, webrtc:5589

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

Cr-Commit-Position: refs/heads/master@{#11769}
2016-02-25 16:37:02 +00:00
99b345c4e5 Move webrtc/audio/audio_sink.h to webrtc/ and fix some dependencies.
webrtc/audio/audio_sink.h is used by voice engine, but webrtc/audio is
depending on voice engine, resulting in a cyclic dependency (which we
don't detect since we have that check turned off, see webrtc:4243).

BUG=webrtc:4243, webrtc:5589
R=pbos@webrtc.org, perkj@webrtc.org, solenberg@webrtc.org
TBR=tommi@webrtc.org

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

Cr-Commit-Position: refs/heads/master@{#11766}
2016-02-25 14:12:48 +00:00
7623ce4aeb Reland of Merge webrtc/video_engine/ into webrtc/video/ (patchset #2 id:300001 of https://codereview.webrtc.org/1507903005/ )
Reason for revert:
Bot breakage caused by TickTime::UseFakeClock has been removed.

Original issue's description:
> Revert of Merge webrtc/video_engine/ into webrtc/video/ (patchset #2 id:20001 of https://codereview.webrtc.org/1506773002/ )
>
> Reason for revert:
> Breaks Dr Memory Light https://build.chromium.org/p/client.webrtc/builders/Win%20DrMemory%20Light/builds/4643 and all the Android Tests bots.
>
> Original issue's description:
> > Merge webrtc/video_engine/ into webrtc/video/
> >
> > BUG=webrtc:1695
> > R=mflodman@webrtc.org
> >
> > Committed: https://crrev.com/03ef053202bc5d5ab43460eebf5403232f157646
> > Cr-Commit-Position: refs/heads/master@{#10926}
>
> TBR=mflodman@webrtc.org,pbos@webrtc.org
> NOPRESUBMIT=true
> NOTREECHECKS=true
> NOTRY=true
> BUG=webrtc:1695
>
> Committed: https://crrev.com/8237abf563bf4782ee104408b53cc8e55ce44518
> Cr-Commit-Position: refs/heads/master@{#10937}

BUG=webrtc:1695
TBR=mflodman@webrtc.org,kjellander@webrtc.org
NOPRESUBMIT=true

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

Cr-Commit-Position: refs/heads/master@{#10948}
2015-12-09 11:13:40 +00:00
8237abf563 Revert of Merge webrtc/video_engine/ into webrtc/video/ (patchset #2 id:20001 of https://codereview.webrtc.org/1506773002/ )
Reason for revert:
Breaks Dr Memory Light https://build.chromium.org/p/client.webrtc/builders/Win%20DrMemory%20Light/builds/4643 and all the Android Tests bots.

Original issue's description:
> Merge webrtc/video_engine/ into webrtc/video/
>
> BUG=webrtc:1695
> R=mflodman@webrtc.org
>
> Committed: https://crrev.com/03ef053202bc5d5ab43460eebf5403232f157646
> Cr-Commit-Position: refs/heads/master@{#10926}

TBR=mflodman@webrtc.org,pbos@webrtc.org
NOPRESUBMIT=true
NOTREECHECKS=true
NOTRY=true
BUG=webrtc:1695

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

Cr-Commit-Position: refs/heads/master@{#10937}
2015-12-08 15:12:11 +00:00
03ef053202 Merge webrtc/video_engine/ into webrtc/video/
BUG=webrtc:1695
R=mflodman@webrtc.org

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

Cr-Commit-Position: refs/heads/master@{#10926}
2015-12-08 08:09:07 +00:00
c4a1c370aa Removed vie_defines.h
The defines still in use was only used in single files, so they were
moved to these specific cc-files.

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

Cr-Commit-Position: refs/heads/master@{#10539}
2015-11-06 12:33:56 +00:00
0c478b3d75 Rename ChannelGroup to CongestionController and move to webrtc/call/.
BUG=webrtc:5079
R=pbos@webrtc.org

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

Cr-Commit-Position: refs/heads/master@{#10358}
2015-10-21 13:52:33 +00:00
5c389d3e09 Split webrtc/video into webrtc/{audio,call,video}.
Moves audio_receive_stream.{h,cc} into webrtc/audio, and common parts
into webrtc/call, splitting out audio/shared components with separate
OWNERS files.

BUG=webrtc:4690
R=solenberg@webrtc.org, tina.legrand@webrtc.org
TBR=mflodman@webrtc.org

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

Cr-Commit-Position: refs/heads/master@{#10073}
2015-09-25 11:58:39 +00:00
ebbf8a805b Make sure rtp_rtcp module doesn't directly reference anything in the pacer module, and remove build dependencies on it.
BUG=

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

Cr-Commit-Position: refs/heads/master@{#10005}
2015-09-21 22:11:18 +00:00
364118518f Includes webrtc/build/protoc.gypi instead of build/protoc.gypi
Re-lands "Renamed the ACMDump to RtcEventLog and moved it to webrtc/video, since it is not specific to the audio coding module."

This reverts commit b933667a7f97697d6390d1eee5f378cedd9ca208.

R=pbos@webrtc.org

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

Cr-Commit-Position: refs/heads/master@{#9661}
2015-07-30 10:45:24 +00:00
b933667a7f Revert "Renamed the ACMDump to RtcEventLog and moved it to webrtc/video, since it is not specific to the audio coding module. Updated .gyp and .gn files accordingly."
This reverts commit c159b046d7a0086e45ae0f79c00a462f3fafd207.

BUG=
R=stefan@webrtc.org

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

Cr-Commit-Position: refs/heads/master@{#9660}
2015-07-30 10:05:18 +00:00
c159b046d7 Renamed the ACMDump to RtcEventLog and moved it to webrtc/video, since it is not specific to the audio coding module. Updated .gyp and .gn files accordingly.
Placed the protobuf structures in the namespace webrtc::rtclog. Removed the message field from the DebugEvent structure, since it was not used.

Added an interface to set config information for VideoReceiveStream and VideoSendStream in the event log.

Added function to log full RTCP packets and changed RTP-logging to only log headers.

Significantly extended the unit tests for RtcEventLog.

R=ivoc@webrtc.org, minyue@webrtc.org, pbos@webrtc.org, stefan@webrtc.org

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

Cr-Commit-Position: refs/heads/master@{#9656}
2015-07-30 09:06:09 +00:00
4b91bd0897 Move frame input (ViECapturer) to webrtc/video/.
Renames ViECapturer to VideoCaptureInput and initializes several
parameters on construction instead of setters.

Also removes an old deadlock suppression.

BUG=1695, 2999
R=asapersson@webrtc.org, mflodman@webrtc.org

Review URL: https://webrtc-codereview.appspot.com/53559004.

Cr-Commit-Position: refs/heads/master@{#9508}
2015-06-26 04:58:23 +00:00
2ee2439a1f Merge video_engine_core into webrtc target.
Merges the two video targets since video_engine is no longer usable
standalone.

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

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

Cr-Commit-Position: refs/heads/master@{#9479}
2015-06-22 05:57:26 +00:00
57e5fd2e60 PRESUBMIT: Improve PyLint check and add GN format check.
Add pylintrc file based on
https://code.google.com/p/chromium/codesearch#chromium/src/tools/perf/pylintrc
bit tightened up quite a bit (the one in depot_tools is far
more relaxed).

Remove a few excluded directories from pylint check and fixed/
suppressed all warnings generated.

Add GN format check + formatted all GN files using 'gn format'.
Cleanup redundant rules in tools/PRESUBMIT.py

TESTED=Ran 'git cl presubmit -vv', fixed the PyLint violations.
Ran it again with a modification in webrtc/build/webrtc.gni, formatted
all the GN files and ran it again.

R=henrika@webrtc.org, phoglund@webrtc.org

Review URL: https://webrtc-codereview.appspot.com/50069004

Cr-Commit-Position: refs/heads/master@{#9274}
2015-05-25 10:55:50 +00:00
4d71edef45 Add HW fallback option to software encoding.
Permits falling back to software encoding for unsupported resolutions.

BUG=chromium:475116, chromium:487934
R=mflodman@webrtc.org, stefan@webrtc.org

Review URL: https://webrtc-codereview.appspot.com/46279004

Cr-Commit-Position: refs/heads/master@{#9227}
2015-05-19 21:09:17 +00:00
7252a2ba80 Add HW fallback option to software decoding.
Permits falling back to software decoding for unsupported resolutions in
bitstreams.

BUG=4625, chromium:487934
R=mflodman@webrtc.org, stefan@webrtc.org

Review URL: https://webrtc-codereview.appspot.com/46269004

Cr-Commit-Position: refs/heads/master@{#9209}
2015-05-18 17:41:50 +00:00