Earlier quoted context omitted.
Why would that be disabled by default?
Because if you don't have to enable a flag or two in a text config file what's the fun of using Linux after all :)
Mpv – A free, open-source, and cross-platform media player
441–450 of 576 posts
Re: Mpv – A free, open-source, and cross-platform media player
#442Earlier quoted context omitted.
> A playback architecture that can wrangle all of that cruelty into a consistent experience was hard won. No, it hasn't. The only reason I use mpv instead of VLC is because of the frame step feature. Everyone else has proven that it is possible and practical to do. Never let the perfect be the enemy of the good. If people don't use your product, it doesn't matter how right and pure of vision you are.
> No, it hasn't. The only reason I use mpv instead of VLC is because of the frame step feature You realise your requirement is important for less than 0.01% of users? For every requirement you have to balance future maintainability and the impact it has on the code base against potential revenue
Even outside of specialist uses (and not just in the field of video, either), most people like being able to pause a video on a specific frame to be able to study it more closely. Often that requires (or at least the task is made much simpler by) being able to step forwards and back frame-by-frame.
Re: Mpv – A free, open-source, and cross-platform media player
#443Earlier quoted context omitted.
> Because it's the one you can reasonably suggest to all your utterly nontechnical friends and relatives I concurr.- PS. On a related tangent the amount of unpaid "support" tech knowledgeable individuals are doing for (particularly) FAANG is enormous.-
> PS. On a related tangent the amount of unpaid "support" tech knowledgeable individuals are doing for (particularly) FAANG is enormous.- Which is exactly the same for every profession. If you have a plumber friend and have issues with plumbing, who you call first, a random contractor or your friend? Replace "plumber/plumbing" with any profession and the answer is usually the same, you call your friend first, at leas…
I was just wondering about what the sum total of the (otherwise) "billable" hours might amount to, were they to be accounted for as a cost of business for FAANG.-
Re: Mpv – A free, open-source, and cross-platform media player
#444Earlier quoted context omitted.
The developer responds to a comment: But many players are able to do it for years. with: If it's so easy, why are you not doing it? He's not just a butthole, he's a stereotypical open source developer butthole. On the other hand, if he worked for Microsoft, he'd be claiming that it takes a PhD to do it...
The dev said they are happy to accept patch for this feature. Remember that you're not entitled to demand new features, as a (non-paying) user, you can't allocate dev's time to work on what you want.
No he didn’t.
Re: Mpv – A free, open-source, and cross-platform media player
#445Earlier quoted context omitted.
I'll be happy to switch over to MPV for this alone. VLC is great in general, but lacking some basic features. This sort of 'not possible' nonsense from developers is always a sign of a project's long-term decline.
"not possible" is as much nonsense as "everything is possible". Is it possible for vlc to implement support for rendering and editing common 3d object models? Yes! But is it possible given what vlc was set out to do? No! I think another sign of a projects long term decline is developers that are all too happy to expand the scope of the project. If that happens I just know that down the line the feature I started usin…
Re: Mpv – A free, open-source, and cross-platform media player
#446Earlier quoted context omitted.
i wonder why he's such an ass about it, and totally adamant that it's impossible when multiple players already do this fast. ego?
I think technically he’s correct (I haven’t worked on media decoding code, but I understand how common video encoding formats work). If you have a long video with only a single key frame at the beginning then to step back you would need to, starting from the beginning of the video, decode every frame up to the previous frame you wanted to jump to in order to apply frame deltas, also assuming you have some sort of fra…
Re: Mpv – A free, open-source, and cross-platform media player
#447I use it to inspect video frames by frames, particularly being able to go back one frame. VLC doesn't support it, this thread about the feature is hilarious https://forum.videolan.org/viewtopic.php?t=120627
This thread is amazing. Thanks for pointing it out. What's lovely is that it is indeed possible, but not trivial, and you can see Remi is sort of baiting to catch smart talented programmers to the project. You can see the patience and long term horizon needed to lead a volunteer open source project. Time to study VLC more. Thanks!
Re: Mpv – A free, open-source, and cross-platform media player
#448Earlier quoted context omitted.
I don't really know what "scrubbing" is, but If you add "exact" to seek then it will use exact (non-keyframe) seeks. I think that's what you want? For example from my input.conf: Right seek 5 # In seconds; these are limited by keyframes Left seek -5 Shift+Right seek 2 exact # Smaller non-keyframe-limited, seeks with shift Shift+Left seek -2 exact Obviously, this is slower. Sometimes much slower (depending on the file…
> Obviously, this is slower. Sometimes much slower (depending on the file). Anecdotally, I’d change that “sometimes” to “often”. After years of using `exact` I finally stopped. It always felt that the wait was longer than going to the previous keyframe and rewatching the bit. Now if I could only find the perfect timing to go back, though.
That said, I have replaced most of my "exact seeks" with "sub-seek"; in input.conf:
Alt+Right sub-seek 1 # Go to next/previous sub (within demuxer-readahead-secs)
Alt+d sub-seek 1
Alt+Left sub-seek -1
Alt+a sub-seek -1
And then in mpv.conf: demuxer-readahead-secs=120 # sub-seek only works within this cache
demuxer-hysteresis-secs=60 # Fill cache only if lower than this; saves battery
This allows me to fairly quickly skip past stuff that's not too interesting, while still actually following the gist of what's going on.I think it's also bound by default, but I'm not sure what that is from the top of my head. You'll definitely need to set that cache as it's only 2 seconds or so by default.
Re: Mpv – A free, open-source, and cross-platform media player
#449Earlier quoted context omitted.
Disagree! VLC is what it is today because the authors understood video standards enough to make the _right_ abstractions that could generalize to ~every video format ever. That is no easy task. Video container standards are utterly perverse, and seem to delight in stomping over even the most innocent intuitions about what you would expect to find in a stream of bits that purports to contain "video". They often refuse…
> A playback architecture that can wrangle all of that cruelty into a consistent experience was hard won. No, it hasn't. The only reason I use mpv instead of VLC is because of the frame step feature. Everyone else has proven that it is possible and practical to do. Never let the perfect be the enemy of the good. If people don't use your product, it doesn't matter how right and pure of vision you are.
>Never let the perfect be the enemy of the good. If people don't use your product, it doesn't matter how right and pure of vision you are.
This is great advice... for a business. VLC isn't a business, it's a useful thing that exists. It gives people fulfillment to donate their time to keep it useful and relevant. That fulfillment is going to be directly proportional to how elegant the design is and how much leverage they have, i.e. small amount of good code provides wide amount of functionality for many happy users. The more that maintenance of VLC degrades towards "brutal hand-crafted specialization of huge switch cases", the less well-maintained it's going to be. This is not an excuse, it's a statement about human nature, something akin to economics.
It's possible that mpv picked a better abstraction and they can provide a strictly better application for the same or less software maintenance cost. But I tend to suspect that the differences arise from levels of support, not better design. That's just a spider sense though.
Re: Mpv – A free, open-source, and cross-platform media player
#450Earlier quoted context omitted.
> I even use it when an image I saved ends up as .html for some reason and then use the info screen to determine the real extension it should be so I can rename it If you’re on Linux on macOS, you’ll have access to the `file` command-line tool which can do it effectively. In a couple of lines of shell scripting you can even have it auto-change the extension. https://en.wikipedia.org/wiki/File_(command)
I had someone try to tell me this or some similar alternative method once, but for this particular use-case my method seemed faster. Usually I'm viewing the dir with the file in ranger, hit r (shortcut for :open_with ), type mpv, enter, I in mpv for info, q to quit, a in ranger to rename the file with old name pretyped in. It's a pretty smooth workflow. Assuming I start from the same place in ranger I have to press c…
#!/bin/bash
# Usage: fix-extensions
# Renames the files to consistent file extensions based on content
for file in "$@"; do
[ -f "$file" ] || continue
dir=$(dirname "$file")
name=$(basename "$file")
prefix="${name%.*}"
ext="${name##*.}"
magic=$(file -b "$file")
newext=""
case "$magic" in
*"Apple QuickTime movie"*) newext=mov;;
"ISO Media, Apple iTunes Video"*) newext=mp4;;
"ISO Media, MP4"*) newext=mp4;;
"ISO Media, MPEG-4 (.MP4)"*) newext=mp4;;
"Macromedia Flash data"*) newext=swf;;
"Macromedia Flash Video") newext=flv;;
"Matroska data") newext=mkv;;
"Microsoft ASF"*) newext=wmv;;
"MPEG sequence"*) newext=mpeg;;
"Ogg data, OGM video"*) newext=ogm;;
"RealMedia file") newext=rm;;
"RIFF "*" data, AVI,"*) newext=avi;;
"WebM") newext=webm;;
esac
if [ -z "$newext" ]; then
echo >&2 "$file: not renaming, unknown extension for type '$magic'"
elif [ "$ext" != "$newext" ]; then
mv -v "$file" "$dir/$prefix.$newext"
fi
done