-
Notifications
You must be signed in to change notification settings - Fork 5
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
RTP Muxer #173
base: rtp-demuxer
Are you sure you want to change the base?
RTP Muxer #173
Conversation
178a7f5
to
3646889
Compare
ac6f353
to
5f98ea7
Compare
cb4e235
to
4b341c8
Compare
lib/membrane/rtp/muxer.ex
Outdated
@@ -0,0 +1,179 @@ | |||
defmodule Membrane.RTP.Muxer do | |||
@moduledoc false |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
🤔
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I guess I forgor
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Can we have a test where we demux and mux packets two times and check if we get the same results? That would need to happen on a stream that's already past the jitter buffer.
lib/membrane/rtp/muxer.ex
Outdated
sequence_number = rem(stream_state.sequence_number + 1, @max_sequence_number + 1) | ||
|
||
state = | ||
Bunch.Struct.put_in(state, [:stream_states, pad_ref, :sequence_number], sequence_number) |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
don't use Bunch.Struct
lib/membrane/rtp/muxer.ex
Outdated
@@ -1,5 +1,9 @@ | |||
defmodule Membrane.RTP.Muxer do | |||
@moduledoc false | |||
@moduledoc """ | |||
Element that combines multiple streams into a single RTP stream. Each new input stream is assigned a unique SSRC, that the packets |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
The first line is used as a short description
Element that combines multiple streams into a single RTP stream. Each new input stream is assigned a unique SSRC, that the packets | |
Element that combines multiple streams into a single RTP stream. | |
Each new input stream is assigned a unique SSRC, that the packets |
|> Bunch.Struct.update_in(:ssrc, &(&1 - ssrc)) | ||
|> Bunch.Struct.update_in(:sequence_number, &(&1 - first_sequence_number)) | ||
# round to ignore insignificant differences in timestamps | ||
|> Bunch.Struct.update_in(:timestamp, &round((&1 - first_timestamp) / 10)) |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Bunch.Struct 😡
closes membraneframework/membrane_core#911