Commit Graph

100 Commits

Author SHA1 Message Date
ab990ae43a Revert 7151 "Revert 7114 "Expose VideoEncoders with webrtc/video_encoder.h.""
Re-lands r7114 after landing r7204 to adress the compile error causing
the rollback in r7151.

BUG=3070
TBR=henrikg@webrtc.org

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

git-svn-id: http://webrtc.googlecode.com/svn/trunk@7207 4adac7df-926f-26a2-2b94-8c16560cd09d
2014-09-17 09:02:25 +00:00
a0d7827b16 Add ability to downscale content to improve quality.
BUG=3712
R=marpan@google.com, stefan@webrtc.org

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

git-svn-id: http://webrtc.googlecode.com/svn/trunk@7164 4adac7df-926f-26a2-2b94-8c16560cd09d
2014-09-12 11:51:47 +00:00
307d3dbdee Revert 7114 "Expose VideoEncoders with webrtc/video_encoder.h."
Speculative revert, seems to be reason for flaky Win FYI bot compile break.

> Expose VideoEncoders with webrtc/video_encoder.h.
> 
> Exposes VideoEncoders as part of the public API and provides a factory
> method for creating them.
> 
> BUG=3070
> R=mflodman@webrtc.org, stefan@webrtc.org
> 
> Review URL: https://webrtc-codereview.appspot.com/21929004

TBR=pbos@webrtc.org

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

git-svn-id: http://webrtc.googlecode.com/svn/trunk@7151 4adac7df-926f-26a2-2b94-8c16560cd09d
2014-09-11 09:48:30 +00:00
b420191743 Expose VideoEncoders with webrtc/video_encoder.h.
Exposes VideoEncoders as part of the public API and provides a factory
method for creating them.

BUG=3070
R=mflodman@webrtc.org, stefan@webrtc.org

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

git-svn-id: http://webrtc.googlecode.com/svn/trunk@7114 4adac7df-926f-26a2-2b94-8c16560cd09d
2014-09-09 10:40:56 +00:00
047a46f8b4 Remove Android.mk build files.
These files are generally not maintained and break, some contain files
that don't exist anymore and do not build anymore. If we need to add
some of these back we should really set up a bot for them.

R=andrew@webrtc.org, glaznev@webrtc.org, henrike@webrtc.org
BUG=

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

git-svn-id: http://webrtc.googlecode.com/svn/trunk@6974 4adac7df-926f-26a2-2b94-8c16560cd09d
2014-08-26 08:48:51 +00:00
b96ea2aab5 Remove former team members from OWNERS and WATCHLISTS
Remove the following (CCed) former team members from all
OWNERS files and the WATCHLISTS file:
* fischman@
* leozwang@
* mikhal@
* pwestin@
* wu@

BUG=
R=henrike@webrtc.org, niklas.enbom@webrtc.org

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

git-svn-id: http://webrtc.googlecode.com/svn/trunk@6973 4adac7df-926f-26a2-2b94-8c16560cd09d
2014-08-26 06:12:08 +00:00
e086af0fa3 Fix implicite cast from signed int to unsigned int in unittest.cc
BUG=3636
TESTED=set GYP_DEFINES=target_arch=ia32 & call python webrtc\build\gyp_webrtc -G msvs_version=2013 & ninja -C out\Debug
R=pthatcher@webrtc.org

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

git-svn-id: http://webrtc.googlecode.com/svn/trunk@6827 4adac7df-926f-26a2-2b94-8c16560cd09d
2014-08-05 17:10:52 +00:00
2ec560606b Add H.264 packetization.
This also includes:
- Creating new packetizer and depacketizer interfaces.
- Moved VP8 packetization was H264 packetization and depacketization to these interfaces. This is a work in progress and should be continued to get this 100% generic. This also required changing the return type for RtpFormatVp8::NextPacket(), which now returns bool instead of the index of the first partition.
- Created a Create() factory method for packetizers and depacketizers.

R=niklas.enbom@webrtc.org, pbos@webrtc.org

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

git-svn-id: http://webrtc.googlecode.com/svn/trunk@6804 4adac7df-926f-26a2-2b94-8c16560cd09d
2014-07-31 14:59:24 +00:00
9c09e6ee2b Add high perf mode to VP8
R=marpan@webrtc.org, stefan@webrtc.org

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

git-svn-id: http://webrtc.googlecode.com/svn/trunk@6470 4adac7df-926f-26a2-2b94-8c16560cd09d
2014-06-17 16:32:08 +00:00
4ef254f781 Enable videoprocessor_integrationtest tests on android.
R=kjellander@webrtc.org, stefan@webrtc.org
TBR=holmer@google.com

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

