| Commit message (Collapse) | Author | Age | Files | Lines |
|
|
|
|
|
|
| |
This reverts commit f56a7af9f696aab7f4095f282f22dcbe7c758c9e.
This was incorrectly merged. There's no folder parameter in the version
of the function on the release branch.
|
| |
|
| |
|
| |
|
|
|
|
|
|
|
|
| |
It sometimes happens on exit, and it's probably a bad idea. If the
process hangs on exit (possibly due to stupid hardcoded timeouts it's
doing), mpv will also hang now, unfortunately.
(cherry picked from commit be9bf4cc7c1b61a8abcbb3f64386ef10d8aa9f61)
|
|
|
|
| |
(cherry picked from commit 21cb1f70752705a28750df10b873e9f6af6efc2e)
|
|
|
|
|
| |
Signed-off-by: wm4 <wm4@nowhere>
(cherry picked from commit bc503a0e88f3daec886e4b936a00d6890a19240b)
|
|
|
|
| |
(cherry picked from commit 5d2a2c7fc2ff048fd679f30064397453affe3d1d)
|
|
|
|
|
|
|
|
| |
Conflicts:
player/audio.c
player/video.c
(cherry picked from commit f9ff4b59a266cfbbcf7dc633b2c31cf97c67abc4)
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
It appears some WMs have a problem with out method of setting initial
fullscreen mode. We assume that if the window's _NET_WM_STATE includes
_NET_WM_STATE_FULLSCREEN before mapping the window, the WM will show it
as fullscreen at mapped. EWMH doesn't say anything that this should
work, although one could argue that it's implied.
In any case, since it's not standard behavior without at least some
doubt, it's probably a good idea to try the "old" method as well.
Fortunately, it should be idempotent.
See #1937, #1920.
(cherry picked from commit a4f3df5970cc34d8899dbd31b3475f7bd6547f3f)
|
|
|
|
|
|
| |
Leads to some nice memory corruption otherwise.
(cherry picked from commit 06bfa9309d848b41ef1394ebc4311a879f8f4093)
|
|
|
|
|
|
|
| |
pts can never be 0 or negative. If there is no frame, some code below
catches this case by checking hasframe.
(cherry picked from commit 372b85b9d20e3bc97120e2506ef9f89224e0f84e)
|
| |
|
|
|
|
| |
(cherry picked from commit 9251fa125f6ebc0f485c93af1809efb7b6da19bd)
|
|
|
|
| |
(cherry picked from commit 0468a4ea47cb42de3406dc4e3737c8595cb556bc)
|
|
|
|
| |
(cherry picked from commit a23a46c6ede4673fb73afe152723f8c23cc5d28e)
|
|
|
|
|
|
|
|
| |
Arch linux is about to update to lua 5.3.x, but lua 5.2.x will be
provided by package lua52, which contains pkg-config file lua52.pc.
Signed-off-by: wm4 <wm4@nowhere>
(cherry picked from commit 5b085fd8b172648a03244d6546d130144b7870bf)
|
|
|
|
|
|
|
|
| |
Some code always calls vo_event(), even with event==0, which leads to
immediate wakeup, which in turn causes the function to be called again.
This would burn CPU, which was especially noticeable when paused.
(cherry picked from commit 0bdef9979f74db33d1c84ee788c45f5e1d8e0d0d)
|
|
|
|
|
|
| |
Quite an oversight.
(cherry picked from commit 4d9255a5e1a1c5be805800070a79ef1bcc1a150a)
|
|
|
|
|
|
|
|
|
| |
Gives the VOs more flexibility.
gl_video.c already ignores the timing info if no interpolation is
active, so this requires no further changes.
(cherry picked from commit af157db7e5803fbe8b323ba2e9671e65c8fd6c2c)
|
|
|
|
|
|
|
|
|
| |
There is not much of a reason to have these wrappers around. Use POSIX
standard functions directly, and use a separate utility function to take
care of the timespec calculations. (Course POSIX for using this weird
format for time values.)
(cherry picked from commit 92b9d75d7256be71d8c8b18438af9494b78f0e96)
|
|
|
|
|
|
|
| |
The main reason for this was compatibility; but some associated problems
have been solved in the previous commit.
(cherry picked from commit ca9964a4fb6b1faa0155da43b3c815db0075e2d5)
|
|
|
|
|
|
|
|
|
|
|
|
| |
As usual, we prefer plain C11 names and semantics, and have to emulate
them if C11 atomics are not available.
For the non-atomic fallback (which is just there to make code compile in
situations the atomic property is not overly important), we require a
gross hack to make the generic macros work without using compiler-
specific extensions.
(cherry picked from commit cc24ec5b3cf7709bbd16a9505a6acc8156f63af1)
|
|
|
|
|
|
|
| |
The first one (for VOCTRL_GET_DISPLAY_FPS) could have led to undefined
behavior if the FPS was unknown. The second is for general symmetry.
(cherry picked from commit 10149f68a5c6cb9783ed7595998985d7e586e871)
|
|
|
|
| |
(cherry picked from commit 47ee67b8a24d2acc40b959df7d4ceb98c6e3c1c8)
|
|
|
|
|
|
|
| |
When --no-video is set, the ytdl-format is set to "bestaudio/best". This
wasn't documented in the man page yet.
(cherry picked from commit 5d7468a06e5ac72f431fdc4e006d335fdb1566b1)
|
|
|
|
|
|
| |
We don't allow tabs in normal source code.
(cherry picked from commit 9438f811ae5713e59873931d167c8c8472dc12db)
|
|
|
|
|
|
| |
Fixes #1927.
(cherry picked from commit 1f389b05fcb252639bbcf0c340c2e5db0b3b5026)
|
|
|
|
|
|
| |
These device options can be NULL, and NULL can't be passed for %s.
(cherry picked from commit 34ee78f2cba0510cc37162e89cbdc9d4a9514f92)
|
|
|
|
|
|
|
|
|
|
|
| |
Now among other things panscan can be changed during playback.
Unfortunately, it flickers. The issue is that reconfig() clears the
framebuffer. Removing the clearing shows that the "unused" parts of
the picture are not cleared - even though OSD could render there. As
such, this is a separate issue.
(cherry picked from commit 56310605690288f44c49363413e68f7c73325ed1)
|
|
|
|
|
|
|
|
| |
When running with --panscan=1, this could crash - because the current
frame was reduced in size each time the image was redrawn, which would
result in a failed assertion the second time it's drawn.
(cherry picked from commit 859ddc99064357c752c6f6dfa475cb96430531d2)
|
|
|
|
|
|
| |
Prevents the OSC from showing up on start on Cocoa.
(cherry picked from commit 51120c9c7fc23bc7009dfddd2132a8e8ef9e466e)
|
|
|
|
|
|
|
|
| |
Drop mp_chmap_diff() (which is unused too now), and implement
mp_chmap_diffn() in a slightly simpler way. (Too bad there is no
standard function for counting set bits.)
(cherry picked from commit 00130651dac758f90bf98306a9d1e569ed4155ca)
|
|
|
|
|
|
| |
It's unsued now.
(cherry picked from commit 8d5924f2c9c7d80b45cd68b44cb9c74e7b0b5a8c)
|
|
|
|
|
|
| |
Useful for debugging cases when no standard orders are used.
(cherry picked from commit 8b7035c8ff15f14c17b6c019e951226b9eeaca02)
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Instead of somehow having 4 different cases with each their own weight,
do it with a single function that decides which channel layout is the
better fallback.
This is simpler, and also introduces new (fixed) semantics. The new test
added to test/chmap_sel.c actually works now. This is a mixed case with
no perfect upmix or downmix, but the better choice is the one which
loses the least channels from the original layout.
One test also changes. If the input is 7.1(wide-side), and the available
layouts are 7.1 and 5.1(side), the latter is now chosen instead of the
former. This makes sense: both layouts contain 6 out of 8 channels from
the original layout, but the 5.1(side) one is smaller. This follows the
general logic. The 7.1 layout has FLC/RLC speakers instead of BL/BR,
and judging by the names, "front left center" is completely different
from "back left". If these should be exchangeable, a separate exception
would have to be added.
(cherry picked from commit 3560a50029e160f0606d0cdc6aa1da662bbcace8)
|
|
|
|
| |
(cherry picked from commit 5142b0e3f3e2cefc5564122db5a0c4a31bc805b4)
|
|
|
|
|
|
|
|
| |
Reuse MP_SPEAKER_ID_NA for this. If all mp_chmap entries are set to NA,
the channel layout has special "unknown channel layout" semantics, which
are used to deal with some corner cases.
(cherry picked from commit 55e777f10b3e241f2634b471e482bab230773ce0)
|
|
|
|
|
|
|
| |
Remove the requirement from mp_chmap that speaker entries must be
unique. Use this to get rid of all the redundant NA speaker IDs.
(cherry picked from commit b91b4944bd7ddf6fef4c4254d457117017292c0a)
|
|
|
|
| |
(cherry picked from commit d32b71d52e9a45c141d2bd132189db68613ab0fb)
|
|
|
|
| |
(cherry picked from commit ad9bce2a5ca62f6a64f65fe79ae170edc0e05da4)
|
|
|
|
|
|
| |
This reverts commit af930e2a2e3f33aa11a0fea3d6c3e3c7344b21fb.
Better avoid big behavior changes within a release series.
|
| |
|
|
|
|
|
|
| |
This made no sense and always evaluated to true.
(cherry picked from commit 7b09654c33ca81aede475235121ebc938791dc80)
|
|
|
|
|
|
| |
Is simpler and avoids exposing profile structs to a degree.
(cherry picked from commit 036a49478ff6cc19abfa06b7807bd4653eb9ce33)
|
|
|
|
| |
(cherry picked from commit b12ca2b980f8c5c620b42c2c034bb27a824cc112)
|
|
|
|
|
|
|
| |
While mpv has no internal equivalent representation, they can still be
used as physical CoreAudio formats. Thus this label is confusing.
(cherry picked from commit 1bcb82ec93cc3e037df2dd4e2216a473fe87baf9)
|
|
|
|
|
|
|
| |
Should prevent the EDL parser from tripping over = and , in the
URL.
(cherry picked from commit 6a0a67034d925a640a9239754c5f06e6e689c27d)
|
|
|
|
|
|
| |
(I won't do this, but someone else seeing this might.)
(cherry picked from commit cd5ab98ff992217abfd0234601c21eb0fe0dbc19)
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Sometimes, ALSA will return channel layouts with padded channels (NA
speakers). Use them instead of failing.
This still includes the old "braindeath" code to retry with a layout
without NA channels. This might be helpful for performance, and also the
padded channel layout string looks confusing.
To be fair, I have not encountered a case yet which would really need
this, and for which the old "braindeath" code did not fix it.
(cherry picked from commit 85fc6b2a0569b24c5652f600d90d7a131b61eb07)
|
|
|
|
|
|
|
| |
One side effect is that the warning about too many channels goes away,
and is replaced with printing the ALSA channel map as "unknown".
(cherry picked from commit d577872a28c9729e987566530905bde238af8109)
|
|
|
|
| |
(cherry picked from commit 9434aa75b2613b1d00ad713f5db7a6e4f639792c)
|
|
|
|
| |
(cherry picked from commit f58d3591d9c192c9d68a76a0a4ffddd7516c0ef2)
|
|
|
|
|
|
|
| |
It seems if the format was already set, setting the same format will
not cause a property change.
(cherry picked from commit 0ae0e90eb5348c58d5b4f13fe0792199c460a4b6)
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
volatile barely means anything.
The polling is kind of bad too, but relatively harmless as device
opening/closing is a rare event, and the format change is not expected
to take long.
Remove the pointless talloc call too (must have been a leftover
from previous refactoring).
(cherry picked from commit 4444ff48fa578461688fe9feb9ebcd996cd64506)
|
|
|
|
|
|
| |
PCM is digital too.
(cherry picked from commit 028739932bf4e2d32439b3756811a2b06cc81128)
|
|
|
|
| |
(cherry picked from commit 1e1045b13ea4acbbd77dd52c4e0599f1517e6ac3)
|
|
|
|
|
|
|
|
| |
No reason to keep them separate. It's an artifact from the old
ao_coreaudio.c, which kept usage of two different APIs in the same file.
Removes a forward reference too.
(cherry picked from commit 32bc61ae07fe441c327b4aa96dd80fa4771fd569)
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
This should fix some crashes due to dangling pointers.
The problem was that with_cocoa_lock_on_main_thread() is asynchronous.
It will not wait until it is finished. In the uninit case, this means
the VO could be deallocated and destroyed while cocoa was still running
uninit code.
So simply wait until it is done by using dispatch_sync(). There were
concerns that this could introduce a deadlock by the main thread trying
to wait for something on the VO thread. But from what I can see, this
never happens, and even if it does, it would crash anyway since the VO
is already gone.
One remaining worry is the video_resize_redraw_callback. From what I can
see, it still can mess things up, and will need a more elaborate fix.
(cherry picked from commit e7777563018fc711c873ba9480744f0961786077)
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Instead of trying to use af_format_conversion_score() (which tries to be
all kinds of clever), just compare the raw bits as a quality measure. Do
this because otherwise, weird formats like padded 24 bit formats will be
excluded, even though they might be the highest precision formats for
some hardware.
This means that for now, the user would have to check whether the format
is usable at all before calling ca_asbd_is_better(). But since this is
currently only used for ao_coreaudio.c and for the physical format, it
doesn't matter.
If coreaudio-exclusive should get PCM support, the best would be to
revert this change, and to add support for 24 bit formats directly.
(cherry picked from commit 4ffcf2531bb525c19c3b6df75ecb27c5cffbdd28)
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Some time ago, a mechanism was added for automatically removing PCM-only
filters if the input format is spdif.
This could cause an infinite loop if the AO did not support spdif, but
was falling back to some PCM format. Then this code tried to remove the
last filter, which is a dummy filter for receiving and queuing filter
output. af_remove() simply fails gracefully in this case, so this
happens over and over again.
Fix by explicitly checking whether the filter to remove is a dummy
filter. (af_remove() also fails only if the dummy filters are attempted
to be removed - checking this directly is simpler.)
(cherry picked from commit 0025030cef757327769982333f9105aa510c393d)
|
|
|
|
|
|
|
| |
These ( ) were probably not removed when the format constants were
changed from defines to an enum.
(cherry picked from commit d76f9a484ea7795655637eb0ddc8655aa4fff345)
|
|
|
|
|
|
|
| |
Instead, apply a trick to make the caller allocate enough space on the
stack.
(cherry picked from commit 399267393bb96710cde53c2fc7563f55cc32deb8)
|
|
|
|
|
|
|
|
| |
It appears this is the reason coreaudio-exclusive does not work without
explicitly specifying a device, even if the default device maps to
something passthrough-capable.
(cherry picked from commit 7a5f5a8adf5921ed8fcee29d76113d9a7f018974)
|
|
|
|
|
|
| |
Didn't use the properties it was supposed to use.
(cherry picked from commit bbedceb467033b239b35ee9b2db963a93d8a57c9)
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Instead of always picking a somehow better format over the previous one,
select a format that is equal to or better the requested format, but is
also reasonably close.
Drop the mFormatID comparison - checking the sample format handles this
already.
Make sure to exclude channel counts that can't be used.
(cherry picked from commit fd6809f9 |