- 
                Notifications
    
You must be signed in to change notification settings  - Fork 1.8k
 
Goals 2021
        Sean DuBois edited this page Feb 26, 2021 
        ·
        8 revisions
      
    - Add pion/interceptor Bandwidth Estimation
- Also need to add network simulation logic to pion/transport (packet loss, bufferbloat etc..)
 - See https://github.com/pion/interceptor/issues/25 for more details
 
 - Support Large SCTP messages
- Currently we have a hard cap at 65535. We need to research what the technical blockers are here
 - https://github.com/pion/webrtc/issues/1396 and https://github.com/pion/webrtc/issues/758
 - See https://blog.mozilla.org/webrtc/large-data-channel-messages/ and https://lgrahl.de/articles/demystifying-webrtc-dc-size-limit.html
 
 - AV1 and H265 Support
- Need to write packetizer/depacketizer for both
 
 - Finish pion/interceptor NACK implementation
- Support NACKs have a distinct SSRC
 - Evict the NACK cache properly. Should be Round Trip Time * 4
 - See https://github.com/pion/interceptor/issues/9 for more details
 
 - Add pion/interceptor jitterbuffer implementation
- Cache incoming packets and re-arrange them
 - Allow users to define cache behavior (% loss, delay etc..)
 
 - Add pion/interceptor Transport Wide Congestion Control implementation
- Generate reports for incomming streams
 
 - Add pion/interceptor RED/FlexFEC implementation
- Research is needed. What is support look like for other agents? What other roadbumps could we hit.
 
 - Finish GetStats implementation
- Count incoming/outgoing packets and give users insights
 - callstats.io integration?
 
 - Support TURN Server bandwidth tracking
 - Support un-bundled audio/video
- Currently pion/webrtc only supports one ICETransport, so each sides uses one port for the entire call
 - Instead we should allow all audio to be run over one port, all video over another
 - This will require a SettingEngine entry. Would be a good question at w3c.
 - see https://github.com/pion/interceptor/issues/25#issuecomment-782775189 for more details
 
 - Add media support to WASM bindings
- You could write your code in Go, then deploy to native and web
 - https://github.com/pion/webrtc/issues/500
 
 
- Port client applications to /v3 issue
 - Drive down issue and PR backlog (dtls, turn and ice especially)
 - Create tooling that graphs the amount of issues per repo
- Find repos that aren't getting updated
 - Find repos that have lots of issues/PRs
 
 - Write wiki page that explains the architecture of pion/webrtc and onboards new devs
 - Improve performance and prevent regressions issue
- Important for WebRTC, ICE, SCTP, TURN, SRTP
 
 - Setup fuzz testing (submit to oss-fuzz)
- Important for ICE, STUN, TURN, DTLS, SCTP, RTP and RTCP
 
 - Automate Change log generation issue
 
- FAQ on Debugging
- WebRTC for the Curious first for general debugging
 - Wiki page for Pion specific tools
 
 - pion/interceptor that generates packet dumps
- useful for debugging
 
 - H264 Interceptor Analyzer
- IDR Interval
 - Every SPS/PPS has an IDR
 - Invalid H264
 - B-Frames
 
 
- Promote companies that use Pion. Helps hiring and gives small companies a little more advertising
 - Developers should make projects under their own name. Better recognition/ownership
 - Host meetup every ~3 months. Get speakers from the community
 - First time contributor list. Contact Sean-Der on Slack or email [email protected] for help.
- webrtc/v3 porting issue
 - https://github.com/pion/dtls/issues/11
 - https://github.com/pion/dtls/issues/253
 - https://github.com/pion/dtls/issues/254
 - https://github.com/pion/dtls/issues/4
 - https://github.com/pion/ice/issues/197
 - https://github.com/pion/ice/issues/245
 - https://github.com/pion/ice/issues/60
 - https://github.com/pion/rtcp/issues/22
 - https://github.com/pion/rtcp/issues/8
 - https://github.com/pion/rtp/issues/15 -- Interceptor that applies abs-send-time
 - https://github.com/pion/rtp/issues/51
 - https://github.com/pion/rtp/issues/69
 - https://github.com/pion/rtp/issues/88
 - https://github.com/pion/sdp/issues/11
 - https://github.com/pion/srtp/issues/1
 - https://github.com/pion/stun/issues/35
 - https://github.com/pion/turn/issues/120
 - https://github.com/pion/turn/issues/134
 - https://github.com/pion/turn/issues/141
 - https://github.com/pion/turn/issues/76
 - https://github.com/pion/webrtc-voicemail/issues/2
 - https://github.com/pion/webrtc/issues/1002
 - https://github.com/pion/webrtc/issues/1242
 - https://github.com/pion/webrtc/issues/1278
 - https://github.com/pion/webrtc/issues/1315
 - https://github.com/pion/webrtc/issues/379
 - https://github.com/pion/webrtc/issues/549 -- Interceptor that outputs a pcap or rtpdump
 - https://github.com/pion/webrtc/issues/785 -- Write tests to assert behavior when local/remote codecs don't intersect
 - 
https://github.com/pion/webrtc/issues/839 -- 
defer peerConnection.Close()to all examples and make note in NewPeerConnection godoc) - https://github.com/pion/webrtc/issues/846
 - https://github.com/pion/webrtc/issues/1345
 - https://github.com/pion/webrtc/issues/1343
 - https://github.com/pion/turn/issues/150
 - https://github.com/pion/webrtc/issues/1356
 - https://github.com/pion/ice/issues/280
 - https://github.com/pion/dtls/issues/279
 - https://github.com/pion/rtp/issues/87
 - https://github.com/pion/rtp/issues/79
 - https://github.com/pion/srtp/issues/103
 - https://github.com/pion/turn/issues/171
 - https://github.com/pion/signaler/issues/4
 - https://github.com/pion/webrtc/issues/1491
 - https://github.com/pion/webrtc/issues/1494
 - https://github.com/pion/webrtc/issues/1512
 - https://github.com/pion/ice/issues/303
 - https://github.com/pion/dtls/issues/319
 - https://github.com/pion/interceptor/issues/9
 - https://github.com/pion/interceptor/issues/10
 - https://github.com/pion/sctp/issues/173
 
 
- Finish WebRTC For the Curious
 
- Finish WASM
 - TinyGo
 
Sign up for the Pion Discord for discussions and support
If you need commercial support/don't want to use public methods you can contact us at [email protected]