Commit Graph

739 Commits

Author SHA1 Message Date
Woodrow Douglass
c9bb14e6c3 Add settingEngine hooks to modify ICE timeouts
Relates to #324
2019-01-07 13:11:27 -08:00
Sean DuBois
361cef680f Add RTCPeerConnection Sample test
Relates to #272
2019-01-03 11:56:00 -08:00
Sean DuBois
b3ecfc92e2 SRTP and SRTCP has been ported to streams API
Send/Recv and RTCP is complete

Relates to #272
2019-01-03 11:56:00 -08:00
Sean DuBois
b6badb4bc7 Move SRTP to streams API
Sending has been implemented, receive is still in progress.

Relates to #272
2019-01-03 11:56:00 -08:00
Sean DuBois
0f0dd62eb0 SRTP and SRTCP are now supported using *Session
Relates to #272
2019-01-03 11:56:00 -08:00
Sean DuBois
b89e77db49 Create srtp.SessionSRTP, wire up netwok.Manager
Send+Recv of SRTP uses the new SessionSRTP, this greatly reduces the
amount of code in the network.Manager itself. Also makes everything
thread safe

Relates to #272
2019-01-03 11:56:00 -08:00
Sean DuBois
7dbb5ce0df Make SRTP ProtectionProfile a enum
We only support one for now, but in the future this may be useful

Relates to #272
2019-01-03 11:56:00 -08:00
Sean DuBois
b4c07e24fb Update SRTP API to use []byte as input
Generalize the API to prepare for moving to it's own package, and
creation of *Session API

Relates to #272
2019-01-03 11:56:00 -08:00
Yutaka Takeda
f72e5971a1 Add myself as a contributor
Resolves #331
2018-12-31 13:52:14 -08:00
Yutaka Takeda
68fb6b6ba6 Fix keepalive by checking proper field
Resolves #331
2018-12-31 13:52:14 -08:00
Michael MacDonald
b98909a75b Add leveled/scoped logging facility
Allow package-scoped logging at user-defined levels. Logs are at
ERROR by default, for critical errors which should be handled
by users.

More verbose logging may be enabled via combinations of environment
variables, e.g.
PIONS_LOG_TRACE=ice PIONS_LOG_DEBUG=pc,dtls PIONS_LOG_INFO=all <cmd>

Relates to #222
2018-12-30 11:15:34 -05:00
Sean DuBois
29d004ca75 Move SDP to an external package
Resolves #322
2018-12-28 13:57:59 -08:00
Sean DuBois
114de5e33f Fix golint and misspell errors
Found by goreportcard
2018-12-28 00:53:47 -08:00
Woodrow Douglass
acc342fa58 Regression Test for getBestPair hang
also remove some boiler plate

Relates to #317
2018-12-27 21:30:33 -05:00
Woodrow Douglass
4694f606d0 Keep ice.Agent.getBestPair from hanging
This returns an error if there aren't valid pairs available

Relates to #317
2018-12-27 21:30:33 -05:00
Sean DuBois
09ae7da77a Use -coverpkg with go test
Our tests aren't being executed recursively, use
this so everything gets run

Resolves #320
2018-12-27 19:53:08 -05:00
Sean DuBois
eec8f43b0c Extend gstreamer-src so src is an argument
This allows us to give better examples with webcam + file input

Relates to #206 #209
2018-12-25 14:16:11 -05:00
backkem
3762e8a09e Detach: Expose data channel networking
Resolves #277
2018-12-24 17:51:01 +01:00
backkem
e3b498b2ba Data Channels: Move out of tree
Resolves #298
2018-12-24 16:31:23 +01:00
backkem
459f2d2e66 SCTP: Move out of tree
Relates to #295
2018-12-24 16:31:23 +01:00
backkem
ae0a2a075f Settings Engine: Add documentation
Relates to #281
2018-12-24 13:21:55 +01:00
Woodrow Douglass
4b32aceba6 Fix the ice transport test
Relates to #281
2018-12-24 13:21:55 +01:00
Woodrow Douglass
a2819a1b93 Add an engine for global webrtc settings
* hook up UDP limitation to it.
This was Michiel De Backker's suggestion

relates to #281
2018-12-24 13:21:55 +01:00
Woodrow Douglass
a6df5427f7 Deduplicate constructors
Deduplicate ice.Agent and network.Manager constructors

