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: support applying music mode constraints #27

Merged
merged 1 commit into from
Mar 4, 2023

Conversation

brycetham
Copy link
Contributor

This PR adds the necessary constraints and methods to support music mode on local audio tracks.

It adds the following APIs to LocalTrack:

  • applyConstraints: useful for applying music mode constraints to the track, though it doesn't work for audio constraints on Chrome; still, I think it'll be useful for other browsers like Firefox, so that it doesn't need to make a new call to getUserMedia.
  • getConstraints: not strictly necessary for music mode but useful for testing purposes.
  • getSettings: as far as I know, this is the recommended way to get the device ID of the track, useful for calling getUserMedia again on Chrome.

@arun3528
Copy link
Contributor

arun3528 commented Feb 1, 2023

thanks for testing it out, The code base will change significantly with the beta version https://github.com/webex/webrtc-core/tree/beta

just FYI

@bbaldino
Copy link
Collaborator

bbaldino commented Feb 1, 2023

lgtm. @arun3528 should he do this against the beta branch instead?

@brycetham
Copy link
Contributor Author

@bbaldino I think we're going to wait until the beta branch is merged in, and then merge this PR in after.

shivani1211 pushed a commit to shivani1211/webrtc-core that referenced this pull request Feb 22, 2023
* commitlint rules for body ([17d2057](webex@17d2057))
* dependent package vulnerability ([webex#62](webex#62)) ([803f296](webex@803f296))
* disable integration tests (temporary) ([webex#68](webex#68)) ([75064a4](webex@75064a4))
* enable sonar with quality gate check as part of build ([webex#54](webex#54)) ([ae10580](webex@ae10580))
* fix import path ([webex#27](webex#27)) ([eee0d88](webex@eee0d88))
* fix the way we do exports ([webex#19](webex#19)) ([cc8cc85](webex@cc8cc85))
* handle underlying track being undefined in addTransceiver ([webex#35](webex#35)) ([b9bbca6](webex@b9bbca6))
* hookup cspell and eslint for lint-staged ([webex#16](webex#16)) ([ad42e8b](webex@ad42e8b))
* make track class abstract and ensure correct track import path ([webex#21](webex#21)) ([3fdf38c](webex@3fdf38c))
* media-stream-track param no longer optional ([webex#31](webex#31)) ([bf49615](webex@bf49615)), closes [webex#33](webex#33)
* release initial package on @webex/webrt-core ([d359d77](webex@d359d77))
* remove blank testbed until needed and correct readme steps ([webex#17](webex#17)) ([e31de4f](webex@e31de4f))
* remove error logs ([webex#44](webex#44)) ([8a3817e](webex@8a3817e))
* remove redundant git remote ([webex#52](webex#52)) ([b6c2d33](webex@b6c2d33))
* sonar fixes ([webex#56](webex#56)) ([6e7ce8a](webex@6e7ce8a))
* support ice gathering already being complete in getLocalDescriptionWithIceCandidates ([webex#40](webex#40)) ([e22429a](webex@e22429a))
* update adapterjs ([webex#70](webex#70)) ([ce6a151](webex@ce6a151))
* update new npm org and registry ([webex#57](webex#57)) ([21b16f5](webex@21b16f5))
* update node to use v16 ([webex#67](webex#67)) ([4ea99a8](webex@4ea99a8))

* add getter for remote description ([webex#66](webex#66)) ([021b771](webex@021b771))
* add getunderlyingrtcpeerconnection method on peerconnection class ([webex#64](webex#64)) ([5abb6be](webex@5abb6be))
* add some more peer connection functionality ([webex#34](webex#34)) ([2058263](webex@2058263))
* add support for creating an rtcdatachannel ([webex#15](webex#15)) ([66d88b2](webex@66d88b2))
* enhance browser support ([webex#59](webex#59)) ([3e87bac](webex@3e87bac))
* events object on local-track class ([webex#24](webex#24)) ([53b4068](webex@53b4068))
* export the datachannel options type ([webex#60](webex#60)) ([8c62610](webex@8c62610))
* expose checkdevicepermissions method ([webex#65](webex#65)) ([41ed515](webex@41ed515))
* import webrtc-adapter ([webex#69](webex#69)) ([7b3834f](webex@7b3834f))
* migrating the wcme track to webrtc core ([bdee8c6](webex@bdee8c6))
* peer connection events; helper functions ([webex#23](webex#23)) ([7fa6727](webex@7fa6727))
shivani1211 pushed a commit to shivani1211/webrtc-core that referenced this pull request Feb 22, 2023
# 1.0.0 (2022-11-14)

### Bug Fixes

* commitlint rules for body ([17d2057](webex@17d2057))
* dependent package vulnerability ([webex#62](webex#62)) ([803f296](webex@803f296))
* disable integration tests (temporary) ([webex#68](webex#68)) ([75064a4](webex@75064a4))
* enable sonar with quality gate check as part of build ([webex#54](webex#54)) ([ae10580](webex@ae10580))
* fix import path ([webex#27](webex#27)) ([eee0d88](webex@eee0d88))
* fix the way we do exports ([webex#19](webex#19)) ([cc8cc85](webex@cc8cc85))
* handle underlying track being undefined in addTransceiver ([webex#35](webex#35)) ([b9bbca6](webex@b9bbca6))
* hookup cspell and eslint for lint-staged ([webex#16](webex#16)) ([ad42e8b](webex@ad42e8b))
* make track class abstract and ensure correct track import path ([webex#21](webex#21)) ([3fdf38c](webex@3fdf38c))
* media-stream-track param no longer optional ([webex#31](webex#31)) ([bf49615](webex@bf49615)), closes [webex#33](webex#33)
* release initial package on @webex/webrt-core ([d359d77](webex@d359d77))
* remove blank testbed until needed and correct readme steps ([webex#17](webex#17)) ([e31de4f](webex@e31de4f))
* remove error logs ([webex#44](webex#44)) ([8a3817e](webex@8a3817e))
* remove redundant git remote ([webex#52](webex#52)) ([b6c2d33](webex@b6c2d33))
* sonar fixes ([webex#56](webex#56)) ([6e7ce8a](webex@6e7ce8a))
* support ice gathering already being complete in getLocalDescriptionWithIceCandidates ([webex#40](webex#40)) ([e22429a](webex@e22429a))
* update adapterjs ([webex#70](webex#70)) ([ce6a151](webex@ce6a151))
* update new npm org and registry ([webex#57](webex#57)) ([21b16f5](webex@21b16f5))
* update node to use v16 ([webex#67](webex#67)) ([4ea99a8](webex@4ea99a8))

### Features

* add getter for remote description ([webex#66](webex#66)) ([021b771](webex@021b771))
* add getunderlyingrtcpeerconnection method on peerconnection class ([webex#64](webex#64)) ([5abb6be](webex@5abb6be))
* add some more peer connection functionality ([webex#34](webex#34)) ([2058263](webex@2058263))
* add support for creating an rtcdatachannel ([webex#15](webex#15)) ([66d88b2](webex@66d88b2))
* added connection state handling ([webex#8](webex#8)) ([0c7c7e0](webex@0c7c7e0))
* enhance browser support ([webex#59](webex#59)) ([3e87bac](webex@3e87bac))
* events object on local-track class ([webex#24](webex#24)) ([53b4068](webex@53b4068))
* export the datachannel options type ([webex#60](webex#60)) ([8c62610](webex@8c62610))
* expose checkdevicepermissions method ([webex#65](webex#65)) ([41ed515](webex@41ed515))
* import webrtc-adapter ([webex#69](webex#69)) ([7b3834f](webex@7b3834f))
* migrating the wcme track to webrtc core ([bdee8c6](webex@bdee8c6))
* peer connection events; helper functions ([webex#23](webex#23)) ([7fa6727](webex@7fa6727))
@bbaldino bbaldino merged commit 081b8b2 into main Mar 4, 2023
github-actions bot pushed a commit that referenced this pull request Mar 6, 2023
# [1.4.0](v1.3.0...v1.4.0) (2023-03-06)

### Bug Fixes

* update disposeEffects doc ([fa6d58b](fa6d58b))

### Features

* Method named getNumActiveSimulcastLayers & event to LocalTrack for constraints changed ([#35](#35)) ([9298169](9298169))
* support applying music mode constraints ([#27](#27)) ([081b8b2](081b8b2))
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

3 participants