Commit Graph

4031 Commits

Author SHA1 Message Date
4cd8f1f182 Added performance benchmarking in APM and iSAC-fix for Buildbots.
Review URL: https://webrtc-codereview.appspot.com/929022

git-svn-id: http://webrtc.googlecode.com/svn/trunk@3170 4adac7df-926f-26a2-2b94-8c16560cd09d
2012-11-26 22:02:47 +00:00
ef90c3227e Will now correctly identify the first-ever received packet as the first packet in its frame.
We used to flag the _second_ packet in the first frame as the first. Subsequent frames worked as intended.

BUG=1103
TEST=vie_auto_test --automated, rtp_rtcp_unittests

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

git-svn-id: http://webrtc.googlecode.com/svn/trunk@3164 4adac7df-926f-26a2-2b94-8c16560cd09d
2012-11-26 16:30:40 +00:00
7c894b7cc7 Wire up CallStats to provide modules with correct RTT.
BUG=769
TEST=Manual test since there is no ViE APi to get RTT for receive channels.

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

git-svn-id: http://webrtc.googlecode.com/svn/trunk@3163 4adac7df-926f-26a2-2b94-8c16560cd09d
2012-11-26 12:40:15 +00:00
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
418443c531 Remove operator overloading from RTPFragmentationHeader.
Instead supply a CopyFrom() method.

TEST=vie_auto_test

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

git-svn-id: http://webrtc.googlecode.com/svn/trunk@3158 4adac7df-926f-26a2-2b94-8c16560cd09d
2012-11-23 19:17:23 +00:00
6ba79a88e5 Condition for DirectX variable on Windows
The directx_sdk_path GYP variable got the value $(DXSDK_DIR) on non-windows platforms which is normally an uninitialized environment variable, causing an error during GYP generation.
Putting this include within a condition for Windows resolves this.

This was only triggered when GYP_GENERATORS=ninja and not for the default on Linux (make), so the bots haven't noticed this.

BUG=none
TEST=All default trybots passing. Successfully generating projects on Linux and Mac for make and ninja (plus XCode on Mac). Successful compile on Windows without DirectX SDK installed (but with files located in third_party/directxsdk/files).

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

git-svn-id: http://webrtc.googlecode.com/svn/trunk@3156 4adac7df-926f-26a2-2b94-8c16560cd09d
2012-11-23 09:41:42 +00:00
97dcf36a7b Adding Direct X SDK include directory.
This makes it possible to keep a copy of the Direct X SDK in third_party/directxsdk/files and get it automatically used instead of having to install it manually on the system.

BUG=none
TEST=Compilation with SDK files in third_party/directxsdk/files  and uninstalled Direct X SDK on Windows.
Review URL: https://webrtc-codereview.appspot.com/937028

git-svn-id: http://webrtc.googlecode.com/svn/trunk@3153 4adac7df-926f-26a2-2b94-8c16560cd09d
2012-11-23 08:54:07 +00:00
1c61196095 Removed not used include.
TEST=Compiles.

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

git-svn-id: http://webrtc.googlecode.com/svn/trunk@3150 4adac7df-926f-26a2-2b94-8c16560cd09d
2012-11-22 09:37:27 +00:00
4c4d01dd3d Setting capture stride to width
Review URL: https://webrtc-codereview.appspot.com/935021

git-svn-id: http://webrtc.googlecode.com/svn/trunk@3148 4adac7df-926f-26a2-2b94-8c16560cd09d
2012-11-21 22:18:32 +00:00
4b97793f91 Ensure opus_demo has a targets block.
TBR=leozwang@webrtc.org
Review URL: https://webrtc-codereview.appspot.com/933023

git-svn-id: http://webrtc.googlecode.com/svn/trunk@3147 4adac7df-926f-26a2-2b94-8c16560cd09d
2012-11-21 20:16:53 +00:00
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
cfcadab8d4 Build opus_demo
BUG=1082
TEST=trybots

With this cl we can build opus_demo.
Review URL: https://webrtc-codereview.appspot.com/936029