git-svn-id: http://webrtc.googlecode.com/svn/trunk@6316 4adac7df-926f-26a2-2b94-8c16560cd09d
2014-06-03 16:42:03 +00:00
a36ad6929d Add webrtc field trials API.
From now on it is expected that code linking system_wrappers.gyp:system_wrappers
provides an implementation for field_trial API or links with the default one in
system_wrappers.gyp:field_trial_default.

Note: Since there is no use of webrtc::field_trial API inside webrtc this CL on
itself does not forces the clients to actually define it. It however lays the
API and updates the gyp rules to link with so that it is ready to use.

Tested: Introduced a use of field trial in system wrappers and make sure all
bots were building successfully.

BUG=crbug/367114
R=tommi@webrtc.org

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

git-svn-id: http://webrtc.googlecode.com/svn/trunk@6147 4adac7df-926f-26a2-2b94-8c16560cd09d
2014-05-14 12:24:04 +00:00
8f69330310 Replace scoped_array<T> with scoped_ptr<T[]>.
scoped_array is deprecated. This was done using a Chromium clang tool:
http://src.chromium.org/viewvc/chrome/trunk/src/tools/clang/rewrite_scoped_ar...

except for the few not-built-on-Linux files which were updated manually.

TESTED=trybots
BUG=2515
R=niklas.enbom@webrtc.org

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

git-svn-id: http://webrtc.googlecode.com/svn/trunk@5985 4adac7df-926f-26a2-2b94-8c16560cd09d
2014-04-25 23:10:28 +00:00
7de47bce12 Remove use of tmpnam.
This solves compilation with the Mac SDK 10.9.

BUG=3120, 3151
TEST=git try -t modules_tests:VideoProcessorIntegrationTest*
R=fischman@webrtc.org, henrike@webrtc.org, stefan@webrtc.org

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

git-svn-id: http://webrtc.googlecode.com/svn/trunk@5917 4adac7df-926f-26a2-2b94-8c16560cd09d
2014-04-16 08:04:26 +00:00
6c75c98964 Propagate capture ntp timestamp from rtp to renderer.
Mostly the interface changes, the real implementation of ntp timestamp will come in a follow up cl.

TEST=new tests and try bots
BUG=3111
R=niklas.enbom@webrtc.org, stefan@webrtc.org

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

git-svn-id: http://webrtc.googlecode.com/svn/trunk@5911 4adac7df-926f-26a2-2b94-8c16560cd09d
2014-04-15 17:46:33 +00:00
2c89b5cb27 Make everyone an OWNER for .gyp/.gypi add/delete purposes, non-talk/ edition.
This CL brought to you by:
$ for d in $(for f in $(git ls-files '*gyp' '*gypi'); do dirname $f; done|sort|uniq|grep -v '^\.$'); do echo -e "\n# These are for the common case of adding or renaming files. If you're doing\n# structural changes, please get a review from a reviewer in this file.\nper-file *.gyp=*\nper-file *.gypi=*" >> $d/OWNERS; done
$ for d in $(for f in $(git ls-files '*gyp' '*gypi'); do dirname $f; done|sort|uniq|grep -v '^\.$'); do git add $d/OWNERS; done

(and then removed the talk/ impact)

R=niklas.enbom@webrtc.org

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

git-svn-id: http://webrtc.googlecode.com/svn/trunk@5903 4adac7df-926f-26a2-2b94-8c16560cd09d
2014-04-14 20:08:03 +00:00
1faef7d084 Use codec width/height as the encoded_image width/height.
The raw_->w and raw_->h which are the stored image width/height may not be the encoded image size in the case when the incoming frame has a odd size.

R=marpan@google.com, marpan@webrtc.org

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

git-svn-id: http://webrtc.googlecode.com/svn/trunk@5739 4adac7df-926f-26a2-2b94-8c16560cd09d
2014-03-20 17:00:46 +00:00
3ecc162d01 Remove std:: prefixes from C functions in webrtc/.
std::memcpy -> memcpy for instance. This change was motivated by a
compile report complaining that std::rand() was used instead of rand(),
probably with a stdlib.h include instead of cstdlib. Use of C functions
without the std:: prefix is a lot more common, so removing std:: to
address this.

BUG=
R=tommi@webrtc.org

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

git-svn-id: http://webrtc.googlecode.com/svn/trunk@5658 4adac7df-926f-26a2-2b94-8c16560cd09d
2014-03-07 15:23:34 +00:00
7f52a6ef2b Split the implementation of VP8Encoder|Decoder::Create into a seperated file
(vp8_factory.cc).

