23 Commits

Author SHA1 Message Date
Peter Boström
1d1944187f Replace RefCountImpl with rtc::RefCountedObject.
Removes code duplication and use of the dangerous public destructor in
RefCountImpl.

Also making wider use of scoped_refptr and fixing various leaks in the
process.

BUG=webrtc:5229
R=tommi@webrtc.org

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

Cr-Commit-Position: refs/heads/master@{#12075}
2016-03-21 15:44:41 +00:00
kjellander
73674f8064 Replace hardcoded constant in video capture with macro.
The roll in https://codereview.webrtc.org/1593713013 introduced a
cast that is undefined behavior. The right way to fix it is to use
a macro.

NOTRY=True
TESTED=Tommi verified that the values are the same.

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

Cr-Commit-Position: refs/heads/master@{#11302}
2016-01-19 13:49:25 +00:00
kjellander
3c85cad1d4 Roll chromium_revision 7a4fb8d..f527e86 (370025:370073)
Change log: 7a4fb8d..f527e86
Full diff: 7a4fb8d..f527e86

No dependencies changed.

Clang was updated 255169:257953.
Details: 7a4fb8d..f527e86/tools/clang/scripts/update.py

NOTRY=True
NOPRESUBMIT=True

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

Cr-Commit-Position: refs/heads/master@{#11301}
2016-01-19 12:47:24 +00:00
Henrik Kjellander
5dda80abea Remove webrtc/modules/video_{capture,render}/include
BUG=webrtc:5095
TESTED=git cl try -c --bot=android_compile_rel --bot=linux_compile_rel --bot=win_compile_rel --bot=mac_compile_rel --bot=ios_rel --bot=linux_gn_rel --bot=win_x64_gn_rel --bot=mac_x64_gn_rel --bot=android_gn_rel -m tryserver.webrtc
R=pbos@webrtc.org, perkj@webrtc.org

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

Cr-Commit-Position: refs/heads/master@{#10619}
2015-11-12 11:47:02 +00:00
Henrik Kjellander
98f53510b2 system_wrappers: rename interface -> include
BUG=webrtc:5095
R=tommi@webrtc.org

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

Cr-Commit-Position: refs/heads/master@{#10438}
2015-10-28 17:17:50 +00:00
Tommi
ea14f0ac11 Move SetCurrentThreadName to platform_thread.* in rtc_base_approved,
update all webrtc and libjingle code to use the same function and remove
extra implementations.

BUG=
R=andresp@webrtc.org

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

Cr-Commit-Position: refs/heads/master@{#9205}
2015-05-18 11:50:31 +00:00
pkasting@chromium.org
4591fbd09f Use size_t more consistently for packet/payload lengths.
See design doc at https://docs.google.com/a/chromium.org/document/d/1I6nmE9D_BmCY-IoV6MDPY2V6WYpEI-dg2apWXTfZyUI/edit?usp=sharing for more information.

This CL was reviewed and approved in pieces in the following CLs:
https://webrtc-codereview.appspot.com/24209004/
https://webrtc-codereview.appspot.com/24229004/
https://webrtc-codereview.appspot.com/24259004/
https://webrtc-codereview.appspot.com/25109004/
https://webrtc-codereview.appspot.com/26099004/
https://webrtc-codereview.appspot.com/27069004/
https://webrtc-codereview.appspot.com/27969004/
https://webrtc-codereview.appspot.com/27989004/
https://webrtc-codereview.appspot.com/29009004/
https://webrtc-codereview.appspot.com/30929004/
https://webrtc-codereview.appspot.com/30939004/
https://webrtc-codereview.appspot.com/31999004/
Committing as TBR to the original reviewers.

BUG=chromium:81439
TEST=none
TBR=pthatcher,henrik.lundin,tina.legrand,stefan,tkchin,glaznev,kjellander,perkj,mflodman,henrika,asapersson,niklas.enbom

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

git-svn-id: http://webrtc.googlecode.com/svn/trunk@7726 4adac7df-926f-26a2-2b94-8c16560cd09d
2014-11-20 22:28:14 +00:00
braveyao@webrtc.org
651c05e4fc Release _inputSendPin & _outputCapturePin before _captureFilter & _sinkFilter since they should depend on the filters.
The previous steps work fine for all the webcam, but have problem on SplitCam driver as in the issue report.
Anyway it's always good to de-initial with the reversing order to initialization.

BUG=3845
TEST=Manual
R=perkj@webrtc.org

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

git-svn-id: http://webrtc.googlecode.com/svn/trunk@7426 4adac7df-926f-26a2-2b94-8c16560cd09d
2014-10-13 02:11:55 +00:00
braveyao@webrtc.org
790385fee4 sink_filter_ds.cc: add lock to Receive procedure to Pause().
BUG=2233
TEST=AUTO Test
R=wu@webrtc.org

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

git-svn-id: http://webrtc.googlecode.com/svn/trunk@5827 4adac7df-926f-26a2-2b94-8c16560cd09d
2014-04-02 02:14:55 +00:00
fischman@webrtc.org
69fc315fd9 Convert DeviceInfoImpl::_captureCapabilities from a map to a vector.
The map was just mapping an index to a pointer of a POD, so the code is easily
simplified by using a vector (with implicit index key) and the POD as a value.
(also fixes a leak in the windows code, which lacked a virtual dtor for
VideoCaptureCapabilityWindows but was deleting through a base pointer).

R=perkj@webrtc.org

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

git-svn-id: http://webrtc.googlecode.com/svn/trunk@4840 4adac7df-926f-26a2-2b94-8c16560cd09d
2013-09-25 17:01:42 +00:00
pbos@webrtc.org
4ca7d3f9fe Replace MapWrapper with std::map<>.
MapWrapper was needed on some platforms where STL wasn't supported, we
now use std::map<> directly.

BUG=2164
TEST=trybots
R=henrike@webrtc.org, phoglund@webrtc.org, stefan@webrtc.org, wu@webrtc.org

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

git-svn-id: http://webrtc.googlecode.com/svn/trunk@4530 4adac7df-926f-26a2-2b94-8c16560cd09d
2013-08-12 19:51:57 +00:00
pbos@webrtc.org
a9b74ad716 Include files from webrtc/.. paths in video_capture/.
BUG=1662
R=wu@webrtc.org

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

git-svn-id: http://webrtc.googlecode.com/svn/trunk@4337 4adac7df-926f-26a2-2b94-8c16560cd09d
2013-07-12 10:03:52 +00:00
pbos@webrtc.org
d900e8bea8 Proper spacing for end-of-namespace comments.
BUG=
R=mflodman@webrtc.org, tina.legrand@webrtc.org

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

git-svn-id: http://webrtc.googlecode.com/svn/trunk@4293 4adac7df-926f-26a2-2b94-8c16560cd09d
2013-07-03 15:12:26 +00:00
pbos@webrtc.org
dfc5bb9c97 WebRtc_Word32 -> int32_t in video_capture/
BUG=314

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

git-svn-id: http://webrtc.googlecode.com/svn/trunk@3811 4adac7df-926f-26a2-2b94-8c16560cd09d
2013-04-10 08:23:13 +00:00
vikasmarwaha@webrtc.org
10987a851d Minor bug fix in maxFPS parameter declaration.
TBR = perkj@webrtc.org,mallinath@webrtc.org
Review URL: https://webrtc-codereview.appspot.com/1123005

git-svn-id: http://webrtc.googlecode.com/svn/trunk@3559 4adac7df-926f-26a2-2b94-8c16560cd09d
2013-02-21 22:03:39 +00:00
vikasmarwaha@webrtc.org
bf3a9b3cce Fix for WebRTC Issue 1384. Some cameras return 0 fps for all capabilities which causes divide-by-zero.
Review URL: https://webrtc-codereview.appspot.com/1101013

git-svn-id: http://webrtc.googlecode.com/svn/trunk@3558 4adac7df-926f-26a2-2b94-8c16560cd09d
2013-02-21 20:25:54 +00:00
henrika@webrtc.org
5ba3decc94 Ensures that we can build using VS 2012 on Windows.
See more details at https://code.google.com/p/webrtc/issues/detail?id=1146&

TBR=Niklas
BUG=1146

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

git-svn-id: http://webrtc.googlecode.com/svn/trunk@3162 4adac7df-926f-26a2-2b94-8c16560cd09d
2012-11-26 09:12:02 +00:00
andrew@webrtc.org
8cd18c55b8 Add winsdk_samples to provide directshow_baseclasses.
Builds locally on Windows (and passes try), and a gyp run succeeds with
include_internal_video_capture=0. This should ensure it won't impact
Chromium.

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

git-svn-id: http://webrtc.googlecode.com/svn/trunk@3146 4adac7df-926f-26a2-2b94-8c16560cd09d
2012-11-21 18:46:45 +00:00
tommi@webrtc.org
8187877402 Reland 3135 - Previous failure was bot flakiness.
*****

Restructure the video_capture code a bit to make room for a Media Foundation class implementation.
This change includes the following:

* Skeleton classes for a couple of base MediaFoundation classes (no code yet).  See *_mf.*.
* Renaming the DirectShow based implementation from "_windows" to "_ds".
* Move the VideoCaptureImpl::CreateDeviceInfo() method into video_capture_factory_windows.cc
  The reason for this is that that's where the other VideoCaptureImpl factory function is
  and the factory function won't be implementation specific.
* Removed use of <initguid.h> from a header file to avoid defining the same guids in multiple object files.
  (more info here: http://msdn.microsoft.com/en-us/library/windows/desktop/dd375463(v=vs.85).aspx)
* Moved a couple of global variables from the capture_delay_values_windows.h header and into
  device_info_ds.cc since that's the only file that uses those variables.
* Delete capture_delay_values_windows.h.
* Added a factory function: DeviceInfoDS::Create() that'll create the DirectShow specific implementation.

TEST=This is mostly moving code around.  The code that is added, is currently "dead". No manual testing needed.
BUG=chromium:140545
Review URL: https://webrtc-codereview.appspot.com/967008

TBR=tommi@webrtc.org
Review URL: https://webrtc-codereview.appspot.com/934017

TBR=tommi@webrtc.org
Review URL: https://webrtc-codereview.appspot.com/934018

git-svn-id: http://webrtc.googlecode.com/svn/trunk@3137 4adac7df-926f-26a2-2b94-8c16560cd09d
2012-11-20 13:35:33 +00:00
tommi@webrtc.org
951b6c404a Revert 3135 - This broke the Mac bots somehow. Here's the error:
[ RUN      ] ViEStandardIntegrationTest.RunsBaseTestWithoutErrors
2012-11-20 13:06:59.625 vie_auto_test[4001:f07] An uncaught exception was raised
2012-11-20 13:06:59.625 vie_auto_test[4001:f07] Error (1000) creating CGSWindow on line 259
2012-11-20 13:06:59.670 vie_auto_test[4001:f07] (
	0   CoreFoundation                      0x9a4e912b __raiseError + 219
	1   libobjc.A.dylib                     0x95ee252e objc_exception_throw + 230
	2   CoreFoundation                      0x9a448bbb +[NSException raise:format:] + 139
	3   AppKit                              0x996b4757 _NSCreateWindowWithOpaqueShape2 + 302
	4   AppKit                              0x996b2f40 -[NSWindow _commonAwake] + 1823
	5   AppKit                              0x9966fa77 -[NSWindow _commonInitFrame:styleMask:backing:defer:] + 1652
	6   AppKit                              0x9966eb3f -[NSWindow _initContent:styleMask:backing:defer:contentView:] + 1063
	7   AppKit                              0x9966e704 -[NSWindow initWithContentRect:styleMask:backing:defer:] + 70
	8   vie_auto_test                       0x0015c232 -[TestCocoaUi createWindows:] + 338
	9   libobjc.A.dylib                     0x95eef5d3 -[NSObject performSelector:withObject:] + 70
	10  Foundation                          0x969050c0 __NSThreadPerformPerform + 395
	11  CoreFoundation                      0x9a3bf66f __CFRUNLOOP_IS_CALLING_OUT_TO_A_SOURCE0_PERFORM_FUNCTION__ + 15
	12  CoreFoundation                      0x9a3bf099 __CFRunLoopDoSources0 + 233
	13  CoreFoundation                      0x9a3e4e46 __CFRunLoopRun + 934
	14  CoreFoundation                      0x9a3e463a CFRunLoopRunSpecific + 378
	15  CoreFoundation                      0x9a3e44ab CFRunLoopRunInMode + 123
	16  Foundation                          0x9690d946 -[NSRunLoop(NSRunLoop) runMode:beforeDate:] + 278
	17  vie_auto_test                       0x002e490a main + 522
	18  vie_auto_test                       0x000b1835 start + 53

*****


Restructure the video_capture code a bit to make room for a Media Foundation class implementation.
This change includes the following:

* Skeleton classes for a couple of base MediaFoundation classes (no code yet).  See *_mf.*.
* Renaming the DirectShow based implementation from "_windows" to "_ds".
* Move the VideoCaptureImpl::CreateDeviceInfo() method into video_capture_factory_windows.cc
  The reason for this is that that's where the other VideoCaptureImpl factory function is
  and the factory function won't be implementation specific.
* Removed use of <initguid.h> from a header file to avoid defining the same guids in multiple object files.
  (more info here: http://msdn.microsoft.com/en-us/library/windows/desktop/dd375463(v=vs.85).aspx)
* Moved a couple of global variables from the capture_delay_values_windows.h header and into
  device_info_ds.cc since that's the only file that uses those variables.
* Delete capture_delay_values_windows.h.
* Added a factory function: DeviceInfoDS::Create() that'll create the DirectShow specific implementation.

TEST=This is mostly moving code around.  The code that is added, is currently "dead". No manual testing needed.
BUG=chromium:140545
Review URL: https://webrtc-codereview.appspot.com/967008

TBR=tommi@webrtc.org
Review URL: https://webrtc-codereview.appspot.com/934017

git-svn-id: http://webrtc.googlecode.com/svn/trunk@3136 4adac7df-926f-26a2-2b94-8c16560cd09d
2012-11-20 12:17:05 +00:00
tommi@webrtc.org
704eb8fa15 Restructure the video_capture code a bit to make room for a Media Foundation class implementation.
This change includes the following:

* Skeleton classes for a couple of base MediaFoundation classes (no code yet).  See *_mf.*.
* Renaming the DirectShow based implementation from "_windows" to "_ds".
* Move the VideoCaptureImpl::CreateDeviceInfo() method into video_capture_factory_windows.cc
  The reason for this is that that's where the other VideoCaptureImpl factory function is
  and the factory function won't be implementation specific.
* Removed use of <initguid.h> from a header file to avoid defining the same guids in multiple object files.
  (more info here: http://msdn.microsoft.com/en-us/library/windows/desktop/dd375463(v=vs.85).aspx)
* Moved a couple of global variables from the capture_delay_values_windows.h header and into
  device_info_ds.cc since that's the only file that uses those variables.
* Delete capture_delay_values_windows.h.
* Added a factory function: DeviceInfoDS::Create() that'll create the DirectShow specific implementation.

TEST=This is mostly moving code around.  The code that is added, is currently "dead". No manual testing needed.
BUG=chromium:140545
Review URL: https://webrtc-codereview.appspot.com/967008

git-svn-id: http://webrtc.googlecode.com/svn/trunk@3135 4adac7df-926f-26a2-2b94-8c16560cd09d
2012-11-20 11:27:25 +00:00
tommi@webrtc.org
12773eaa8c Minor cleanup of the videocapture code. No "real" code change :)
Remove declaration of a function that doesn't exist.
Remove call to GetProductId from video_capture_factory_windows that's not necessary.
This was the only dependency on device_info_windows.h outside of video_capture_windows.cc.

TEST=There's no code change, so no manual testing is required.
BUG=none
Review URL: https://webrtc-codereview.appspot.com/936025

git-svn-id: http://webrtc.googlecode.com/svn/trunk@3114 4adac7df-926f-26a2-2b94-8c16560cd09d
2012-11-16 09:03:12 +00:00
andrew@webrtc.org
94caca7105 Reorganize modules/video_capture.
- The usual elimination of main/source etc.
- Fully qualify "public" includes.
- Use lowercase for all directory names.

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

git-svn-id: http://webrtc.googlecode.com/svn/trunk@3025 4adac7df-926f-26a2-2b94-8c16560cd09d
2012-10-30 21:58:00 +00:00