git-svn-id: http://webrtc.googlecode.com/svn/trunk@3144 4adac7df-926f-26a2-2b94-8c16560cd09d
2012-11-21 18:13:46 +00:00
3263a7a616 Setting correct stride for VP8 encoder
BUG=1137

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

git-svn-id: http://webrtc.googlecode.com/svn/trunk@3140 4adac7df-926f-26a2-2b94-8c16560cd09d
2012-11-21 00:15:19 +00:00
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
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
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
0f34fd7660 Updating Memory allocation for rotation and related tests.
Review URL: https://webrtc-codereview.appspot.com/943004

git-svn-id: http://webrtc.googlecode.com/svn/trunk@3132 4adac7df-926f-26a2-2b94-8c16560cd09d
2012-11-19 21:15:35 +00:00
4100b0402e Move SSRC list to RemoteBitrateEstimator.
BUG=1105

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

git-svn-id: http://webrtc.googlecode.com/svn/trunk@3130 4adac7df-926f-26a2-2b94-8c16560cd09d
2012-11-19 10:09:20 +00:00
5ac387c4d1 Allow NetEQ to use real packet durations.
This is a copy of http://review.webrtc.org/864014/

This adds a FuncDurationEst to each codec instance which estimates
the duration of a packet given the packet contents and the duration
of the previous packet. By default, this simply returns the
duration of the previous packet (which is what is currently assumed
to be the duration of all future packets). This patch also provides
an initial implementation of this function for G.711 which returns
the actual number of samples in the packet.

BUG=issue1015

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

git-svn-id: http://webrtc.googlecode.com/svn/trunk@3129 4adac7df-926f-26a2-2b94-8c16560cd09d
2012-11-19 08:02:55 +00:00
55cd78cfc2 Porting ARM optimization from Android to ios.
Tested APM and iSAC in Android. Bit-exact with original versions.
Changes include removing or changing some GCC derivatives (e.g. .fnstart, .hword), instruction syntax, etc.
Review URL: https://webrtc-codereview.appspot.com/934009

git-svn-id: http://webrtc.googlecode.com/svn/trunk@3124 4adac7df-926f-26a2-2b94-8c16560cd09d
2012-11-17 00:22:46 +00:00
c79505f95e Add warning comment
Review URL: https://webrtc-codereview.appspot.com/933012

git-svn-id: http://webrtc.googlecode.com/svn/trunk@3122 4adac7df-926f-26a2-2b94-8c16560cd09d
2012-11-16 22:46:36 +00:00
d0acdf6e2b Fix ordered comparison warnings in the RTPtimeshift unit test
Original CL uploaded here: http://review.webrtc.org/933013/

Removing the checks if (argv[4/5] >= 0), they are not doing anything useful.

BUG=

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

git-svn-id: http://webrtc.googlecode.com/svn/trunk@3118 4adac7df-926f-26a2-2b94-8c16560cd09d
2012-11-16 15:34:32 +00:00
b2f474e8bb Adding ViE CallStats to keep track of call statistics. As a start, only rtt is handled.
This CL will be followed by another CL connecting the dots.

BUG=769
TEST=New unittest added.

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

git-svn-id: http://webrtc.googlecode.com/svn/trunk@3117 4adac7df-926f-26a2-2b94-8c16560cd09d
2012-11-16 13:57:26 +00:00
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
d14ff54de2 Removed unnecessary lines in one of the tests and changed one parameter.
Review URL: https://webrtc-codereview.appspot.com/933018

git-svn-id: http://webrtc.googlecode.com/svn/trunk@3113 4adac7df-926f-26a2-2b94-8c16560cd09d
2012-11-16 01:17:00 +00:00
d72b3d6c81 Fix cpplint errors in audio_processing.h
TBR=leozwang@webrtc.org
BUG=1114

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

git-svn-id: http://webrtc.googlecode.com/svn/trunk@3108 4adac7df-926f-26a2-2b94-8c16560cd09d
2012-11-15 21:46:06 +00:00
f3adba499e Add Android include path so that header files can follow google style
BUG=1011
TEST=bot
Review URL: https://webrtc-codereview.appspot.com/930018

