Skip to content
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

feat: Codec Negotiation #1527

Open
wants to merge 80 commits into
base: main
Choose a base branch
from
Open
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
80 commits
Select commit Hold shift + click to select a range
f6b6336
feat: move preferred codec negotiation to the SFU
oliverlaz Oct 18, 2024
5105235
feat: move opus, dtx and red negotiation to the SFU too
oliverlaz Oct 18, 2024
70791ae
feat: correctly sort audio codec preferences
oliverlaz Oct 21, 2024
48cd0a2
Merge branch 'main' into codec-negotiation
oliverlaz Oct 22, 2024
6a05ca4
fix: don't announce RED if unsupported by the platform
oliverlaz Oct 22, 2024
b4cf770
fix: remove unnecessary iceRestart event handler on the subscriber
oliverlaz Oct 22, 2024
3de122b
fix: regenerate models
oliverlaz Oct 24, 2024
446d63f
Merge branch 'refs/heads/main' into codec-negotiation
oliverlaz Oct 24, 2024
f5a4bb7
Merge branch 'refs/heads/main' into codec-negotiation
oliverlaz Oct 31, 2024
6c79775
feat: prevent flickering when a new stream arrives for an existing pa…
oliverlaz Oct 31, 2024
4025e8e
fix: prevent flickering of participant's video when migrating
oliverlaz Oct 31, 2024
aae6cf8
chore: adjust tests
oliverlaz Oct 31, 2024
f313515
chore: reduce code duplication
oliverlaz Nov 1, 2024
5a41f52
Merge branch 'refs/heads/main' into codec-negotiation
oliverlaz Nov 1, 2024
08459e3
wip: server-side codec prioritization
oliverlaz Nov 1, 2024
c00193e
fix: close -> dispose
oliverlaz Nov 1, 2024
014a8b1
Merge branch 'main' into codec-negotiation
oliverlaz Nov 7, 2024
ddf5f43
feat: Codec Switching
oliverlaz Nov 8, 2024
8e3f91f
fix: lint
oliverlaz Nov 8, 2024
e38560d
do not stop the previous transceiver
thesyncim Nov 10, 2024
d23f575
Merge branch 'codec-switching' into codec-negotiation
oliverlaz Nov 11, 2024
2416185
Merge branch 'improved-reconciliation' into codec-negotiation
oliverlaz Nov 11, 2024
4f9c7de
fix: update protocol
oliverlaz Nov 11, 2024
3c34f1a
feat: handle ChangePublishOptions
oliverlaz Nov 12, 2024
01495ce
feat: handle ChangePublishOptions
oliverlaz Nov 12, 2024
a95c9ed
fix: remove outdated code
oliverlaz Nov 12, 2024
c3711dc
Merge branch 'main' into codec-negotiation
oliverlaz Nov 12, 2024
b78fcd4
Merge branch 'main' into codec-negotiation
oliverlaz Nov 13, 2024
7ff2221
feat: handle changePublishOptions
oliverlaz Nov 13, 2024
cda1dcd
feat: preferredCodec hint
oliverlaz Nov 14, 2024
5acc176
Merge branch 'main' into codec-negotiation
oliverlaz Nov 14, 2024
b463392
fix: correct mid
oliverlaz Nov 14, 2024
fd81f09
feat: use the latest protocol (preferred_publish_options)
oliverlaz Nov 14, 2024
4f8121e
chore: restore overrides
oliverlaz Nov 14, 2024
8422c04
chore: fix condition
oliverlaz Nov 14, 2024
9885b11
chore: clone track before republishing, prevent concurrent negotiations
oliverlaz Nov 14, 2024
9acd493
fix tests
oliverlaz Nov 18, 2024
6a32edb
feat: per track codec report
oliverlaz Nov 18, 2024
fa9d1ff
feat: per track codec report (firefox)
oliverlaz Nov 18, 2024
cc5b742
Merge branch 'refs/heads/main' into codec-negotiation
oliverlaz Nov 21, 2024
ca47e15
Merge branch 'main' into codec-negotiation
oliverlaz Nov 21, 2024
147356b
fix: screen share support
oliverlaz Nov 21, 2024
0a43afc
Merge branch 'refs/heads/main' into codec-negotiation
oliverlaz Nov 22, 2024
87fcc5c
Merge branch 'main' into codec-negotiation
oliverlaz Nov 27, 2024
6817470
Merge branch 'refs/heads/main' into codec-negotiation
oliverlaz Nov 27, 2024
dde6620
chore: remove unused code
oliverlaz Nov 27, 2024
07530ee
chore: reorganize file structure
oliverlaz Nov 27, 2024
d9fce8a
chore: remove unused field
oliverlaz Nov 27, 2024
777d1e7
chore: reorganize file structure
oliverlaz Nov 27, 2024
ff0c06f
Merge branch 'main' into codec-negotiation
oliverlaz Nov 28, 2024
9bb0030
fix: update to the newest protocol
oliverlaz Nov 29, 2024
7240b55
Merge branch 'main' into codec-negotiation
oliverlaz Dec 2, 2024
cf4ed2f
feat: update to the newest protocol, support publishing multiple trac…
oliverlaz Dec 3, 2024
acb4eac
Merge branch 'main' into codec-negotiation
oliverlaz Dec 3, 2024
daf2071
feat: support fmtp line for preferred codecs
oliverlaz Dec 3, 2024
77b2fce
feat: support target resolution overrides
oliverlaz Dec 4, 2024
4b9edc6
Merge branch 'main' into codec-negotiation
oliverlaz Dec 4, 2024
f6ce987
feat: pass-through fmtp line
oliverlaz Dec 5, 2024
0e6445b
Merge branch 'main' into codec-negotiation
oliverlaz Dec 5, 2024
2f3fc53
Merge branch 'main' into codec-negotiation
oliverlaz Dec 6, 2024
3ac0abf
fix: listen for changePublishOptions in Call as well
oliverlaz Dec 6, 2024
191bb93
fix: don't override codecs in RN
oliverlaz Dec 6, 2024
627e16c
feat: SubscribeOptions
oliverlaz Dec 9, 2024
c622f53
chore: add tests
oliverlaz Dec 9, 2024
5553488
Merge branch 'main' into codec-negotiation
oliverlaz Dec 9, 2024
157d56e
chore: codec -> codecs
oliverlaz Dec 10, 2024
738b413
chore: add warning
oliverlaz Dec 10, 2024
a4d6b21
fix: improve telemetry reporting
oliverlaz Dec 10, 2024
c6af6ba
Merge branch 'main' into codec-negotiation
oliverlaz Dec 10, 2024
b97e0c4
Merge branch 'refs/heads/main' into codec-negotiation
oliverlaz Dec 12, 2024
81041f5
fix: don't send encoding/decoding preferences on reconnect
oliverlaz Dec 13, 2024
8581666
fix: send current publish options (if available) on reconnect
oliverlaz Dec 13, 2024
8551971
Merge branch 'main' into codec-negotiation
oliverlaz Dec 13, 2024
e243995
Merge branch 'main' into codec-negotiation
oliverlaz Dec 16, 2024
dea33c8
chore: rename to `currentPublishOptions`
oliverlaz Dec 16, 2024
1c96ca2
Merge branch 'main' into codec-negotiation
oliverlaz Dec 18, 2024
02406a1
Merge branch 'refs/heads/main' into codec-negotiation
oliverlaz Dec 19, 2024
d75bd4c
feat: codec negotiation in react native
oliverlaz Dec 19, 2024
dd24426
chore: test builds for ios and android
oliverlaz Dec 19, 2024
9ca17d7
chore: add validation
oliverlaz Dec 19, 2024
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
4 changes: 2 additions & 2 deletions .github/workflows/react-native-workflow.yml
Original file line number Diff line number Diff line change
Expand Up @@ -129,7 +129,7 @@ jobs:
name: Deploy iOS
needs: build_ios
timeout-minutes: 60
if: ${{ github.ref == 'refs/heads/main' || github.ref == 'refs/heads/use-vp8-on-ios' }}
if: ${{ github.ref == 'refs/heads/main' || github.ref == 'refs/heads/codec-negotiation' }}
runs-on: macos-latest
steps:
- uses: actions/checkout@v4
Expand Down Expand Up @@ -266,7 +266,7 @@ jobs:
name: Deploy Android
needs: build_android
timeout-minutes: 60
if: ${{ github.ref == 'refs/heads/main' }}
if: ${{ github.ref == 'refs/heads/main' || github.ref == 'refs/heads/codec-negotiation' }}
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4
Expand Down
Loading
Loading