Sean DuBois
cc4160f3ad
Fix deprecation cutover, and bad SDP creation
...
Methods that were marked as deprecated weren't properly handled. There
was a mix of old+new ones supported which caused broken behavior.
SDP creation didn't add SCTP to Offer
Resolves #156
2018-09-19 00:38:17 -07:00
Sean DuBois
8f1e32abf8
Remove panics and fix lint
...
Don't allow panics in library code, pion-WebRTC should never
cause a user's application to exit
Resolves #125
2018-09-12 00:07:27 -07:00
Sean DuBois
e500917a6e
Implement SampleBuilder
...
SampleBuilder provides a simple API to build an
RTCSample from RTP packets. This is useful when proxying
audio/video data to multiple peers. This is the alternative
to allowing users to push RTP Packets directly. This would be
confusing as we would throw away some of the information that users
give us and could lead to weird edge cases
Resolves #112
2018-09-09 23:16:19 -07:00
Konstantin Itskov
fde197b31c
Revert some RTCPeerConnection changes that broke the date channels
2018-09-05 17:51:31 -04:00
Konstantin Itskov
685a18c792
Fix data channel creation startup for backwards compatibility
2018-09-05 17:51:31 -04:00
Konstantin Itskov
ed7261638e
Add new versions of the deprecated event handler function names
2018-09-05 17:51:31 -04:00
Konstantin Itskov
af2033741d
Fix data-channel-create example segfault issue
2018-09-05 08:16:45 -04:00
Konstantin Itskov
cf2fdf0776
Revert public API name changes for on event handlers
2018-09-04 19:15:55 -04:00
Konstantin Itskov
12c871b66f
Add fixes to the linting to pass ci testing
2018-09-04 12:27:23 -04:00
Konstantin Itskov
0a2568695a
Re-organize CreateDataChannel function and add limited spec compliance
2018-09-04 12:11:17 -04:00
Konstantin Itskov
885c333884
Move RTCSctpTransportState into its own file
2018-09-04 09:33:05 -04:00
Konstantin Itskov
ec78f2ac9c
Reorganize functions into different files without meaningful code change
2018-09-04 09:33:05 -04:00
Konstantin Itskov
f738cec9da
Change the names of event handlers and attributes for readability
2018-09-04 09:33:05 -04:00
Konstantin Itskov
147ac1e2d1
Export RTCIceConnectionState and RTCIceGatheringState out from pkg/ice
2018-09-04 09:33:05 -04:00
backkem
8f45380600
CreateAnswer: fix nodejs fails to apply answer with empty bundle attribute
2018-09-02 17:42:23 +02:00
Konstantin Itskov
7cff07091f
Resolve gofmt and goimports linting issues
2018-08-28 20:34:23 -04:00
Konstantin Itskov
e6a7ea45b8
Change the pkg name from pkg/dom to pkg/rtcerr
2018-08-28 20:34:23 -04:00
Konstantin Itskov
77e6da4b9b
Move DOM wrapper errors into their own package
2018-08-28 20:34:23 -04:00
Sean DuBois
92c0024848
Bring back pushing of Remote Candidates onto ICEAgent
2018-08-28 01:03:09 -07:00
Konstantin Itskov
f4f42bc581
Add dummy commit to force ci to retest everything
2018-08-28 01:03:09 -07:00
Konstantin Itskov
12894d097b
Fix all issues related to math/rand
2018-08-28 01:03:09 -07:00
Sean DuBois
81d673b05d
GoFmt+GoImport
2018-08-28 01:03:09 -07:00
Konstantin Itskov
5741990d3a
Uncomment a few more last things related to IceAgent
2018-08-28 01:03:09 -07:00
Sean DuBois
d9f636a798
Run GoFmt+GoImports
2018-08-28 01:03:09 -07:00
Konstantin Itskov
902cf087aa
Add corrections to comply with govet, golint, etc.
2018-08-28 01:03:09 -07:00
Konstantin Itskov
7b7a349071
Add a bunch of documentation all over the library strucutres
2018-08-28 01:03:09 -07:00
Konstantin Itskov
a5e7a17580
Add temporary code for backward compatability with current IceAgent
2018-08-28 01:03:09 -07:00
Konstantin Itskov
a08b5d51cf
Add a bunch of default basic unittests to boost coverage
2018-08-28 01:03:09 -07:00
Konstantin Itskov
d7697f88bc
Add almost 100% unittest set for SetConfiguration
2018-08-28 01:03:09 -07:00
Konstantin Itskov
6fbfcf809c
Add prereview changes for RTCConfiguration and everything it involves
2018-08-28 01:03:09 -07:00
Konstantin Itskov
eead1349da
Add default unittest for a new rtcpeerconnection
2018-08-28 01:03:09 -07:00
Konstantin Itskov
e8364dc5e9
Add fully working RTCIceServer with 100% unit-test code coverage
2018-08-28 01:03:09 -07:00
Konstantin Itskov
c32dd50b97
Add almost completely working stun/turn uri parser
2018-08-28 01:03:09 -07:00
Konstantin Itskov
9e2484ea40
Move all of signaling code to rtcpeerconnection.go file
2018-08-28 01:03:09 -07:00
Konstantin Itskov
e74ed36c4a
Fix a minor bug with initConfiguration
2018-08-28 01:03:09 -07:00
Konstantin Itskov
bb2b73aabf
Add a few more unittests for SetConfiguration
2018-08-28 01:03:09 -07:00
Konstantin Itskov
c6bc9ab4e7
Add proper x509 certificate generation
2018-08-28 01:03:09 -07:00
Konstantin Itskov
20191a4974
Add an almost complete rfc complaint RTCConfiguration
2018-08-28 01:03:09 -07:00
Sean DuBois
259e3e00ba
Fix lint errors
2018-08-18 00:18:23 -07:00
backkem
c85cded582
API: Initial api structure for creating datachannel and sctp information.
2018-08-18 00:18:23 -07:00
Sean DuBois
78b6a76cc5
Revert "Move ICE package from public to internal folder structure"
...
ICE Package needs to be public for peerConnection.OnICEConnectionStateChange
This reverts commit b831f87d28
.
2018-08-16 10:10:29 -07:00
Konstantin Itskov
b831f87d28
Move ICE package from public to internal folder structure
2018-08-16 01:28:48 -07:00
chenkaiC4
2b7ab19a94
fix golangci linter
2018-08-16 01:26:58 -07:00
Sean DuBois
63e6c54cd4
Receiving video from FireFox (using gstreamer-receive) works
...
The following fixes were needed to make this happen. All of these things
are valid, I just made assumptions/used Chromium default values.
* Drop the sessionId to 32bits (from 64)
* When generating a response use the same mid values as the offer
* Use the localDescription to map a payloadType to video codec
2018-08-14 14:32:15 -07:00
Sean DuBois
02e72796d4
Emit ICEConnectionState to user API again
2018-08-11 13:56:28 -07:00
Sean DuBois
283404bd6c
Remove all panics in library code
2018-08-11 13:56:28 -07:00
Sean DuBois
938e490c39
Fix all lint errors, move SDP code to proper package
2018-08-11 13:56:28 -07:00
Sean DuBois
1be721e5fa
ICE works again, with proper agent implementation
...
Candidates are now generated with real priority, and actually pay
attention to the inbound messages.
Next we just need to pluck use-candidate + ice-controlling from the
messages and we will have a full-ice implementation (but we are not
controlling)
We then need to add timers to alert when the peer goes away OR when we
need to send again.
2018-08-11 13:56:28 -07:00
Sean DuBois
0c08a67e20
Start full ICE implementation for #23
2018-08-11 13:56:28 -07:00
Sean DuBois
22bd31d006
Fix all races in example applications
...
* Add locking around SCTP Assocation
* Add locking around DataChannel
* Add locking around port+global ICE
Closes #46
2018-07-26 00:46:45 -07:00