git-svn-id: http://webrtc.googlecode.com/svn/trunk@3107 4adac7df-926f-26a2-2b94-8c16560cd09d
2012-11-15 18:17:40 +00:00
2d0b81b8af Fix sorting issues in video_capture.gypi.
No code change.

TBR=henrikg@webrtc.org
Review URL: https://webrtc-codereview.appspot.com/937022

git-svn-id: http://webrtc.googlecode.com/svn/trunk@3104 4adac7df-926f-26a2-2b94-8c16560cd09d
2012-11-15 10:30:57 +00:00
23ec30bdfc Clean up TraceCallback::Print.
Review URL: https://webrtc-codereview.appspot.com/936024

git-svn-id: http://webrtc.googlecode.com/svn/trunk@3102 4adac7df-926f-26a2-2b94-8c16560cd09d
2012-11-15 05:33:25 +00:00
1786436eb2 Pure Neon assembly coding for WebRtcIsacfix_AutocorrNeon() in iSAC-Fix.
Review URL: https://webrtc-codereview.appspot.com/939018

git-svn-id: http://webrtc.googlecode.com/svn/trunk@3098 4adac7df-926f-26a2-2b94-8c16560cd09d
2012-11-14 18:44:24 +00:00
9e9cc72b53 Relanding r3071 - updates for i420: Making sure that decoded frame is complete and buffer size is sufficient. Re-landing is possible following r3094 - which disabled a problematic test.
Review URL: https://webrtc-codereview.appspot.com/939019

git-svn-id: http://webrtc.googlecode.com/svn/trunk@3097 4adac7df-926f-26a2-2b94-8c16560cd09d
2012-11-14 17:56:46 +00:00
71fd288b95 Fixed indentation and added the description of how to supply argument with specification of a name for the ouputfile where the contentMetrics etc. are logged.
Added description for argument to specify filename for output file where feature vectors are stored.

Fixed indentation

BUG=

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

git-svn-id: http://webrtc.googlecode.com/svn/trunk@3096 4adac7df-926f-26a2-2b94-8c16560cd09d
2012-11-14 14:46:52 +00:00
571a1c035b Enable paced sender.
Review URL: https://webrtc-codereview.appspot.com/965016

git-svn-id: http://webrtc.googlecode.com/svn/trunk@3089 4adac7df-926f-26a2-2b94-8c16560cd09d
2012-11-13 21:12:39 +00:00
42aa10eba7 Clarifies the bandwidth estimation interfaces.
BUG=

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

git-svn-id: http://webrtc.googlecode.com/svn/trunk@3087 4adac7df-926f-26a2-2b94-8c16560cd09d
2012-11-13 15:02:13 +00:00
7577ddf27b Refactoring acm_generic_codec
First patch: updating comments.

BUG=1024

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

git-svn-id: http://webrtc.googlecode.com/svn/trunk@3085 4adac7df-926f-26a2-2b94-8c16560cd09d
2012-11-13 14:09:35 +00:00
1726661ca2 Update parsed non ref frame info.
Review URL: https://webrtc-codereview.appspot.com/932015

git-svn-id: http://webrtc.googlecode.com/svn/trunk@3084 4adac7df-926f-26a2-2b94-8c16560cd09d
2012-11-13 13:39:51 +00:00
b900721472 Fix OpenGL rendering of WebRTCDemo by accounting for stride != width.
BUG=998

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

git-svn-id: http://webrtc.googlecode.com/svn/trunk@3079 4adac7df-926f-26a2-2b94-8c16560cd09d
2012-11-12 16:39:25 +00:00
af49062a35 Revert 3071 - i420:verify image length
This CL breaks vie_auto_test, test case
ViEVideoVerificationTest.RunsBaseStandardTestWithoutErrors.

BUG=

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

TBR=mikhal@webrtc.org
Review URL: https://webrtc-codereview.appspot.com/933014

git-svn-id: http://webrtc.googlecode.com/svn/trunk@3078 4adac7df-926f-26a2-2b94-8c16560cd09d
2012-11-12 09:16:08 +00:00
b518017e71 Adding pacing module, will replace the transmission_bucket in the RTP module.
TESTED=unittest
Review URL: https://webrtc-codereview.appspot.com/930015

