FreeTube icon indicating copy to clipboard operation
FreeTube copied to clipboard

[Feature Request]: Override default video player settings / Retain player settings within session

Open efb4f5ff-1298-471a-8973-3d47447115dc opened this issue 3 years ago • 15 comments

Guidelines

  • [X] I have searched the issue tracker for a feature request that matches the one I want to file, without success.
  • [X] I have searched the documentation for information that matches the description of the feature request I want to file, without success.

Problem Description

When https://github.com/FreeTubeApp/FreeTube/issues/2263 was opened up. I noticed how many issues were actually opened for the same request. So here we are making a big summary.

Why do we want this? Let say in the settings i have set my default video quality to 1080p. My internet provider is giving me a hard time today so while im watching a video i switch from 1080p to 360p in the video player. The next video should also run in 360p because i just have overwriting the default quality because my provider giving me a hard time.

I could write usecases for the rest but i assume u get my point. U change it in the player for a reason.

Proposed Solution

Player buttons from the left to right, that already do this.

  • [x] Volume
  • [x] Playback speed ¤
  • [ ] Captions
  • [x] PIP ¤ (pending)
  • [x] Theatre mode ¤
  • [x] Fullwindow ¤ (pending)
  • [x] Fullscreen ¤ (pending)
  • [ ] Video Quality
  • [ ] Dash/Legacy/Audio Formats
  • [ ] Audio Tracks (i.e., stable volume)

¤Persists through contiguous viewing session (i.e., until leaving the Watch page)

Alternatives Considered

I do understand that some people like it that the default settings overwrite the player settings when a next video is being played. We maybe could have 2 modes?

  1. Player settings is always overwritten by default settings when another video is being player.
  2. Player settings dont get overwritten and stay like u set them to be for that session.

Issue Labels

ease of use improvement

Additional Information

I understand that this will be a difficult and long discussion. The point of this issue is to centralize the discussion to this issue instead of 8 other issues.

Allot of discussion has already taken place here.

Most important bit of discussion is the settings scope manifesto provided by @jasonhenriquez

Makes sense to keep everything for the session, if someone is watching a video playlist in full screen odds are they want to continue watching in fullscreen instead of having to focus freetube and manually fullscreen every video. Especially not if it is shorter videos like vines (if those still exist) or music (2-4 minute long videos generally)

Considering how PiP currently works I also doubt anyone watching playlists or autoplay will benefit from having to manually close PIP every video (since it blackscreens when the video switches) and reopen a new one

I don't see what usecases there would be for automatically overriding the current settings with some defaults. If anyone does have use cases that would benefit from keeping the current functionality I'd be happy to hear about them, but as things currently stand I don't see a reason to make this a toggle instead of just replacing it with the current volume functionality

anonaddict avatar Jun 06 '22 17:06 anonaddict

This issue is stale because it has been open 28 days with no activity. Remove stale label or comment or this will be closed in 7 days.

github-actions[bot] avatar Oct 10 '22 02:10 github-actions[bot]

This issue is stale because it has been open 28 days with no activity. Remove stale label or comment or this will be closed in 7 days.

github-actions[bot] avatar Nov 08 '22 02:11 github-actions[bot]

I'm working on a feature adding stylized radio button groups an ft-icon-button dropdown. We could use this to add radio button group toggles for these video player - changeable settings:

  • Playback Rate
  • Video Quality
  • Theater Mode
  • Fullscreen
  • Fullwindow
  • Picture in Picture

To start off, we can probably only display levels 3, 4, and 6 of the settings manifesto, as those are the easiest. 3 is just saving in component state, 4 is using stateWithSideEffects if a secondary toggle is enabled (i.e., has one particular string value) for that given feature, and 6 is how we do it normally.

kommunarr avatar Oct 23 '23 13:10 kommunarr

Simpler idea: what about a toggle or checkmark on the Watch route titled something like Remember video settings throughout session?

kommunarr avatar Jan 02 '24 22:01 kommunarr

The default settings or if it changed?

Settings scope 4 on the manifesto is what I had in mind:

Another has setting changes that persist throughout the entire session but not in different sessions (i.e., how volume works currently).

kommunarr avatar Jan 02 '24 22:01 kommunarr

4 seems like the most logical route to me.

So how is the "keep the fullscreen while in playlist" feature going nowaday ?

on4r4p avatar Mar 25 '24 04:03 on4r4p

Would also love to see the "keep the fullscreen while in playlist" in upcoming releases :)

AedDev avatar Apr 06 '24 23:04 AedDev