17 Commits

Author SHA1 Message Date
fischman@webrtc.org
83eb7dff5c PeerConnection(java): disable wait for flaky ICEConnection.COMPLETED.
This should be reverted when COMPLETED is delivered reliably.

BUG=3021
TESTED=without this patch the test fails in Debug mode after a handful of runs.  With this patch 100 runs passed in a row on my desktop.
R=henrike@webrtc.org

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

git-svn-id: http://webrtc.googlecode.com/svn/trunk@6315 4adac7df-926f-26a2-2b94-8c16560cd09d
2014-06-03 16:38:08 +00:00
mallinath@webrtc.org
d3dc424fe5 Remove posting of ICE messages from WebRTCSession in PeerConnection to signaling thread.
These callbacks are called from signal thread already. There is no point
in posting messages on the same thread again.

BUG=2922
R=fischman@webrtc.org

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

git-svn-id: http://webrtc.googlecode.com/svn/trunk@5626 4adac7df-926f-26a2-2b94-8c16560cd09d
2014-03-01 00:05:52 +00:00
fischman@webrtc.org
c2d75e0708 PeerConnection(java): account for thread shutdown vagaries.
Android's JVM requires threads to detach before they exit, but ONLY if
they needed to AttachCurrentThread.  Conversly, threads that were
attached by the JVM (e.g. the result of making a native call from Java)
must NOT be detached by the application.  This is bug 2441.

The fix for the above is to only pthread_setspecific() for threads that
Attach(), not for already-attached threads.  To ensure that we only
detach Attached threads, added a GetEnv() call to ThreadDestructor(),
which revealed that Oracle's JVM can overly-eagerly clear TLS accounting
data, effectively detaching threads without their consent at shutdown.
Work around this with a specific check.

To guard against (some) regression, added a variant of PeerConnectionTest
that runs on a non-main thread.  This revealed a bug in LinuxDeviceManager
which implicitly assumes its talk_base::Thread has already been
initialized.  Fixed that here too.

BUG=2441
R=henrike@webrtc.org

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

git-svn-id: http://webrtc.googlecode.com/svn/trunk@5567 4adac7df-926f-26a2-2b94-8c16560cd09d
2014-02-18 16:57:36 +00:00
fischman@webrtc.org
a3708ecdfe PeerConnectionTest(java): unbreak following 61460797-p10
BUG=1414
R=mallinath@webrtc.org

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

git-svn-id: http://webrtc.googlecode.com/svn/trunk@5550 4adac7df-926f-26a2-2b94-8c16560cd09d
2014-02-14 01:51:33 +00:00
fischman@webrtc.org
3eda643a91 PeerConnection(java): added MediaConstraints support to AudioSource, now fed to AudioTrack.
BUG=2912
R=wu@webrtc.org

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

git-svn-id: http://webrtc.googlecode.com/svn/trunk@5540 4adac7df-926f-26a2-2b94-8c16560cd09d
2014-02-13 04:01:04 +00:00
sergeyu@chromium.org
9cf037b831 Update libjingle to 61168196
R=mallinath@webrtc.org

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

git-svn-id: http://webrtc.googlecode.com/svn/trunk@5502 4adac7df-926f-26a2-2b94-8c16560cd09d
2014-02-07 19:03:26 +00:00
fischman@webrtc.org
6e08228525 PeerConnectionTest(java): remove the obsolete magical names of streams & tracks.
BUG=1253
R=wu@webrtc.org

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

git-svn-id: http://webrtc.googlecode.com/svn/trunk@5478 4adac7df-926f-26a2-2b94-8c16560cd09d
2014-02-03 19:15:44 +00:00
fischman@webrtc.org
a06ebab1e1 PeerConnectionTest(java): test SCTP DataChannels.
BUG=1408,2253,2626
R=jiayl@webrtc.org

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

git-svn-id: http://webrtc.googlecode.com/svn/trunk@5477 4adac7df-926f-26a2-2b94-8c16560cd09d
2014-02-03 19:11:29 +00:00
jiayl@webrtc.org
808b99b111 Disable a test assert which fails due to usrsctp not cleaned up in SctpDataEngine.cc
BUG=2749
R=fischman@webrtc.org

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

git-svn-id: http://webrtc.googlecode.com/svn/trunk@5460 4adac7df-926f-26a2-2b94-8c16560cd09d
2014-01-29 19:44:40 +00:00
fischman@webrtc.org
d7568a08c3 PeerConnection(java): Add OnRenegotiationNeeded support
Also:
- Make PeerConnectionObserver::OnRenegotiationNeeded() pure virtual to avoid
  this sort of mistake in the future.
- Sprinkle @Override annotations on some callback definitions that were missing
  them.
- Fix a JNI method-signature-lookup typo (s/(V)V/()V/) in PCOJava::OnError()
- Add an explicit ScopedLocalFrameRef to PCOJava::OnError() to match all other
  C++-fired callbacks, for consistency.