R=fischman@webrtc.org, marpan@google.com, marpan@webrtc.org

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

git-svn-id: http://webrtc.googlecode.com/svn/trunk@5606 4adac7df-926f-26a2-2b94-8c16560cd09d
2014-02-24 23:56:39 +00:00
99eab02fb1 Fix "field '_testNo' is uninitialized" warnings.
BUG=2849
R=stefan@webrtc.org

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

git-svn-id: http://webrtc.googlecode.com/svn/trunk@5434 4adac7df-926f-26a2-2b94-8c16560cd09d
2014-01-27 09:30:35 +00:00
bde3056567 Fix for video_processor_intergration_tests to run in parallel.
BUG=2601.
R=pbos@webrtc.org, stefan@webrtc.org

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

git-svn-id: http://webrtc.googlecode.com/svn/trunk@5091 4adac7df-926f-26a2-2b94-8c16560cd09d
2013-11-06 20:59:29 +00:00
943e3b95a6 Add CurrentLayerId() to temporal layers.
same patch as: https://webrtc-codereview.appspot.com/2427004/

TBR=holmer@google.com

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

git-svn-id: http://webrtc.googlecode.com/svn/trunk@5012 4adac7df-926f-26a2-2b94-8c16560cd09d
2013-10-22 01:55:07 +00:00
be9c560aab Revert r4913 that reverts r4911. Original CL description:
"Adding temporal layer strategy that keeps base layer framerate at an acceptable value."

R=holmer@google.com, stefan@webrtc.org

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

git-svn-id: http://webrtc.googlecode.com/svn/trunk@4920 4adac7df-926f-26a2-2b94-8c16560cd09d
2013-10-04 13:11:31 +00:00
44db9d1a57 Revert 4911 "Adding temporal layer strategy that keeps base laye..."
> Adding temporal layer strategy that keeps base layer framerate at an acceptable value.
> 
> R=stefan@webrtc.org
> 
> Review URL: https://webrtc-codereview.appspot.com/2272005

TBR=andresp@webrtc.org

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

git-svn-id: http://webrtc.googlecode.com/svn/trunk@4913 4adac7df-926f-26a2-2b94-8c16560cd09d
2013-10-03 17:42:07 +00:00
26f78f7ecb Adding temporal layer strategy that keeps base layer framerate at an acceptable value.
R=stefan@webrtc.org

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

git-svn-id: http://webrtc.googlecode.com/svn/trunk@4911 4adac7df-926f-26a2-2b94-8c16560cd09d
2013-10-03 14:06:14 +00:00
054ccd2e35 Remove include_dirs from video_coding.
BUG=1662
TEST=compile on trybots
R=stefan@webrtc.org

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

git-svn-id: http://webrtc.googlecode.com/svn/trunk@4853 4adac7df-926f-26a2-2b94-8c16560cd09d
2013-09-26 09:22:09 +00:00
641587f938 Disable some VP8 tests on Android.
DecodeWithACompleteKeyFrame and FixedTemporalLayersStrategy.

TBR=andresp
BUG=2037

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

git-svn-id: http://webrtc.googlecode.com/svn/trunk@4829 4adac7df-926f-26a2-2b94-8c16560cd09d
2013-09-24 18:43:28 +00:00
0181b5f8dd ExternalVideoDecoder for new VideoEngine API.
Implements the ExternalVideoDecoder interface for VideoReceiveStream.
Also adds a FakeDecoder used in tests, removing the overhead of running
the EngineTest tests with VP8 under Memcheck/TSan, allowing us to enable
them under Memcheck/TSan as well.

BUG=2346,2312
R=stefan@webrtc.org

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

git-svn-id: http://webrtc.googlecode.com/svn/trunk@4702 4adac7df-926f-26a2-2b94-8c16560cd09d
2013-09-09 08:26:30 +00:00
5500d93fe5 Add temporal layer factory.
R=marpan@google.com, stefan@webrtc.org

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

git-svn-id: http://webrtc.googlecode.com/svn/trunk@4691 4adac7df-926f-26a2-2b94-8c16560cd09d
2013-09-06 11:26:15 +00:00
b2c28c3699 Relanding 4597 - Don't force key frame when decoding with errors.
Makes sure that incomplete key frame or delta frames will be released from the JB when decoding with errors.
The decoder in turn will trigger a PLI until a complete key frame is received in order to start a session.

TBR=stefan@webrtc.org