git-svn-id: http://webrtc.googlecode.com/svn/trunk@3073 4adac7df-926f-26a2-2b94-8c16560cd09d
2012-11-09 20:56:23 +00:00
f875fd22c0 i420:verify image length
BUG=

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

git-svn-id: http://webrtc.googlecode.com/svn/trunk@3071 4adac7df-926f-26a2-2b94-8c16560cd09d
2012-11-09 18:48:30 +00:00
701567a864 Capture module: Fixing size computation for u and v planes
TEST=trybots

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

git-svn-id: http://webrtc.googlecode.com/svn/trunk@3070 4adac7df-926f-26a2-2b94-8c16560cd09d
2012-11-09 18:45:12 +00:00
06d72d881f Add Android OWNER files
Message:
Add OWNER files so I can review and approve changes for Android.
I also should be owner for all .mk file, but it's OK for now,
please review.

BUG=None
TEST=None
Review URL: https://webrtc-codereview.appspot.com/932016

git-svn-id: http://webrtc.googlecode.com/svn/trunk@3069 4adac7df-926f-26a2-2b94-8c16560cd09d
2012-11-09 17:51:55 +00:00
e8ef807a2d Added possibility to run quality modes test. Added possibility to input arguments to the test. The test will (for each frame) log the values in contentMetrics to a txt-file. The txt-file can optionally be saved in a specific place. Fixed an issue where video_coding_test crashed if there weren't any parameter submitted to an input argument.
BUG=

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

git-svn-id: http://webrtc.googlecode.com/svn/trunk@3068 4adac7df-926f-26a2-2b94-8c16560cd09d
2012-11-09 16:16:41 +00:00
fa65c851fe Optimized function AllpassFilter2FixDec16() in isac fix for Android Neon platforms.
With an offline test, codec cycles were reduced by 4%.
Review URL: https://webrtc-codereview.appspot.com/936007

git-svn-id: http://webrtc.googlecode.com/svn/trunk@3066 4adac7df-926f-26a2-2b94-8c16560cd09d
2012-11-09 00:39:45 +00:00
2a749d3108 Verify output frame timestamp in VideoProcessingModuleTest.Resampler.
TEST=unit tests
BUG=1069

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

git-svn-id: http://webrtc.googlecode.com/svn/trunk@3063 4adac7df-926f-26a2-2b94-8c16560cd09d
2012-11-08 01:07:21 +00:00
206532e6e2 Fix a bug in spatial_resampler where we should set the timestamp after Scale.
TEST=try bots
BUG=1069

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

git-svn-id: http://webrtc.googlecode.com/svn/trunk@3061 4adac7df-926f-26a2-2b94-8c16560cd09d
2012-11-07 23:37:41 +00:00
12454028bc Fixed and enabled ARM assembly code in AECM and NS.
Review URL: https://webrtc-codereview.appspot.com/860005

git-svn-id: http://webrtc.googlecode.com/svn/trunk@3060 4adac7df-926f-26a2-2b94-8c16560cd09d
2012-11-07 22:34:31 +00:00
055663be0a Updating vp8 tests
Review URL: https://webrtc-codereview.appspot.com/936017

git-svn-id: http://webrtc.googlecode.com/svn/trunk@3058 4adac7df-926f-26a2-2b94-8c16560cd09d
2012-11-07 21:36:15 +00:00
7096fc0126 Break out unittest helpers for remote_bitrate_estimator.
BUG=

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

git-svn-id: http://webrtc.googlecode.com/svn/trunk@3056 4adac7df-926f-26a2-2b94-8c16560cd09d
2012-11-07 18:35:30 +00:00
ac993fef2c Adding codecType to OnIncomingCapturedEncodedFrame
partially reverting r3013.

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

git-svn-id: http://webrtc.googlecode.com/svn/trunk@3055 4adac7df-926f-26a2-2b94-8c16560cd09d
2012-11-07 17:18:04 +00:00