`--hwdec=auto --gpu-context=wayland` keeps my dGPU awake.
Nobody has claimed this yet.
- Dominant language
- C
- Stars
- 37k
- Forks
- 3.5k
- Avg merge
- 1d 10h
- Merged PRs (30d)
- 22
Description
mpv Information
mpv v0.39.0 Copyright © 2000-2024 mpv/MPlayer/mplayer2 projects
built on Sep 23 2024 17:46:22
libplacebo version: v7.349.0
FFmpeg version: n7.0.2
FFmpeg library versions:
libavcodec 61.3.100
libavdevice 61.1.100
libavfilter 10.1.100
libavformat 61.1.100
libavutil 59.8.100
libswresample 5.1.100
libswscale 8.1.100
Other Information
- Linux version: "Arch Linux"
- Kernel Version: Linux Korialo-Arch 6.11.5-274-tkg-eevdf #1 SMP PREEMPT_DYNAMIC TKG Wed, 30 Oct 2024 21:58:24 +0000 x86_64 GNU/Linux
- GPU Model: 00:02.0 VGA compatible controller [0300]: Intel Corporation CometLake-H GT2 [UHD Graphics] [8086:9bc4] (rev 05)
01:00.0 VGA compatible controller [0300]: NVIDIA Corporation GA104M [GeForce RTX 3080 Mobile / Max-Q 8GB/16GB] [10de:249c] (rev a1)
- Mesa/GPU Driver Version: OpenGL version string: 4.6 (Compatibility Profile) Mesa 24.2.6-arch1.1
- Window Manager and Version: Hyprland, built from branch at commit 4520b30d498daca8079365bdb909a8dea38e8d55 (version: bump to 0.44.1).
- Source mpv: pacman
- Introduced in version: na
Reproduction Steps
Just run:
~ took 23s at 20:40:04
❯ mpv --no-config --vo=gpu-next --hwdec=auto --gpu-context=wayland filename.mkv
in my case vaapi was shown as the decoder.
But when I check the dGPU status through:
~ took 20s at 20:48:34
❯ watch cat /sys/bus/pci/devices/0000:01:00.0/power/runtime_suspended_time
the counter stops indicating that my dGPU is currently running.
Now if I directly switch to --hwdec=vaapi, and ran the above command the dGPU is suspended.
Expected Behavior
If --hwdec=auto and vaapi is the decoding method, you expect the iGPU to be utilized, and dGPU is free to suspend/sleep.
Actual Behavior
Actually I don't fully understand how --hwdec=auto works, so I don't know if this an expected behavior or not, but the dGPU should not be running if not used.
Log File
Sample Files
No response
I carefully read all instruction and confirm that I did the following:
- I tested with the latest mpv version to validate that the issue is not already fixed.
- I provided all required information including system and mpv version.
- I produced the log file with the exact same set of files, parameters, and conditions used in "Reproduction Steps", with the addition of
--log-file=output.txt. - I produced the log file while the behaviors described in "Actual Behavior" were actively observed.
- I attached the full, untruncated log file.
- I attached the backtrace in the case of a crash.
Contributor guide
No contributing guide indexed for this repository
First steps
- Read the whole issue, then the project's contributing guide.
- Comment on the issue to say you are picking it up — it saves two people doing the same work.
- Fork the repository and make your change on a branch.
- Open a pull request that references the issue number.
Research direction
Reproduce the command using --hwdec=auto, --hwdec=vaapi, --vo=gpu-next, and --gpu-context=wayland while watching /sys/bus/pci/devices/0000:01:00.0/power/runtime_suspended_time. Compare the behavior with output.txt and determine whether mpv's hardware-decoder or Wayland GPU selection keeps the dGPU active; done means the behavior is explained and the reported mismatch is corrected if it is a bug.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- c
- Domain
- cli, desktop, operating-systems
- Issue type
- Bug
- Difficulty
- 4/5
- Estimated time
- 3-5 days
- Activity status
- Stale
- Clarity
- Needs clarification
- Newbie friendliness
- 32/100