jellyfin / jellyfin-mpv-shim

MPV Cast Client for Jellyfin
Other
1.53k stars 91 forks source link

mpv shim was able to transcode when it was turned off for an user #209

Open d3lac opened 3 years ago

d3lac commented 3 years ago

Describe the bug

mpv shim was able to transcode a video when it was disabled for that particular user.

System (please complete the following information):

To Reproduce

  1. Create an user with transcode disabled and login to mpv shim with that user
  2. Open mpv shim conf.json (I'm using Windows 10 - %appdata%\jellyfin-mpv-shim\conf.json)
  3. Check the line "always_transcode": false, change it to true and restart mpv shim
  4. Now open and try playing any video, it will transcode.

Logs

https://del.dog/raw/vafisappeg

Screenshots

https://imgur.com/a/hsEnys2

ByteOPCode commented 3 years ago

Hi, I am also able to reproduce this issue.

my administrator has disabled trans-coding for my profile and I am able to transcode by changing to config property to true in my Linux MPV Shim config ( ~/.config/jellyfin-mpv-shim/conf.json )

nyanmisaka commented 3 years ago

-codec:v:0 copy -codec:a:0 copy means Remuxing(video repackage). mpv shim needs to update the descriptions.

nielsvanvelzen commented 3 years ago

CC @iwalton3

iwalton3 commented 3 years ago

I don’t know that there is much I can do about this. That option drops all of the direct play profiles, but the server can still decide to direct stream if it is in the confines of the bitrate and codec limits.

nyanmisaka commented 3 years ago

The actual play method can be obtained from the session. https://github.com/jellyfin/jellyfin-web/blob/e7521162097fdb5b2731510a634339be9a690add/src/components/playback/playmethodhelper.js#L1-L17

iwalton3 commented 3 years ago

Ok so I can more accurately display what happens, but there isn’t anything I can do about the “always transcode” option not actually always transcoding.

nyanmisaka commented 3 years ago

Since this option Allow video playback that requires conversion without re-encoding. is checked, video remux is taking place as expected. The user was misled by "Transcode" description.