Commit Graph

18 Commits

Author SHA1 Message Date
Josh Bleecher Snyder
e42bb3e27a Use exported errors for stopped rtp i/o
This makes checking for these errors much more robust
than doing a string comparison.
2020-05-31 11:17:52 -07:00
cnderrauber
667941621d RtpSender/Receiver.Read return err when stopped
Rtpsender.Read & RtpReceiver.Read may block infinite when
it's stopped before Send/Receive has been called.
2020-05-28 20:24:19 -07:00
Simon Eisenmann
85ee4600a9 Fix RTPReceiver Stop race
RTPTranseiver closees its streams on Stop if any have been received.

The receive trigger is closed as soon as the Receive function is called.
This is too early since the streams are added only directly after and
also there is the possibility that all or only one of the following
stream opens fail.

This change ensures that the receive channel is closed after all streams
have potentially been added. At the same time a check is added to ensure
that only streams which are actully opened are closed.
2020-04-01 20:16:47 +02:00
Sean DuBois
6847421118 Implement Adding tracks after signaling
Relates to #207
2020-02-09 21:40:37 -08:00
Sean DuBois
e8fe7aa48d Bump SRTP/RTCP and update RTCP API
Reading/Writing RTCP packets now return a slice

Relates to pion/srtp#29
2019-04-11 16:03:26 -07:00
Max Hawkins
1e80cb7e46 Upgrade pion/rtcp to v1.1.5
Closes #581
2019-04-07 13:23:35 -07:00
Sean DuBois
1cdfc10c84 Mass replace pions -> pion
Pions organization was renamed to pion
2019-04-04 15:32:03 -07:00
Sean DuBois
6c0e8b8851 Return io.EOF when Track has no RTPSenders
Using this enum allows people to more gracefully handle shutdown,
also add a test to assert io.EOF is returned in other places

Resolves #511
2019-03-31 12:00:40 -07:00
Sean DuBois
ab816402cf Bump pions/rtcp and pions/srtp
RTCP v1.1.2 has breaking API, different return type for Unmarshal
2019-03-16 22:53:16 -07:00
Luke Curley
08a93d89ba Optimize Read by buffering
Increases the Read performance to acceptable levels. Packet loss went
from roughly 8% to 0.5% with this change.
2019-03-12 21:34:48 -07:00
Alex Browne
0f1ddf0825 Add JavaScript/WASM bindings
Resolves #478. Adds minimal JavaScript/WASM bindings. This makes it
possible to compile core parts of pions/webrtc to WASM and run it in the
browser. Only data channels are supported for now and there is
limited/no support for certificates and credentials.
2019-03-08 00:26:17 +01:00
Sean DuBois
67ac22edd2 Update to use new RTCP API
This bumps SRTP and our own RTCP handling to use new API

Resolves #495
2019-03-07 13:16:01 -08:00
Michael MacDonald
b8f3e36b00 Add OnSelectedCandidatePairChange callback
Invoked when the selected ICE candidate pair changes.
2019-03-01 08:07:42 -05:00
Luke Curley
31b7044955 Expose Encodings variable for ORTC
It's not possible to use a RTPReceiver without it.
2019-02-26 00:06:35 -08:00
Sean DuBois
6aeb3425b0 Move to new Track API
See v2.0.0 Release Notes[0] for all changes

Resolves #405

[0] https://github.com/pions/webrtc/wiki/v2.0.0-Release-Notes#media-api
2019-02-25 23:44:09 -08:00
backkem
a1159049a1 Move RTPSender and RTPReceiver to API
Relates to #379
2019-02-22 09:42:50 +01:00
Max Hawkins
c6592e6c4b Rename Ssrc -> SSRC
This capitalization is consistent with other uses in the project,
and matches the Go convention of capitalizing initialisms.

https://github.com/golang/go/wiki/CodeReviewComments#initialisms

Relates to #417
2019-02-18 11:47:05 -08:00
Max Hawkins
0647ce9c26 Remove rtc prefix from filenames
Relates to #408
2019-02-17 16:22:56 -08:00