aboutsummaryrefslogtreecommitdiffhomepage
Commit message (Collapse)AuthorAge
...
* af_lavrresample: log actual channel layout conversionsGravatar wm42015-06-30
| | | | | With all the reordering etc. that can go on in this filter, it's useful to see what upmix/downmix it's actually performing.
* demux_lavf: check for NAN rotation anglesGravatar wm42015-06-30
| | | | Yep, the FFmpeg API can return this.
* player: slim down A/V desync warningGravatar wm42015-06-30
| | | | | I don't think most of these suggestions are overly helpful. Just get rid of them.
* build: always regenerate version hashGravatar wm42015-06-30
| | | | | | | | | Until now, it only used the hash from the previous configure run, instead of trying to get the latest hash. The "old" build system did this correctly - we just have to use the existing logic in version.sh. Since waf supports separate build dirs, extend version.sh with an argument for setting the path of version.h.
* manpage: fix copy&paste mistakesGravatar wm42015-06-30
| | | | | | | These are definitely not per-track. (Maybe we should just provide a script or such which pretty-prints "native" property output.
* input.conf: invert mouse volume controlGravatar Martin Herkt2015-06-30
| | | | Scrolling right should increase volume, not decrease it.
* input: improve wording of key binding messagesGravatar wm42015-06-30
|
* ao_coreaudio: restore physical format if it can't be set exactlyGravatar wm42015-06-30
| | | | | | | | May help with (supposedly) bad drivers, which can put the device into some sort of broken state when trying to set a different physical format. When the previous format is restored, it apparently recovers. This might make the change-physical-format suboption more robust.
* ao_coreaudio: support native mono outputGravatar wm42015-06-29
| | | | | | | We can be pretty sure that AudioUnit will remix for us. Before this commit, we usually upmixed to stereo, because the stereo and multichannel layouts were the only whitelisted ones.
* ao_coreaudio: log hotplug events explicitlyGravatar wm42015-06-29
|
* video: fix panscan in vertical caseGravatar wm42015-06-29
| | | | | If the black bars appeared on the left/right borders, panscan=1 didn't make the video cover the whole screen.
* DOCS/man: fix some grammar errorsGravatar Daniel Bergmann2015-06-29
| | | | Signed-off-by: wm4 <wm4@nowhere>
* vaapi: prefer direct display over copy-backGravatar wm42015-06-29
| | | | | | Again. With the old OpenGL interop dropped, this probably works better than vaapi-copy now. Last time we defaulted to vaapi-copy, because the OpenGL interop could swap U/V planes and other stupid crap. We'll see.
* vaapi: treat cropped decoder output slightly more correctlyGravatar wm42015-06-29
| | | | | | | | | | | | Work around that FFmpeg doesn't distinguish between surface and cropped size. The decoder always aligns the surface size to something "convenient" (e.g. 16 for h264), and to get to the correct cropped size, the output image's width/height is reduced. Using the cropped size instead of the real surface size breaks the libva API in certain cases, so we simply store and use the original size in our per-surface struct. (If data is cropped on the left/top borders, hw decoding will simply display these - FFmpeg doesn't let us do better.)
* vaapi: fix potential NULL deref on memory allocation failureGravatar wm42015-06-29
|
* vaapi: remove vaDeriveImage() code pathGravatar wm42015-06-29
| | | | | | | In theory, this code path avoids a copy. In practice, it never seems to get enabled at all. But it does have potential for weird bugs or performance issues (like being mapped from non-cacheable memory), so kill it.
* x11: remove trailing spacesGravatar wm42015-06-29
|
* x11: Handle external fullscreen togglesGravatar Eduardo Sánchez Muñoz2015-06-28
| | | | | | | | | | | | | | | Some window managers let you change the fullscreen state of any window using a key combination. For example, on XFWM you can use Alt+F11 and on Compiz you can configure a key combination with the "Extra WM actions" plugin. With this change mpv will handle these fullscreen state changes. So, if you enter into fullscreen mode using the WM's shortcut and then you use mpv's fullscreen toggle, you will get back into window mode. Merges PR #2081. Signed-off-by: wm4 <wm4@nowhere>
* demux_mkv: disable ordered chapters if ChapterTimeEnd is missingGravatar wm42015-06-28
| | | | | | | | | | | | | If the EditionFlagOrdered is set, chapters without ChapterTimeEnd make no sense. Ordered chapters will play the chapters in the order they appear, but will play the ranges the chapters cover. So if the end time is missing, the range is incomplete and it's not clear what should be played. If you assume the start of the next chapter as end time, the ordered flag will have no observable effect, so that's not a useful assumption. This fixes playback of a file which (apparently) had the EditionFlagOrdered set accidentally, with normal chapters.
* vo_drm: make VT switching non mandatoryGravatar rr-2015-06-28
|
* vo_drm: fix missing newlines in error messagesGravatar rr-2015-06-28
|
* DOCS: fix recent typosGravatar wm42015-06-28
| | | | Pointed out by a certain wiiaboo.
* demux: export forced flagGravatar wm42015-06-27
| | | | | | At least Matroska files have a "forced" flag (in addition to the "default" flag). Export this flag. Treat it almost like the default flag, but with slightly higher priority.
* demux_mkv: ignore deprecated FrameRate, do not assume PALGravatar wm42015-06-27
| | | | | | | | | | | The "FrameRate" element is probably deprecated (it's greyed out in the "spec", and described as "Informational only" in bold). Normally files use DefaultDuration. In fact, the FrameRate field was preferred over DefaultDuration for determining framerate if present. Do not do this and rely on DefaultDuration only. Also, if no framerate is set, do not assume PAL (25 FPS). Such a fallback makes little sense and will cause more problems than it solves.
* demux_mkv: remove some ASCII art log messagesGravatar wm42015-06-27
| | | | | Some of the ASCII art makes sense (like the lines starting with "|"), but these do not make any sense to me and just look annoying.
* options: improve an error messageGravatar wm42015-06-27
| | | | | "mpv --ao=wasapi:help" on Linux gave "Option ao doesn't exist.". Completely misleading and stupid.
* ytdl: don't print failure warning when youtube-dl was killed by usGravatar wm42015-06-27
|
* subprocess, lua: export whether the process was killed by usGravatar wm42015-06-27
| | | | | | | | We want to distinguish actual errors, and just aborting the program intentionally. Also be a bit more careful with handling the wait() exit status: do not called WEXITSTATUS() without checking WIFEXITED() first.
* ao_wasapi: fix regressionGravatar wm42015-06-27
| | | | This probably fixes the regression introduced with commit 6147bcce.
* terminal-unix: set terminal mode on initGravatar wm42015-06-27
| | | | | | | | | | | | | | | mpv usually sets the terminal to non-canonical mode (which in particular disables line buffering). But the old mode is restored if the process is not foregrounded. This is supposed to make mpv behave nicer when it is backgrounded. getch2_poll() enables canonical mode. Unfortunately, this was only called after the poll timeout elapsed, so non-canonical mode is first enabled after about a second after program start. Fix this by moving the poll call before the timeout. (As far as we're aware, there's no event-based way to determine when the FD's process group changes, thus we're polling.)
* chmap_sel: add a mechanism for preferred conversionsGravatar wm42015-06-27
| | | | | And use it for the mono case. This is slightly more formal and will make it easier to add more such cases.
* chmap_sel: remove outdated incomplete commentGravatar wm42015-06-27
|
* Disable DVD and BD menu support (to be removed)Gravatar wm42015-06-26
| | | | | | | | | | | | | | | | | | DVD/BD menu support never worked right, and are a pain to maintain. In particular, DVD menus never actually worked correctly, because highlights were not rendered correctly. Fixing this requires major effort, which I'm not interested to spend. Most importantly, the requirement to switch streams without losing the DVD/BD state caused major weirdness in the playback core. It was implemented by somehow syncing the playback state to the DVD/BD implementation (in stream_dvdnav.c etc.), and then reloading the demuxer without destroying and recreating the stream. This caused a bunch of special-cases which I'm looking forward to remove. For now, don't just remove everything related to menu support and just disable it. If someone volunteers, it can be restored (i.e. rewritten) in a reasonable way. If nobody volunteers soon, it goes.
* demux_mkv: use arrays for codec lookup tablesGravatar wm42015-06-26
| | | | No need to define extra types.
* demux_mkv: minor simplificationGravatar wm42015-06-26
|
* audio: fix format function consistency issuesGravatar wm42015-06-26
| | | | | | | | | | | Replace all the check macros with function calls. Give them all the same case and naming schema. Drop af_fmt2bits(). Only af_fmt2bps() survives as af_fmt_to_bytes(). Introduce af_fmt_is_pcm(), and use it in situations that used !AF_FORMAT_IS_SPECIAL. Nobody really knew what a "special" format was. It simply meant "not PCM".
* audio: replace format name tableGravatar wm42015-06-26
| | | | Having a big switch() is simpler.
* audio: remove bitmask format definition messGravatar wm42015-06-26
| | | | | | | | | | Audio formats used a semi-clever schema to encode the properties of the PCM encoding as bitfields into the format integer value. The af_fmt_change_bits() implementation becomes a bit weird, but it's an improvement to the rest of the code. (I've always disliked it, so why not get rid of it.)
* ao_coreaudio_utils: use a macroGravatar wm42015-06-26
| | | | | This is actually the last line of code outside of format.c/h which still tries to fiddle with the format bitfields.
* ao_sndio: fix commentGravatar wm42015-06-26
| | | | | | So whoever (nobody?) would want to deal with this broken and obscure AO for an obscure audio API could add support for some more channel layouts.
* DOCS/mplayer-changes: Add removal of X11 voGravatar rrooij2015-06-26
| | | | | | The X11 video output was removed recently and is a difference from mplayer. That's why it should be documented in the mplayer-changes document.
* vo_x11: remove this video outputGravatar wm42015-06-26
| | | | | | | It only causes additional maintenance work. Even if you wanted to have a fallback, it's probably better to use --vo=sdl or so.
* ao_coreaudio: support non-interleaved outputGravatar wm42015-06-26
| | | | | This saves us the trouble of interleaving the audio data for no reason.
* ao_coreaudio: explicitly skip input streamsGravatar wm42015-06-26
| | | | | | | This may or may not fix some issues with the format switching code. Actually, it seems somewhat unlikely, but then checking the stream type isn't incorrect either, and is probably something the API user should always be doing.
* ao_coreaudio_utils: compare full AudioStreamBasicDescriptionGravatar wm42015-06-25
| | | | | | Originally, this was written for comparing the sample format only, but ca_change_physical_format_sync() actually expects that the full format is compared. (For all other uses it doesn't matter.)
* audio: output human-readable channel layouts tooGravatar wm42015-06-25
| | | | | This gets you the "logical" channel layout, instead of the exact thing we're sending to the AO. (Tired of the cryptic shit ALSA gives me.)
* audio: fix channel map fallback selection (again)Gravatar wm42015-06-25
| | | | | | | | | | | | | | | | | | | | The speaker replacement nonsense sometimes made blatantly incorrect decisions. In this case, it prefered a 7.1(rear) upmix over outputting 5.1(side) as 5.1, which makes no sense at all. This happened because 5.1 and 7.1(rear) appeared equivalent to the final selection, as both of them lose the sl-sr channels. The old code was too stupid to select the one with the lower number of channels as well. Redo this. There's really no reason why there should be a separate final decision, so move the speaker replacement logic into the mp_chmap_is_better() function. Improve some other details. For example, we never should compare the plain number of channels for deciding upmix/downmix, because due to NA channels this is essentially meaningless. Remove the NA channels when doing this comparison. Also, explicitly handle exact matches. Conceptually this is not necessary, but it avoids that we have to needlessly shuffle audio data around.
* ao: standardize channel layout name in debug output furtherGravatar wm42015-06-25
|
* vo_sdl: fix glaring memory leakGravatar wm42015-06-25
| | | | Who knows when this broke?
* player, demux: replace some demux_open() uses with demux_open_url()Gravatar wm42015-06-24
|