-
Notifications
You must be signed in to change notification settings - Fork 8
Questions about Media API #23
Comments
I think interceptors like CongestionControl should be constructed and inserted to the pipeline by PeerConnection who has all information including SSRC and PayloadType. |
As pion/webrtc couldn't actually handle raw media data, it's not same as |
In my understanding of WebRTC API, webrtc-v3-design/webrtc/track.go Lines 65 to 68 in 02ae911
|
#13 is my thought about sample based media processing. |
Opened a PR to realize this. |
@at-wat What do you think of doing
So we would do Done in 618a6fe feel free to revert @at-wat if you disagree! |
Hey @at-wat I am trying to play with this, but it isn't clicking at all for me :/ Would you mind writing the code that ties this all together? I can fill everything after. |
So this isn't about preference, but reacting to the offerer. Lets say I have two streams of video |
I think you have some really good ideas around API design here! I am having a really hard time following along, how can I empower you to get them all out? I really want to implement these, but having a hard time seeing the path forward. Tell me what I can do to help and would really like to implement all of the https://github.com/pion/webrtc-v3-design/tree/master/examples I think if we can get these 'working' we can then iterate on the API. We just don't have enough yet to implement them (I think?) |
@at-wat would you be up for working together synchronously via Slack sometime on this? If we could spend maybe 30 minutes discussing we could get this done super fast I think! |
I thought following procedure
Sure, I'll be online as possible. |
So, |
@at-wat I have started sketching out examples using the new media API (it looks really good!) I have some questions.
How do packets flow from
RTPLocalTrack
->RTPSender
I have done a simple example here is this what the public API should look like? How do packets flow?
What do you want to do about Samples/Packetization
This is a pretty common use case. What do you think of having a
LocalRTPTrack
implementer that only does samples? It will handle packetization, and push into theRTPSender
How do you want to handle codec been chosen at signaling time?
This is play-files-from-disk-dynamic mentioned in the README.
Lets say I have two streams H264 and VP8. I want to make an offer that contains both codecs, and then the remote will answer with all the codecs they support.
Does WriteInterceptor need more info?
Should we be doing CongestionControl here? That needs to happen even before the RTP Packets are generated I believe.
How does the WriteInterceptor know when to send a rtx? How does it know the SSRC/PayloadType to send?
Does ReadInterceptor need more info?
How does the ReadInterceptor send RTCP back?
What about
LocalMediaStreamTrack
andRemoteMediaStreamTrack
?Would that make more sense for users mapping them to the Javascript API?
The text was updated successfully, but these errors were encountered: