this post was submitted on 21 May 2024
13 points (93.3% liked)
KDE
5397 readers
107 users here now
KDE is an international technology team creating user-friendly free and open source software for desktop and portable computing. KDE’s software runs on GNU/Linux, BSD and other operating systems, including Windows.
Plasma 6 Bugs
If you encounter a bug, proceed to https://bugs.kde.org/, check whether it has been reported.
If it hasn't, report it yourself.
PLEASE THINK CAREFULLY BEFORE POSTING HERE.
Developers do not look for reports on social media, so they will not see it and all it does is clutter up the feed.
founded 1 year ago
MODERATORS
you are viewing a single comment's thread
view the rest of the comments
view the rest of the comments
As far as I understand, MPV is a video player application and offers libmpv as a high-level video playback library. I'm not sure, if it makes use of GStreamer or ffmpeg under the hood, but it wouldn't surprise me.
GStreamer is somewhat lower in the stack and much more generic. It allows orchestrating various steps in a media processing pipeline, so could also be used for video editing or transcoding or the like.
And ffmpeg is a library specifically for transcoding of as many formats as possible. You can use ffmpeg as part of GStreamer via a plugin, for example. But there is also a really useful ffmpeg CLI, with which you can script all kinds of file conversions, like MP3 to OGG Opus is something I do often.
But you can also use ffmpeg to play videos, through
ffplay
. Which might use gstreamer under the hood or not?Yeah. The
ffplay
documentation says:Given that, I would expect that it actually doesn't make use of GStreamer, just to really keep things as simple as possible.
From a programming perspective, it isn't really surprising that these projects have overlap. You see that quite often, that some venerable library, like ffmpeg, does a massive chunk of the grunt work and then you've got libraries like GStreamer and libmpv, which sit on top of that, and 'just' integrate it into a wider framework or tie it all together for a specific purpose.
From an outside perspective, that will make it look like they're all similar, because the core of the magic, ffmpeg, is included into all of them (I assume).
It's just more confusing here than in other projects, because each of these projects is visible to us users in some way.
Very strange :D
Then Fedora only ships libav stuff, which is forked off ffmpeg, and only includes the free stuff. I wonder how these now work together