BUG=2771
R=wu@webrtc.org

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

git-svn-id: http://webrtc.googlecode.com/svn/trunk@5376 4adac7df-926f-26a2-2b94-8c16560cd09d
2014-01-13 22:04:12 +00:00
fischman@webrtc.org
f41f06b916 PeerConnection(java): rationalize pointer-to-jlong conversion.
In r4665 I went a bit crazy with the manual reinterpretation of a pointer to a
jlong (to avoid undefined behavior) but that's what reinterpret_cast<> is for.
So use it directly now.
Added a do-nothing DataChannel to AppRTCDemo to regression test this, since the
only repro I've found of the original bug requires ARM ABI (PeerConnectionTest
on ia32 fails to repro).

BUG=2302
R=henrike@webrtc.org

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

git-svn-id: http://webrtc.googlecode.com/svn/trunk@5269 4adac7df-926f-26a2-2b94-8c16560cd09d
2013-12-11 21:07:18 +00:00
fischman@webrtc.org
7e4d0df8ee PeerConnection(Android): enable tracing to logcat.
BUG=1295
R=henrike@webrtc.org

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

git-svn-id: http://webrtc.googlecode.com/svn/trunk@4888 4adac7df-926f-26a2-2b94-8c16560cd09d
2013-10-01 02:40:43 +00:00
fischman@webrtc.org
32001ef124 PeerConnection shutdown-time fixes
- TCPPort::~TCPPort() was leaking incoming_ sockets; now they are deleted.
- PeerConnection::RemoveStream() now removes streams even if the
  PeerConnection::IsClosed().  Previously such streams would never get removed.
- Gave MediaStreamTrackInterface a virtual destructor to ensure deletes on base
  pointers are dispatched virtually.
- VideoTrack.dispose() delegates to super.dispose() (instead of leaking)
- PeerConnection.dispose() now removes streams before disposing of them.
- MediaStream.dispose() now removes tracks before disposing of them.
- VideoCapturer.dispose() only unowned VideoCapturers (mirroring C++ API)
- AppRTCDemo.disconnectAndExit() now correctly .dispose()s its
  VideoSource and PeerConnectionFactory.
- CHECK that Release()d objects are deleted when expected to (i.e. no ref-cycles
  or missing .dispose() calls) in the Java API.
- Create & Return webrtc::Traces at factory birth/death to be able to assert
  that _all_ threads started during the test are collected by the end.
- Name threads attached to the JVM more informatively for debugging.
- Removed a bunch of unnecessary scoped_refptr instances in
  peerconnection_jni.cc whose only job was messing with refcounts.

RISK=P2
TESTED=AppRTCDemo can be ended and restarted just fine instead of crashing on camera unavailability.  No more post-app-exit logcat lines.  PCTest.java now asserts that all threads are collected before exit.

BUG=2183
R=wu@webrtc.org

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

git-svn-id: http://webrtc.googlecode.com/svn/trunk@4534 4adac7df-926f-26a2-2b94-8c16560cd09d
2013-08-12 23:26:21 +00:00
fischman@webrtc.org
c883fdc273 PeerConnection.java: enable setting trace & log levels from Java
Replaces the hard-coded scheme that was there before and lets apps decide what
to log and to where.

R=wu@webrtc.org

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

git-svn-id: http://webrtc.googlecode.com/svn/trunk@4498 4adac7df-926f-26a2-2b94-8c16560cd09d
2013-08-06 19:00:53 +00:00
fischman@webrtc.org
d6134c7cfd PeerConnectionTest.java: make the test work for the bots' v4l2loopback.
- Make the test agnostic to the actual resolution used, since v4l2_file_player
  is playing a non-640x480 file (go/httfw)
- Teach DeviceInfoLinux::FillCapabilityMap() about I420 since that's what
  v4l2_file_player is feeding.

Requires https://gist.github.com/fischman/2e9a9b2efd2ad363ef82 be applied to the
v4l2loopback driver code.

BUG=1796
R=wu@webrtc.org

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

git-svn-id: http://webrtc.googlecode.com/svn/trunk@4422 4adac7df-926f-26a2-2b94-8c16560cd09d
2013-07-29 20:43:15 +00:00
henrike@webrtc.org
723d683ecb Update talk folder to revision=49260075. Same as 369 in libjingle's google code repository.
TBR=wu@webrtc.org

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

git-svn-id: http://webrtc.googlecode.com/svn/trunk@4338 4adac7df-926f-26a2-2b94-8c16560cd09d
2013-07-12 16:04:50 +00:00
henrike@webrtc.org
28e2075280 Adds trunk/talk folder of revision 359 from libjingles google code to
trunk/talk


git-svn-id: http://webrtc.googlecode.com/svn/trunk@4318 4adac7df-926f-26a2-2b94-8c16560cd09d
2013-07-10 00:45:36 +00:00