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: audio mixer #306

Merged
merged 13 commits into from
Jun 8, 2024
Merged

feat: audio mixer #306

merged 13 commits into from
Jun 8, 2024

Conversation

giangndm
Copy link
Contributor

@giangndm giangndm commented Jun 6, 2024

Pull Request

Description

This PR implement audio mixer with mix-minus technique in 2 mode

  • Auto: all audio sources will be mix into 3 outputs. We do it with distributed style where each server shares mix-outputs of each server for avoiding overload single server. Image we have 1000 users in 2 servers, each server only sends 3 audio stream to each other instead of 500.
  • Manual mode: user chose which audio track it interested in. This mode is useful with some spatial audio application.

Related Issue

If this pull request is related to any issue, please mention it here.

Checklist

  • I have tested the changes locally.
  • I have reviewed the code changes.
  • I have updated the documentation, if necessary.
  • I have added appropriate tests, if applicable.

Screenshots

If applicable, add screenshots to help explain the changes made.

Additional Notes

Add any additional notes or context about the pull request here.

@giangndm giangndm changed the title Feat audio mixer feat: audio mixer Jun 6, 2024
@giangndm giangndm added the enhancement New feature or request label Jun 6, 2024
Copy link

codecov bot commented Jun 6, 2024

Codecov Report

Attention: Patch coverage is 70.22857% with 521 lines in your changes missing coverage. Please review.

Project coverage is 45.05%. Comparing base (7075878) to head (a90bdc4).

Files Patch % Lines
packages/transport_webrtc/src/transport/webrtc.rs 31.46% 122 Missing ⚠️
...ackages/media_core/src/cluster/room/audio_mixer.rs 31.84% 107 Missing ⚠️
...ackages/media_core/src/cluster/room/media_track.rs 22.72% 51 Missing ⚠️
packages/media_core/src/cluster/room.rs 69.32% 50 Missing ⚠️
packages/media_core/src/endpoint/internal.rs 38.98% 36 Missing ⚠️
packages/protocol/src/protobuf/features.mixer.rs 0.00% 25 Missing ⚠️
.../media_core/src/cluster/room/audio_mixer/manual.rs 85.25% 23 Missing ⚠️
packages/media_runner/src/worker.rs 0.00% 17 Missing ⚠️
...es/media_core/src/endpoint/internal/local_track.rs 0.00% 16 Missing ⚠️
...dia_core/src/cluster/room/audio_mixer/publisher.rs 92.05% 12 Missing ⚠️
... and 14 more
Additional details and impacted files
@@            Coverage Diff             @@
##           master     #306      +/-   ##
==========================================
+ Coverage   41.66%   45.05%   +3.39%     
==========================================
  Files          86       95       +9     
  Lines        9151    10360    +1209     
==========================================
+ Hits         3813     4668     +855     
- Misses       5338     5692     +354     

☔ View full report in Codecov by Sentry.
📢 Have feedback on the report? Share it here.

@giangndm giangndm marked this pull request as ready for review June 8, 2024 08:20
@giangndm giangndm merged commit fd9c7a2 into 8xFF:master Jun 8, 2024
10 checks passed
@github-actions github-actions bot mentioned this pull request May 29, 2024
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
enhancement New feature or request
Projects
None yet
Development

Successfully merging this pull request may close these issues.

None yet

1 participant