Comments (20)
shift+i
It's tvos. How could he use the keyborad...
from mpv.
Like that @CounterPillow ?
MPV & MPVLib are mentioned, the others players too, as well as the metadata sources (TMDB & TVDB).
If you want more disclosures in other parts, tell me (just before i'm blocking you, because i don't like your attitude)
from mpv.
I don't have keyboard on my Android device,
tvOS is not based on Android...
from mpv.
With the amount of information provided, it is impossible to diagnose this issue. Please provide log file and shift+i stats in both cases. And sample file, so we know what we are looking at.
from mpv.
I don't have keyboard on my Android device, yet I can enable stats. Believe or not the technology is there to implement such feature without keyboard.
Also if it is not reproducible with mpv desktop binary it means the issue is on the integration side and should be reported there.
from mpv.
logs: http://www.danstaface.net/mpvlog.txt
video with the problem: http://www.danstaface.net/testhdr.mkv
I'm on mac, and gpu-next is not enabled yet on my build, so i can't test if the problem exists with the mpv binary
from mpv.
Metadata from decoder are incorrect for this video
2024-05-10 13:48:41.962 [vd] info: Using hardware decoding (videotoolbox).
2024-05-10 13:48:41.962 [vd] v: Decoder format: 3840x1920 [0:1] videotoolbox[p010] bt.709/bt.709/bt.1886/limited/auto CL=uhd crop=3840x1920+0+0
Should be:
[ 1.667332] vd: Using software decoding.
[ 1.667494] vd: Decoder format: 3840x2160 yuv420p10 dolbyvision/bt.2020/pq/limited/auto CL=uhd crop=3840x2160+0+0
Needs debugging where params are lost in this case.
from mpv.
i believe the expectations are completely wrong here?
for one gpu-next and libmpv render (i am assuming it's using the render api, since the macvk context doesn't have a tvos backend) are mutually exclusive.
or they are using code that is not even in master, eg this one #7857.
though in both cases, the user itself is responsible for activating HDR/EDR on Apple platforms, since they manage the layer + view themselves.
gonna quote myself. this is analog to an UIView + CAMetalLayer (- opengl view remark):
TLDR:
- set
wantsExtendedDynamicRangeContent = true
on the CAOpenGLLayer- set
wantsExtendedDynamicRangeOpenGLSurface = true
on the view containing the above layer- set the proper colour space on the above layer (
layer.colorspace =
), to the color primaries/transfer characteristics of the VO target (see below--target-trc
and--target-prim
)- set primaries/transfer characteristics
--target-trc
and--target-prim
of the displayfirst 3 make macOS aware that the window/view/layer is presenting something in HDR/EDR, 3 alone tells macOS what colour space the content is rendered in, 4 tells mpv to what characteristics to render to.
also see the Apple docs for the 3 possible ways as reference. they removed the opengl ones sadly, so one has to transfer a little bit.
[edit]
2024-05-10 13:48:41.291 [vo/gpu-next/vulkan] v: Initializing GPU context 'moltenvk'
yeah this is the code from the not merged closed PR.
from mpv.
Does this mean that mpv no longer supports iOS / tvOS platforms? GLES has been deprecated for a long time, and the only future left is metal, which is supported via gpu-next / libplacebo / vulkan?
from mpv.
no, nothing official. we still support those as much as before. a deprecation isn't a removal (yet). i know the feeling of not wanting to use opengl, though that's the only way to do it for now.
the closed not merged PR wasn't rejected and i am in favour of merging it or something similar in the future. i just didn't get to it yet.
see also our Want to work on mpv? issue. we are looking for someone to to work on libmpv to make gpu-next usable with it.
from mpv.
Does this mean that mpv no longer supports iOS / tvOS platforms? GLES has been deprecated for a long time, and the only future left is metal, which is supported via gpu-next / libplacebo / vulkan?
Contributions are welcome. Since you seem to be building tvOS product based on libmpv library, feel free to contribute and changes to the library itself.
from mpv.
Ok, I would like to contribute but little knowledge of C and video / audio in general.
Currently, there are 2 patches for iOS / tvOS:
- 1 to use moltenvk directly
- 1 to compile MPV 0.38 on iOS
Is there any particular reason to use libmpv when you can use gpu-next directly?
With these 2 patches, mpv works perfectly on iOS and tvOS (apart from the color issue).
I'll help as best I can (with patches if I can, and debugging/testing).
from mpv.
with libmpv's render API you (can) driver your own render loop, on the other hand the wid embedding from the mentioned PR the mpv core drives the render loop. both approaches have their pros and cons, depending on the implementation. it's probably a bit much discussing this here though.
i am not sure what patch you mean. though if there is something broken with compiling for iOS/tvOS (is there an open issue?) and there is no PR for it, it would be a good start to open PR to get it fixed.
we should also get #7857 rolling again. there were a few questions that still needed to be sorted out. though in general i believe there is nothing major that speaks against that approach.
from mpv.
This is the patch i talked about, if the author is present here he can make a PR ? Otherwise, i will post it myself
Plugins/BuildFFmpeg/patch/libmpv/0002-fix-ios-build-failed-on-0.38.0.patch
from mpv.
that one is already in master e7b0d6b
from mpv.
Oh ok... Why didn't I check before... 🙄😅
with libmpv's render API you (can) driver your own render loop, on the other hand the wid embedding from the mentioned PR the mpv core drives the render loop. both approaches have their pros and cons, depending on the implementation. it's probably a bit much discussing this here though.
Yes, I can see the difference, and it's true that having control over his own code is always an advantage. Personally, I don't see any problem in using wid
in the first instance.
from mpv.
with opengl on macOS the problem was a lot more apparent, because the only viable way of doing opengl was a CAOpenGLLayer and with that you had to drive your own render loop to make it work properly.
it's a lot less problematic with metal and how drawable objects work.
from mpv.
It appears @skrew is using libmpv for a commercial player that makes no effort to disclose the used libmpv and ffmpeg sources, as is required per the LGPL. This means he is engaging in large-scale software piracy for commercial gain.
from mpv.
Read the LGPL license terms, simply mentioning you're using libmpv is not enough. It is funny you're complaining about my attitude when you're the one freeloading off other people's work, and then being pissy when it doesn't do what you want it to do.
from mpv.
Ah, Plex 2.0 ?
from mpv.
Related Issues (20)
- Frame skipping when playing 720p 50/60fps video on a 1080p60 monitor using vo=gpu-next with gpu-api=opengl.
- Make ytd_hook.lua's ytdl binary file path and the ytdl json output available to other scripts HOT 3
- MPV throwing increase the analyze duration and unknown codec error
- In fractional scaling on X (Cinnamon) if no app in "always on top": when starting and exiting full screen mpv resets display(s) back and forth HOT 6
- Sourceforge mpv downloader. HOT 3
- Tone map V-Log to PQ HDR HOT 7
- How to change the vertical position of the floating progress bar Or how to hide the floating progress bar? HOT 1
- Please considering remove `smb` from `X-KDE-Protocols` in desktop entry. HOT 2
- `--no-title-bar` mode the title bar appears after toggling fullscreen and window-maximized HOT 4
- Please allow users to disable and hide the floating progress bar completely. HOT 2
- Changes in mpv output log HOT 7
- why if do not use '--playlist' to open playlist in 0.38, playlist items randomize HOT 1
- Audio and Video go out of sync when using video-sync=display-resample HOT 2
- With [vo=direct3d], mpv does not render osc/osd/logo when opening app without playing file (idle mode)
- [question] is there a limit to entries for m3u playlist files in mpv? HOT 10
- wasapi Dolby THD channel confusion can we use LAV Filters HOT 23
- What are the units of the equalizer? HOT 4
- v0.37.0 v0.38.0 high gpu usage in win10 22h2 HOT 1
- A way to disable a command's repeatability (I need it for volume) HOT 2
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from mpv.