mpv-player / mpv

🎥 Command line video player
https://mpv.io
Other
26.75k stars 2.84k forks source link

Video rotate not working with mpv rkmpp #6674

Open Adegres opened 5 years ago

Adegres commented 5 years ago

mpv version and platform

mpv - 0.28.0-1ayufan5 for Rock64 Armhf from the ppa:ayufan/rock64-ppa. I understand this isn't the newest version, but there really don't seem to be any changes to the functionality for this issue. The issue also persists on TinkerBoard S armhf.

Reproduction steps

mpv --vo-gpu --gpu-api=opengl --gpu-context=drm --gpu-hwdec-interop=drmprime-drm --hwdec=rkmpp --keep-open --video-rotate=0 On a 1080x1920 or any portrait video, or mpv --vo-gpu --gpu-api=opengl --gpu-context=drm --gpu-hwdec-interop=drmprime-drm --hwdec=rkmpp --keep-open --video-rotate=90 On a 1920x1080 or any landscape video

Expected behavior

The video is rotated.

Actual behavior

Black screen in this case, and an error message for each frame: [vo/gpu/drmprime-drm] Failed to create framebuffer on layer 0.

Log file

https://0x0.st/zc8l.txt

ghost commented 4 years ago

Since the video frame is rendered as overlay in this case, someone would have to dive the code and determine how rotated DRM overlays can be created.

Or alternatively, if there's a good way yet to makle rkmpp surfaces as textures, and remove the overlay code.

fooishbar commented 1 year ago

Yeah, the Rockchip display controller can’t do rotation. DRM/KMS won’t do it via a copy either: if the hardware doesn’t support it (which is iirc exposed as a plane property), then it must be done by the post-processor, which IIRC mpp can handle.