15 Commits

Author SHA1 Message Date
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