Some extra configurations are ignored
Overview Description:
I have default mpv config files here: ~/.config/mpv/mpv.conf Some lines are ignored, i.e. the vo even if I try to add it in command line:
$ celluloid --mpv-vo=gpu-next --mpv-gpu-api=vulkan --mpv-hwdec=vaapi <video-file>
Or here
Or here
)
Steps to Reproduce:
- Add mpv extra config
- Play a H.265 (Main 10 Profile) video file and it won't be clear.
Actual Results:
There is a bug around on my machine and it cannot play H.265 (Main 10 Profile) w/o flickering. So I have to add extra configuration to play it clearly. And actually, through the vaapi the cpu using is 10x less.
Expected Results:
With mpv player only, I can play video files clearly if I add my config here ~/.config/mpv/mpv.conf or in cli too.
Version:
$ celluloid --version
Celluloid 0.26
Additional Information:
I found interesting lines in the logs:
celluloid-INFO: 09:11:18.613: Loading mpv config file: file:///home/system7/.config/mpv/mpv.conf
(io.github.celluloid_player.Celluloid:232341): celluloid-DEBUG: 09:11:18.613: mpv config file path: /home/system7/.config/mpv/mpv.conf
(io.github.celluloid_player.Celluloid:232341): dconf-DEBUG: 09:11:18.613: unwatch_fast: "/io/github/celluloid-player/celluloid/" (active: 5, establishing: 0)
(io.github.celluloid_player.Celluloid:232341): dconf-DEBUG: 09:11:18.613: watch_fast: "/io/github/celluloid-player/celluloid/" (establishing: 0, active: 4)
celluloid-INFO: 09:11:18.613: Loading input config file: file:///home/system7/.config/mpv/mpv.conf
(io.github.celluloid_player.Celluloid:232341): celluloid-DEBUG: 09:11:18.613: Using temporary input config file: /tmp/.celluloid-QDYPC2
celluloid-INFO: 09:11:18.613: Loaded input config file: file:///home/system7/.config/mpv/mpv.conf
(io.github.celluloid_player.Celluloid:232341): dconf-DEBUG: 09:11:18.613: unwatch_fast: "/io/github/celluloid-player/celluloid/" (active: 5, establishing: 0)
(io.github.celluloid_player.Celluloid:232341): celluloid-DEBUG: 09:11:18.613: Applying extra mpv options: --vo=gpu-next --gpu-api=vulkan --hwdec=vaapi --options='--msg-level=all=trace'
(io.github.celluloid_player.Celluloid:232341): celluloid-DEBUG: 09:11:18.613: Applying option: --vo=gpu-next
(io.github.celluloid_player.Celluloid:232341): celluloid-DEBUG: 09:11:18.613: Applying option: --gpu-api=vulkan
(io.github.celluloid_player.Celluloid:232341): celluloid-DEBUG: 09:11:18.613: Applying option: --hwdec=vaapi
(io.github.celluloid_player.Celluloid:232341): celluloid-DEBUG: 09:11:18.613: Applying option: --options=--msg-level=all=trace
(io.github.celluloid_player.Celluloid:232341): celluloid-WARNING **: 09:11:18.613: Failed to apply option: --options=--msg-level=all=trace
celluloid-INFO: 09:11:18.614: Forcing --vo=libmpv
celluloid-INFO: 09:11:18.616: Failed to retrieve property "current-vo" as string.
celluloid-INFO: 09:11:18.616: Using mpv 0.36.0
Cannot load libcuda.so.1
neofetch
-` system7@AMBER
.o+` -------------
`ooo/ OS: Arch Linux x86_64
`+oooo: Host: 20XW005JMX ThinkPad X1 Carbon Gen 9
`+oooooo: Kernel: 6.5.5-arch1-1
-+oooooo+: Uptime: 4 days, 18 hours, 23 mins
`/:-:++oooo+: Packages: 1367 (pacman), 25 (flatpak)
`/++++/+++++++: Shell: bash 5.1.16
`/++++++++++++++: Resolution: 1920x1200
`/+++ooooooooooooo/` DE: GNOME 44.5
./ooosssso++osssssso+` WM: Mutter
.oossssso-````/ossssss+` WM Theme: Adwaita
-osssssso. :ssssssso. Theme: adw-gtk3 [GTK2/3]
:osssssss/ osssso+++. Icons: Papirus [GTK2/3]
/ossssssss/ +ssssooo/- Terminal: guake
`/ossssso+/:- -:/+osssso+- CPU: 11th Gen Intel i7-1165G7 (8) @ 4.700GHz
`+sso+:-` `.-/+oso: GPU: Intel TigerLake-LP GT2 [Iris Xe Graphics]
`++:. `-/+/ Memory: 10023MiB / 15721MiB
.` `/
$ vainfo
Trying display: wayland
vainfo: VA-API version: 1.20 (libva 2.20.0)
vainfo: Driver version: Intel iHD driver for Intel(R) Gen Graphics - 23.3.3 ()
vainfo: Supported profile and entrypoints
VAProfileNone : VAEntrypointVideoProc
VAProfileNone : VAEntrypointStats
VAProfileMPEG2Simple : VAEntrypointVLD
VAProfileMPEG2Simple : VAEntrypointEncSlice
VAProfileMPEG2Main : VAEntrypointVLD
VAProfileMPEG2Main : VAEntrypointEncSlice
VAProfileH264Main : VAEntrypointVLD
VAProfileH264Main : VAEntrypointEncSlice
VAProfileH264Main : VAEntrypointFEI
VAProfileH264Main : VAEntrypointEncSliceLP
VAProfileH264High : VAEntrypointVLD
VAProfileH264High : VAEntrypointEncSlice
VAProfileH264High : VAEntrypointFEI
VAProfileH264High : VAEntrypointEncSliceLP
VAProfileVC1Simple : VAEntrypointVLD
VAProfileVC1Main : VAEntrypointVLD
VAProfileVC1Advanced : VAEntrypointVLD
VAProfileJPEGBaseline : VAEntrypointVLD
VAProfileJPEGBaseline : VAEntrypointEncPicture
VAProfileH264ConstrainedBaseline: VAEntrypointVLD
VAProfileH264ConstrainedBaseline: VAEntrypointEncSlice
VAProfileH264ConstrainedBaseline: VAEntrypointFEI
VAProfileH264ConstrainedBaseline: VAEntrypointEncSliceLP
VAProfileVP8Version0_3 : VAEntrypointVLD
VAProfileHEVCMain : VAEntrypointVLD
VAProfileHEVCMain : VAEntrypointEncSlice
VAProfileHEVCMain : VAEntrypointFEI
VAProfileHEVCMain : VAEntrypointEncSliceLP
VAProfileHEVCMain10 : VAEntrypointVLD
VAProfileHEVCMain10 : VAEntrypointEncSlice
VAProfileHEVCMain10 : VAEntrypointEncSliceLP
VAProfileVP9Profile0 : VAEntrypointVLD
VAProfileVP9Profile0 : VAEntrypointEncSliceLP
VAProfileVP9Profile1 : VAEntrypointVLD
VAProfileVP9Profile1 : VAEntrypointEncSliceLP
VAProfileVP9Profile2 : VAEntrypointVLD
VAProfileVP9Profile2 : VAEntrypointEncSliceLP
VAProfileVP9Profile3 : VAEntrypointVLD
VAProfileVP9Profile3 : VAEntrypointEncSliceLP
VAProfileHEVCMain12 : VAEntrypointVLD
VAProfileHEVCMain12 : VAEntrypointEncSlice
VAProfileHEVCMain422_10 : VAEntrypointVLD
VAProfileHEVCMain422_10 : VAEntrypointEncSlice
VAProfileHEVCMain422_12 : VAEntrypointVLD
VAProfileHEVCMain422_12 : VAEntrypointEncSlice
VAProfileHEVCMain444 : VAEntrypointVLD
VAProfileHEVCMain444 : VAEntrypointEncSliceLP
VAProfileHEVCMain444_10 : VAEntrypointVLD
VAProfileHEVCMain444_10 : VAEntrypointEncSliceLP
VAProfileHEVCMain444_12 : VAEntrypointVLD
VAProfileHEVCSccMain : VAEntrypointVLD
VAProfileHEVCSccMain : VAEntrypointEncSliceLP
VAProfileHEVCSccMain10 : VAEntrypointVLD
VAProfileHEVCSccMain10 : VAEntrypointEncSliceLP
VAProfileHEVCSccMain444 : VAEntrypointVLD
VAProfileHEVCSccMain444 : VAEntrypointEncSliceLP
VAProfileAV1Profile0 : VAEntrypointVLD
VAProfileHEVCSccMain444_10 : VAEntrypointVLD
VAProfileHEVCSccMain444_10 : VAEntrypointEncSliceLP
Only vo=libmpv is supported right now (if you try to set vo to something else, it will be overridden). We need it so that we can use the rendering API, which is the only embedding method that works on Wayland.