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(playback-core): custom cap level controller #1010

Merged
merged 6 commits into from
Nov 22, 2024

Conversation

cjpillsbury
Copy link
Contributor

@cjpillsbury cjpillsbury commented Nov 7, 2024

Implements a custom CapLevelController that ensures we never cap to 480p (portrait or landscape)

To test:

  1. Go to: https://elements-demo-nextjs-git-fork-cjpillsbury-feat-custo-7d5867-mux.vercel.app/MuxPlayer
  2. In the config UI, use the width input to set MuxPlayer's width to something smaller than 480p (keep in mind dpp, so you may want to choose something small like 200
  3. In the config UI, use the playbackId input to set the desired playbackId (or choose one from the dropdown)
  4. Confirm that quality doesn't look sad
  • NOTE: For advanced/programmatic confirmation, you can e.g. open the browser's dev tools beforehand, go to the network tab, filter by .m3u8, and make sure the video media playlists being requested match a resolution > 480p from the response content of the multivariant playlist

@cjpillsbury cjpillsbury requested a review from a team as a code owner November 7, 2024 19:21
Copy link

vercel bot commented Nov 7, 2024

@cjpillsbury is attempting to deploy a commit to the Mux Team on Vercel.

A member of the Team first needs to authorize it.

Copy link

vercel bot commented Nov 7, 2024

The latest updates on your projects. Learn more about Vercel for Git ↗︎

Name Status Preview Comments Updated (UTC)
elements-demo-create-react-app ✅ Ready (Inspect) Visit Preview 💬 Add feedback Nov 22, 2024 4:30pm
elements-demo-nextjs ✅ Ready (Inspect) Visit Preview 💬 Add feedback Nov 22, 2024 4:30pm
elements-demo-svelte-kit ✅ Ready (Inspect) Visit Preview 💬 Add feedback Nov 22, 2024 4:30pm
elements-demo-vanilla ✅ Ready (Inspect) Visit Preview 💬 Add feedback Nov 22, 2024 4:30pm
elements-demo-vue ✅ Ready (Inspect) Visit Preview 💬 Add feedback Nov 22, 2024 4:30pm

@cjpillsbury cjpillsbury force-pushed the feat/custom-cap-level-controller branch from 6c5bc65 to 5cbb78c Compare November 22, 2024 20:43
@cjpillsbury cjpillsbury merged commit e49e231 into muxinc:main Nov 22, 2024
4 of 10 checks passed
@github-actions github-actions bot mentioned this pull request Dec 10, 2024
luwes pushed a commit that referenced this pull request Dec 12, 2024
🤖 I have created a release *beep* *boop*
---


<details><summary>@mux/mux-active-viewer-count: 0.2.0-alpha.10</summary>

##
[0.2.0-alpha.10](https://github.com/muxinc/elements/compare/@mux/mux-active-viewer-count@0.2.0-alpha.9...@mux/mux-active-viewer-count@0.2.0-alpha.10)
(2024-12-12)


### Features

* Set default player init time for all elements for greater accuracy.
Expose attr+prop for externally defined player init time.
([#1034](#1034))
([61f10d3](61f10d3))


### Bug Fixes

* move package exports default condition to be last
([#1013](#1013))
([192aa79](192aa79))
</details>

<details><summary>@mux/mux-audio: 0.15.0</summary>

##
[0.15.0](https://github.com/muxinc/elements/compare/@mux/mux-audio@0.14.0...@mux/mux-audio@0.15.0)
(2024-12-12)


### Features

* Set default player init time for all elements for greater accuracy.
Expose attr+prop for externally defined player init time.
([#1034](#1034))
([61f10d3](61f10d3))


### Bug Fixes

* move package exports default condition to be last
([#1013](#1013))
([192aa79](192aa79))
* **mux-video, mux-video-react, mux-audio, mux-audio-react, mux-player,
mux-player-react:** Expose element name and version via exports and
statics for web components.
([#1017](#1017))
([27b6858](27b6858))
* tracks updating after load new playback id
([#1021](#1021))
([b762184](b762184))


### Dependencies

* The following workspace dependencies were updated
  * dependencies
    * @mux/playback-core bumped from 0.27.0 to 0.28.0
</details>

<details><summary>@mux/mux-audio-react: 0.12.0</summary>

##
[0.12.0](https://github.com/muxinc/elements/compare/@mux/mux-audio-react@0.11.0...@mux/mux-audio-react@0.12.0)
(2024-12-12)


### Features

* Set default player init time for all elements for greater accuracy.
Expose attr+prop for externally defined player init time.
([#1034](#1034))
([61f10d3](61f10d3))
* use MC media-error-dialog
([#1014](#1014))
([2fbb2c1](2fbb2c1))


### Bug Fixes

* move package exports default condition to be last
([#1013](#1013))
([192aa79](192aa79))
* **mux-video, mux-video-react, mux-audio, mux-audio-react, mux-player,
mux-player-react:** Expose element name and version via exports and
statics for web components.
([#1017](#1017))
([27b6858](27b6858))


### Dependencies

* The following workspace dependencies were updated
  * dependencies
    * @mux/playback-core bumped from 0.27.0 to 0.28.0
</details>

<details><summary>@mux/mux-player: 3.2.0</summary>

##
[3.2.0](https://github.com/muxinc/elements/compare/@mux/mux-player@3.1.0...@mux/mux-player@3.2.0)
(2024-12-12)


### Features

* Set default player init time for all elements for greater accuracy.
Expose attr+prop for externally defined player init time.
([#1034](#1034))
([61f10d3](61f10d3))
* use MC media-error-dialog
([#1014](#1014))
([2fbb2c1](2fbb2c1))


### Bug Fixes

* move package exports default condition to be last
([#1013](#1013))
([192aa79](192aa79))
* Mux-player childList observer behavior
([#1041](#1041))
([d34903f](d34903f))
* **mux-video, mux-video-react, mux-audio, mux-audio-react, mux-player,
mux-player-react:** Expose element name and version via exports and
statics for web components.
([#1017](#1017))
([27b6858](27b6858))
* upgrade player.style 0.1.0
([#1032](#1032))
([ef71319](ef71319))


### Dependencies

* The following workspace dependencies were updated
  * dependencies
    * @mux/mux-video bumped from 0.22.0 to 0.23.0
    * @mux/playback-core bumped from 0.27.0 to 0.28.0
</details>

<details><summary>@mux/mux-player-react: 3.2.0</summary>

##
[3.2.0](https://github.com/muxinc/elements/compare/@mux/mux-player-react@3.1.0...@mux/mux-player-react@3.2.0)
(2024-12-12)


### Features

* Set default player init time for all elements for greater accuracy.
Expose attr+prop for externally defined player init time.
([#1034](#1034))
([61f10d3](61f10d3))
* use MC media-error-dialog
([#1014](#1014))
([2fbb2c1](2fbb2c1))


### Bug Fixes

* move package exports default condition to be last
([#1013](#1013))
([192aa79](192aa79))
* **mux-video, mux-video-react, mux-audio, mux-audio-react, mux-player,
mux-player-react:** Expose element name and version via exports and
statics for web components.
([#1017](#1017))
([27b6858](27b6858))
* React 19 bool prop to attr value bug
([#1026](#1026))
([52bca58](52bca58))


### Dependencies

* The following workspace dependencies were updated
  * dependencies
    * @mux/mux-player bumped from 3.1.0 to 3.2.0
    * @mux/playback-core bumped from 0.27.0 to 0.28.0
</details>

<details><summary>@mux/mux-uploader: 1.1.0</summary>

##
[1.1.0](https://github.com/muxinc/elements/compare/@mux/mux-uploader@1.0.2...@mux/mux-uploader@1.1.0)
(2024-12-12)


### Features

* Set default player init time for all elements for greater accuracy.
Expose attr+prop for externally defined player init time.
([#1034](#1034))
([61f10d3](61f10d3))


### Bug Fixes

* move package exports default condition to be last
([#1013](#1013))
([192aa79](192aa79))
</details>

<details><summary>@mux/mux-uploader-react: 1.0.4</summary>

##
[1.0.4](https://github.com/muxinc/elements/compare/@mux/mux-uploader-react@1.0.3...@mux/mux-uploader-react@1.0.4)
(2024-12-12)


### Bug Fixes

* move package exports default condition to be last
([#1013](#1013))
([192aa79](192aa79))


### Dependencies

* The following workspace dependencies were updated
  * dependencies
    * @mux/mux-uploader bumped from 1.0.2 to 1.1.0
</details>

<details><summary>@mux/mux-video: 0.23.0</summary>

##
[0.23.0](https://github.com/muxinc/elements/compare/@mux/mux-video@0.22.0...@mux/mux-video@0.23.0)
(2024-12-12)


### Features

* Set default player init time for all elements for greater accuracy.
Expose attr+prop for externally defined player init time.
([#1034](#1034))
([61f10d3](61f10d3))


### Bug Fixes

* move package exports default condition to be last
([#1013](#1013))
([192aa79](192aa79))
* **mux-video, mux-video-react, mux-audio, mux-audio-react, mux-player,
mux-player-react:** Expose element name and version via exports and
statics for web components.
([#1017](#1017))
([27b6858](27b6858))
* tracks updating after load new playback id
([#1021](#1021))
([b762184](b762184))


### Dependencies

* The following workspace dependencies were updated
  * dependencies
    * @mux/playback-core bumped from 0.27.0 to 0.28.0
</details>

<details><summary>@mux/mux-video-react: 0.13.0</summary>

##
[0.13.0](https://github.com/muxinc/elements/compare/@mux/mux-video-react@0.12.0...@mux/mux-video-react@0.13.0)
(2024-12-12)


### Features

* Set default player init time for all elements for greater accuracy.
Expose attr+prop for externally defined player init time.
([#1034](#1034))
([61f10d3](61f10d3))
* use MC media-error-dialog
([#1014](#1014))
([2fbb2c1](2fbb2c1))


### Bug Fixes

* move package exports default condition to be last
([#1013](#1013))
([192aa79](192aa79))
* **mux-video, mux-video-react, mux-audio, mux-audio-react, mux-player,
mux-player-react:** Expose element name and version via exports and
statics for web components.
([#1017](#1017))
([27b6858](27b6858))


### Dependencies

* The following workspace dependencies were updated
  * dependencies
    * @mux/playback-core bumped from 0.27.0 to 0.28.0
</details>

<details><summary>@mux/playback-core: 0.28.0</summary>

##
[0.28.0](https://github.com/muxinc/elements/compare/@mux/playback-core@0.27.0...@mux/playback-core@0.28.0)
(2024-12-12)


### Features

* **playback-core:** custom cap level controller
([#1010](#1010))
([e49e231](e49e231))
* Set default player init time for all elements for greater accuracy.
Expose attr+prop for externally defined player init time.
([#1034](#1034))
([61f10d3](61f10d3))
* use MC media-error-dialog
([#1014](#1014))
([2fbb2c1](2fbb2c1))


### Bug Fixes

* move package exports default condition to be last
([#1013](#1013))
([192aa79](192aa79))
</details>

---
This PR was generated with [Release
Please](https://github.com/googleapis/release-please). See
[documentation](https://github.com/googleapis/release-please#release-please).

Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>
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.

1 participant