BUG=

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

git-svn-id: http://webrtc.googlecode.com/svn/trunk@4607 4adac7df-926f-26a2-2b94-8c16560cd09d
2013-08-23 21:54:50 +00:00
ceea41d135 Revert 4597 "Don't force key frame when decoding with errors"
> Don't force key frame when decoding with errors
> 
> BUG=2241
> R=stefan@webrtc.org
> 
> Review URL: https://webrtc-codereview.appspot.com/2036004

TBR=mikhal@webrtc.org

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

git-svn-id: http://webrtc.googlecode.com/svn/trunk@4600 4adac7df-926f-26a2-2b94-8c16560cd09d
2013-08-23 00:53:24 +00:00
44af55cc44 Don't force key frame when decoding with errors
BUG=2241
R=stefan@webrtc.org

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

git-svn-id: http://webrtc.googlecode.com/svn/trunk@4597 4adac7df-926f-26a2-2b94-8c16560cd09d
2013-08-22 23:29:43 +00:00
dde7d4c6ed Roll chromium_revision 214260:217707 and gflags 45:84
gflags roll is needed mostly to pick up fixes for warnings triggered by newer
compiler/settings pulled in by the chromium roll.  Had to switch from the old
google-gflags project the current gflags project to pick up this fix (see
https://code.google.com/p/gflags/source/detail?r=74 for details).

Update android build.xml file to reflect tools moves in new SDK pulled in by the chromium_revision roll.

R=niklas.enbom@webrtc.org, wu@webrtc.org

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

git-svn-id: http://webrtc.googlecode.com/svn/trunk@4555 4adac7df-926f-26a2-2b94-8c16560cd09d
2013-08-15 23:31:30 +00:00
12dc1a38ca Switch C++-style C headers with their C equivalents.
The C++ headers define the C functions within the std:: namespace, but
we mainly don't use the std:: namespace for C functions. Therefore we
should include the C headers.

BUG=1833
R=tommi@webrtc.org

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

git-svn-id: http://webrtc.googlecode.com/svn/trunk@4486 4adac7df-926f-26a2-2b94-8c16560cd09d
2013-08-05 16:22:53 +00:00
89c674053e Adds all unittests to android NDK-APK framework.
BUG=N/A
R=andrew@webrtc.org

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

git-svn-id: http://webrtc.googlecode.com/svn/trunk@4474 4adac7df-926f-26a2-2b94-8c16560cd09d
2013-08-02 16:53:47 +00:00
7f7162a003 Fix some chromium-style warnings in webrtc/modules/video_coding/
BUG=163
R=mikhal@webrtc.org

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

git-svn-id: http://webrtc.googlecode.com/svn/trunk@4429 4adac7df-926f-26a2-2b94-8c16560cd09d
2013-07-30 15:18:31 +00:00
d2102afa2a Undo libvpx include changes in r4348 to fix build.
A longer term fix is needed, but this at least quickly unblocks the build.

R=pbos@webrtc.org

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

git-svn-id: http://webrtc.googlecode.com/svn/trunk@4367 4adac7df-926f-26a2-2b94-8c16560cd09d
2013-07-17 18:48:24 +00:00
a4407329d4 Include files from webrtc/.. paths in video_coding/.
BUG=1662
R=tommi@webrtc.org

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

git-svn-id: http://webrtc.googlecode.com/svn/trunk@4348 4adac7df-926f-26a2-2b94-8c16560cd09d
2013-07-16 12:32:05 +00:00
a950300b0e Disables unit tests that don't work on Android for Android.
BUG=N/A
R=andrew@webrtc.org, kjellander@webrtc.org

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

git-svn-id: http://webrtc.googlecode.com/svn/trunk@4306 4adac7df-926f-26a2-2b94-8c16560cd09d
2013-07-08 18:53:54 +00:00
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
d7148c86c5 Use 3 threads for higher than 720p resolutions
BUG=1893
TEST=untested
R=ajm@google.com, andrew@webrtc.org, dingkai@google.com, marpan@google.com, marpan@webrtc.org

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

git-svn-id: http://webrtc.googlecode.com/svn/trunk@4243 4adac7df-926f-26a2-2b94-8c16560cd09d
2013-06-18 22:06:42 +00:00
63e988856e Merge more tests into modules_{unit,integration}tests.
A new test target named 'modules_integrationtests' is created
and the following test targets were merged into it:
* audio_coding_module_test
* test_fec
* video_coding_integrationtests
* vp8_integrationtests

A couple of other targets were merged into modules_unittests:
* audio_coding_unittests
* audioproc_unittest
* common_unittests
* video_coding_unittests
* video_processing_unittests
* vp8_unittests

I wasn't able to merge audio_decoder_unittests and neteq_unittests due to
conflicts with different defines in these tests.

Some tests that have special requirements aren't merged into
modules_integrationtests yet. I took the opportunity to rename them
since the bot configs will need to be update anyway:
* audio_device_test_api -> audio_device_integrationtests
* video_capture_module_test -> video_capture_integrationtests
* video_render_module_test -> video_render_integrationtests

Exclude files were added for modules_integrationtests to make sure
the memcheck and tsan bots doesn't tests that are too slow
(audio_coding_module_test and vp8_integrationtests were previously
disabled on those bots).

Suppressions for AudioCodingModuleTest needed to be added to get
modules_integrationtests to pass memcheck (even if the test is
excluded from execution).

BUG=1843
TEST=local execution on Linux and trybots (passing except the merged tests of course)
R=andrew@webrtc.org, tina.legrand@webrtc.org

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

git-svn-id: http://webrtc.googlecode.com/svn/trunk@4228 4adac7df-926f-26a2-2b94-8c16560cd09d
2013-06-14 20:09:44 +00:00
14d7700d00 Moved command line parsing to internal tools and moved back the mic volume thingie.
BUG=
R=henrika@webrtc.org, kjellander@webrtc.org, stefan@webrtc.org

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

git-svn-id: http://webrtc.googlecode.com/svn/trunk@4054 4adac7df-926f-26a2-2b94-8c16560cd09d
2013-05-17 11:52:08 +00:00
b3e5acfb66 Cleanup traces in WebRTC
Remove some unused traces and add a trace counter for encoded video size.

R=holmer@google.com, mflodman@webrtc.org, stefan@webrtc.org

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

git-svn-id: http://webrtc.googlecode.com/svn/trunk@4050 4adac7df-926f-26a2-2b94-8c16560cd09d
2013-05-16 21:13:02 +00:00
1e3c794688 Use 2 threads for HD, or 1 for VGA or less.
BUG=1739
TEST=try bots
Review URL: https://webrtc-codereview.appspot.com/1438005

git-svn-id: http://webrtc.googlecode.com/svn/trunk@3996 4adac7df-926f-26a2-2b94-8c16560cd09d
2013-05-09 18:43:38 +00:00
3004c79c6a Fix clang errors in non-GYP_DEFINES=clang=1 build
BUG=1623
R=stefan@webrtc.org, tina.legrand@webrtc.org, tommi@webrtc.org

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

git-svn-id: http://webrtc.googlecode.com/svn/trunk@3968 4adac7df-926f-26a2-2b94-8c16560cd09d
2013-05-07 12:36:21 +00:00
d25b602dc0 VP8: Avoid copying the codec struct on Reset().
BUG=

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

git-svn-id: http://webrtc.googlecode.com/svn/trunk@3887 4adac7df-926f-26a2-2b94-8c16560cd09d
2013-04-23 13:08:04 +00:00
48c5882f2a Remove libvpx pre-processor conditions and conditional compile of default temporal layers files.
R=stefan@webrtc.org,marpan@webrtc.org
BUG=201

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

git-svn-id: http://webrtc.googlecode.com/svn/trunk@3864 4adac7df-926f-26a2-2b94-8c16560cd09d
2013-04-17 15:31:40 +00:00
6e788df19e Remove vim/emacs modelines from .gypi files
BUG=1655

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

git-svn-id: http://webrtc.googlecode.com/svn/trunk@3857 4adac7df-926f-26a2-2b94-8c16560cd09d
2013-04-16 12:40:34 +00:00
557e92515d Reapply the reverted r3747.
https://code.google.com/p/webrtc/source/detail?r=3747

r3747 timed-out on a tsan test. Verified that it passes
the test and reduced the execution time of that test (r3782).

TBR=stefan@webrtc.org
Review URL: https://webrtc-codereview.appspot.com/1292006

git-svn-id: http://webrtc.googlecode.com/svn/trunk@3807 4adac7df-926f-26a2-2b94-8c16560cd09d
2013-04-09 21:21:32 +00:00
806dc3b0e6 More trace events
The goal of this change is to unify tracing events styles
and add trace events for all RTP traffic.

BUG=1555
Review URL: https://webrtc-codereview.appspot.com/1290007

git-svn-id: http://webrtc.googlecode.com/svn/trunk@3806 4adac7df-926f-26a2-2b94-8c16560cd09d
2013-04-09 19:54:10 +00:00