Commit Graph

19 Commits

Author SHA1 Message Date
Joe Turki
feeeebf251 Upgrade golangci-lint, more linters
Introduces new linters, upgrade golangci-lint to version (v1.63.4)
2025-01-18 07:16:06 -06:00
cnderrauber
83cfeea397 Update RtxSSRC for simulcast track remote
Fix #2751, updates remote track's rtx ssrc for
simulcast track doesn't contain rtx ssrc in sdp
since readRTX relies on rtx ssrc to determine if
it has a rtx stream.
2024-04-25 09:54:36 -04:00
Michael Klingbeil
6deb47d3bf Properly update metadata when PayloadType is 0
In the case where a remote track is sending PCMU with payload type 0
checkAndUpdateTrack will fail to update the track codec and params
(because t.PayloadType() is already 0). Add an extra check to handle
this case.
2024-03-16 23:05:14 -04:00
cnderrauber
a5b81a16c4 Fix data race of RTX packet
Fix data race of RTX packet
2023-10-01 10:56:42 -07:00
Adrian Cable
e5705310fd Allocationless handling of RTX pkts 2023-09-29 14:00:48 -07:00
Adrian Cable
ff34ec9b67 Read() handles distinct-SSRC RTX packets 2023-09-29 14:00:48 -07:00
Steffen Vogel
683fc837d0 Make repo REUSE compliant 2023-05-05 11:58:49 -04:00
Sean DuBois
157220e800 Run gofmt to add new build constraints
Also remove some 1.13 specific WASM code
2022-01-17 22:36:01 -05:00
bkim
3a6aea1d2d Add MTU Configuration to SettingEngine
This gives an option to raise the receive MTU as SettingEngine option.
If SettingEngine has not been set the MTU, then default value is used
instead, 1460

Resolves #1925
2021-08-20 09:59:56 -04:00
Sean DuBois
cffa6afc34 Rollback pion/rtp to v0
Resolves #1908
2021-08-02 18:05:45 -04:00
Sean DuBois
a67c66a0c5 Upgrade pion/rtp to v2
Also updates interceptor and srtp
2021-07-29 11:18:41 -04:00
digitalix
f8a8c09949 Support PayloadTypes changing a TrackRemote
If the PayloadType changes for a SSRC update the codec on the
TrackRemote.

Resolves #1850
2021-06-27 14:44:02 -04:00
mission-liao
1dedfd8c28 Refine SetReadDeadline behavior
- Refine RTPReceiver.SetReadDeadline behavior

  Instead of iterating over r.tracks, just calling r.tracks[0]
  directly. This behavior follows RTPReceiver.Read.

- Add RTPReceiver.SetReadDeadlineSimulcast

  Its fingerprint follows RTPReceiver.ReadSimulcast.

- Refine RTPReceiver.setRTPReadDeadline

  It will only timeout the RTP stream for the track makes the call.
2020-12-28 14:40:38 +08:00
Sean DuBois
398c363baf Add SetReadDeadline to RTPReceiver and TrackRemote
Previously, Reading RTP or RTCP packets from a peer
would block until a packet was received, or the
connection was terminated. This change allows you to
set a deadline, after which the read function will
return a timeout error and you can get on with other
things.

Resolves #1553
2020-12-26 09:41:45 -08:00
Sean DuBois
67826b1914 Update Interceptors to use []byte based API
Also update test to assert Attributes get passed all the way through

Resolves pion/interceptor#14
2020-12-13 18:40:33 -08:00
Sean DuBois
9715626a0c Revert "Read/Write RTP/RTCP packets with context"
This change caused a ~24% performance decrease

Relates to pion/webrtc#1564

This reverts commit 47a7a64898.
2020-12-02 20:11:06 -08:00
Atsushi Watanabe
47a7a64898 Read/Write RTP/RTCP packets with context
Control cancel/timeout by context.
2020-12-01 11:08:48 +09:00
Adam Kiss
5bbc84e404 Implement Interceptors
Provide API so that handling around RTP can be easily defined by the
user. See the design doc here[0]

[0] https://github.com/pion/webrtc-v3-design/issues/34
2020-11-26 11:23:19 -08:00
Sean DuBois
7edfb701e0 New Track API
The Pion WebRTC API has been dramatically redesigned. The design docs
are located here [0]

You can also read the release notes [1] on how to migrate your
application.

[0] https://github.com/pion/webrtc-v3-design
[1] https://github.com/pion/webrtc/wiki/Release-WebRTC@v3.0.0
2020-11-15 09:20:47 -08:00