Relates to #281
2018-12-24 13:21:55 +01:00
Woodrow Douglass
babf996239 Apply UDP limitation at object construction
This could avoid some potential races.
Relates to #281
2018-12-24 13:21:55 +01:00
Woodrow Douglass
c2ab0d0238 Allow local ephemeral port range to be limited
Relates to #281
2018-12-24 13:21:55 +01:00
Sean DuBois
7d19be0bca Fix README formatting
Italicized text was unclosed
v1.2.0
2018-12-23 13:33:58 -05:00
Sean DuBois
60d9f2f002 Update pions/dtls tag in modules
Update pions/dtls to v1.0.2
2018-12-23 13:30:11 -05:00
Sean DuBois
c3b1fe5bf9 Fix invalid extension parsing with RTP
Resolves #285
2018-12-23 11:44:20 -05:00
Sean DuBois
20bbbcde88 Add basic RTP test
This doesn't test edge cases yet, but start to lay the ground work.

Relates to #285
2018-12-23 11:44:20 -05:00
backkem
055e359c1d Docs: Add waffle link
Resolves #306
2018-12-23 00:24:53 -05:00
John R. Bradley
6cd617c6d2 SCTP: Fix invalid comparison for sack handling
A SACK with a TSN equal to the peer cumulative TSN is not
an error as it could just be asking for particular GapAcks
2018-12-21 00:40:00 -06:00
John R. Bradley
4653ba99ca SCTP: Look for correct next TSN when popping
This was would lead to an extra roundtrip request for
every single received packet.
2018-12-21 00:40:00 -06:00
Sean DuBois
dbafef96b2 Re-enable SRTP Auth tag verification
Auth tag verification before would hash including the old auth tag, now
we remove the old tag before generating the hash

Resolves #270
2018-12-21 00:59:36 -05:00
backkem
0de8c9816f SCTP: Support simultaneous open
Resolves #296
2018-12-21 00:50:35 +01:00
Woodrow Douglass
205ac9d678 Fix a small bug in SDP rendering
Make sure that payload types are correctly rendered
in 'm=' lines. the 'string' constructor renders the
ordinal (ascii representation) when given a uint8,
not a decimal integer

Relates to #299
2018-12-20 15:59:39 +01:00
backkem
d0bcbab227 SDP: Change Media Descriptions fmt to string
Resolves #208
2018-12-20 12:02:26 +01:00
Sean DuBois
bec4743e47 Update GStreamer examples to support G722
Update util/gstreamer-sink with case for G722. Also prefer Opus over
G722 in RegisterDefaultCodecs

Relates to #283
2018-12-20 05:19:48 -05:00
John R. Bradley
7091edaa97 Mux: Fix Mux.dispatch deadlock #2
Relates to #276
2018-12-20 01:28:49 -05:00
backkem
e95c4f7add Mux: Fix Mux.dispatch deadlock
Relates to #276
2018-12-20 01:28:49 -05:00
backkem
c766b3e9ee DataChannel: Close read loops on error
Relates to #276
2018-12-20 01:28:49 -05:00
backkem
bd10909a6a SCTP: Shutdown
Relates to #276
2018-12-20 01:28:49 -05:00
backkem
d380a31a06 PC: Move close test to separate file
Relates to #276
2018-12-20 01:28:49 -05:00
backkem
2024438da0 Mux: Test shutdown
Relates to #276

d
2018-12-20 01:28:49 -05:00
backkem
a92bac3fb6 ICE: Cleanup candidates on close
Relates to #276
2018-12-20 01:28:49 -05:00
backkem
97f538a6f2 Add PeerConnection Close test
Relates to #276
2018-12-20 01:28:49 -05:00
Woodrow Douglass
c1bfcc8367 Tweak g722 support code
* allow GST examples to use g722
* Assume G722 is mono -- that's what chrome likes,
  and i don't know if anyone's doing stereo g722 anyway

Relates to #283
2018-12-18 08:33:19 -05:00
Woodrow Douglass
7cc44ba79b Use crypto/rand instead of math/rand
to satisfy the linter
Relates to #284
2018-12-12 09:23:19 -05:00
Woodrow Douglass
ded8de0480 Test the G722 payloader
Relates to #284
2018-12-12 09:23:19 -05:00
Woodrow Douglass
9d6ed099e7 Add a G722 RTP payloader
Resolves #283
2018-12-12 09:23:19 -05:00