aboutsummaryrefslogtreecommitdiffhomepage
Commit message (Collapse)AuthorAge
* vo_opengl: egl_helpers: add a way to override config selectionGravatar wm42016-12-30
| | | | | | | Preparation for the following commits. Since at least theoretically the config selection depends on the context type (EGL_RENDERABLE_TYPE has separate bits for ES 2, ES 3, and desktop GL), doing it any other way would be too painful.
* vo_opengl: egl_helpers: add a way to pass more optionsGravatar wm42016-12-30
| | | | | | | | | | For X11 garbage we have to pass some annoying parameters to EGL context creation. Add some sort of extensible API, so that adding a new parameter doesn't break all callers. We still want to keep it as a single function, because it's so nice isolating all the EGL nonsense API boilerplate like this. (Did I mention yet that X11 and EGL are garbage?) Also somewhat simplifies the vo_flags mess in the helper internals.
* Prefix libavcodec CODEC_FLAG_ constants with AV_Gravatar wm42016-12-29
| | | | The unprefixed versions are silently deprecated.
* charset_conv: fix "auto" fallback with uchardet not compiledGravatar wm42016-12-28
| | | | | | | | | Tried to open iconv with "auto" as source codepage, instead of using the latin1 fallback. This also neutralizes the libavcodec dumbass UTF-8 check, which discards subtitles not in UTF-8 and shows an error message for ffmpeg CLI instead. Fixes #3954.
* vo_opengl: partially fix rotation for 4:2:2 contentGravatar Niklas Haas2016-12-28
| | | | | | | | | | | | The chroma alignment renormalization code forgot to account for the fact that the chroma subsampling ratio has to be rotated. Unfortunately, doing it this way seems to have somewhat broken the chroma offset rotation logic for odd-sized subsampled image files. While this is a bug, it's much, much less noticeable, so it's not nearly as important as the bug this change fixes. Either way, a future patch needs to still revise this logic, ideally by redesigning the entire rotation mechanism.
* cocoa: fix build on OS X 10.9Gravatar Akemi2016-12-26
| | | | fixes #3946
* osc: bottombar/topbar: make chapter markers slightly biggerGravatar Ricardo Constantino2016-12-25
| | | | | | | 1px squares to 2px triangles and layout=box markers from 1px squares to 2x1px rectangles. While we're at it, wrap a few lines to 80col again.
* options: deprecate some other complex --ad/--vd featuresGravatar wm42016-12-23
| | | | | | | Who even needs those? Once these deprecations are gone, --ad/--vd are simple lists without any kind of complex matching.
* options: explicitly deprecate --ad-spdif-dtshdGravatar wm42016-12-23
| | | | Has been less formally deprecated for a longer time.
* options: deprecate codec family selection in --vd/--adGravatar wm42016-12-23
| | | | | Useless now, so get rid of it. Also affects some user-visible display things (like reported codec in use).
* audio: change how spdif codecs are selectedGravatar wm42016-12-23
| | | | | | | | | | | | | | Remove ad_spdif from the normal codec list, and select it explicitly. One goal was to decouple this from the normal codec selection, so they're less entangled and the decoder selection code can be simplified in the far future. This means spdif codec selection is now done explicitly via select_spdif_codec(). We can also remove the weird requirements on "dts" and "dts-hd" for the --audio-spdif option, and it can just do the right thing. Now both video and audio codecs consist of a single codec family each, vd_lavc and ad_lavc.
* vd_lavc: use AVFrame fields directly instead of AVCodecContextGravatar wm42016-12-22
| | | | | | | | | Conceptually cleaner, although the API claims this is equivalent. Originally, AVCodecContext fields were used, because not all supported libavcodec/libavutil versions had the AVFrame fields. This is not done for chroma_sample_location - it has no AVFrame field.
* video: use demuxer-signaled duration for last video frameGravatar wm42016-12-21
| | | | | | | | | Helps with gif, probably does unwanted things with other formats. This doesn't handle --end quite correctly, but this could be added later. Fixes #3924.
* Fix mistakes in spelling and grammarGravatar Dario Russo2016-12-21
|
* demux_mkv: trust keyframe flags for TrueHDGravatar wm42016-12-20
| | | | | | | | | | TrueHD is a fucked up audio codec with extremely small frame sizes. Some of these frames start with full headers, which are usually marked as keyframes, and from which decoding can be started (or at least that's what you'd expect). So for such tracks we should probably trust the keyframe flags. Doesn't really improve seek behavior, though.
* demux_mkv: fix seeking in some broken filesGravatar wm42016-12-19
| | | | | | | | | | | | | | | | | | | | | | Some files have audio tracks with packets that do not have a keyframe flag set at all. I don't think there's any audio codec which actually needs keyframe flags, so always assume an audio packet is a keyframe (which, in Matroska terminology, means it can start decoding from that packet). The file in question had these set: | + Multiplexing application: Lavf57.56.100 at 313 | + Writing application: Lavf57.56.100 at 329 Garbage produced by garbage... There are other such files produced by mkvmerge, though. It's not perfectly sure whether these have been produced by FFmpeg as well (mkvmerge often trusts the information in the source file, even if it's wrong - so other samples could have been remuxed from FFmpeg). Fixes #3920.
* ad_lavc, vd_lavc: don't set AVCodecContext.refcounted_framesGravatar wm42016-12-18
| | | | | This field is (or should be) deprecated, and there's no need to set it with the new API.
* mpv_identify.sh: add "duration" property to the list.Gravatar Rudolf Polzer2016-12-17
|
* TOOLS/matroska.py: format file dumper output slightly nicerGravatar wm42016-12-17
|
* TOOLS/matroska.py: allow using as moduleGravatar wm42016-12-17
| | | | | | Don't force CLI usage. It can be imported, and generate_C_header() and generate_C_definitions() can be called with a file argument instead of writing to stdout always.
* Revert "Port several python scripts to Perl"Gravatar wm42016-12-17
| | | | | | | | | | | | | | | | | | This reverts commit fae73079310eef9dce9737f2e37ff4b80c8830ee. Before the waf build system was used, we had a configure script written in shell. To drop the build dependency on Python, someone rewrote the Python scripts we had to Perl. Now the shell configure script is gone, and it makes no sense to have a build dependency on both Perl and Python. This isn't just a straight revert. It adds the new Matroska EBML elements to the old Python scripts, adjusts the waf build system, and of course doesn't add anything back needed by the old build system. It would be better if this used matroska.py/file2string.py directly by importing them as modules, instead of calling them via "python". But for now this is simpler.
* cocoa: cosmetic fixesGravatar Akemi2016-12-16
|
* options: change --h=... behaviorGravatar wm42016-12-16
| | | | | Does not match a shell pattern anymore. Instead, a simple sub-string search is done.
* cocoa: fullscreen refactoringGravatar Akemi2016-12-15
| | | | | | | | | | this replaces the old fullscreen with the native macOS fullscreen. additional the --fs-black-out-screens was removed since the new API doesn't support it in a way the old one did. it can possibly be re-added if done manually. Fixes #2857 #3272 #1352 #2062 #3864
* manpage: add table of contents to the HTML versionGravatar Zhiming Wang2016-12-14
| | | | | | | | The reST contents directive is added to mpv.rst. In wscript_build.py, the --strip-elements-with-class=contents option is needed for the rst2man call in order to prevent the TOC from appearing in mpv.1.
* win32: change the log level of 'move window' msgGravatar pavelxdd2016-12-14
| | | | It does more harm than good, since it spams terminal a lot
* cocoa: fix dropping of certain urls on the windowGravatar Akemi2016-12-14
| | | | | | the 'path' of an youtube url (youtube.com/watch?v=x) would just be '/watch'. obviously this fails to load.
* cocoa: support append file to paylist on dropGravatar Akemi2016-12-14
| | | | | | | | | When dropping a file on mpv, either on the window or the App bundle icon, while holding the shift key the dropped files will be appended to the playlist. Fixes #2166
* win32: window styles improvementsGravatar pavelxdd2016-12-12
| | | | | | | Allow minimizing the borderless/fullscreen window by clicking on the taskbar button or pressing Win+Down hotkey. Also fixes #2229 and probably fixes #2451
* manpage: document current and legacy option syntax betterGravatar wm42016-12-12
| | | | | | | I thought it ewas already documented, but I'm not seeing it anywhere. Maybe it did exist, but was deleted. See #3899.
* manpage: clarify --loop optionGravatar wm42016-12-12
| | | | Fixes #3899.
* osx: update the menu and remove conflicting itemGravatar Akemi2016-12-12
| | | | | | | | | | | Remove 'Quit mpv & remember playback position' from the menu because it conflicts with the global logout shortcut. add separator between 'Hide' and 'Quit' for consistency with other Apps. also rename the 'Movie' menu to 'Video'. it's a bit more generic. Fixes #3865
* win32: update winapi functions namesGravatar pavelxdd2016-12-12
| | | | | | According to MSDN, GetWindowLong and SetWindowLong have been superseded by GetWindowLongPtr and SetWindowLongPtr. It's a cosmetic code change in this case.
* bstr: change to LGPLGravatar wm42016-12-11
| | | | | | | | Was started by Uoti Urpala in commit 5f631d1c. Although it was made part of demux_mkv.c, it's quite obvious that it's not based on any pre-existing demux_mkv.c code (or ebml.c/.h for that matter). Anyone else who has touched this code every since has already agreed to LGPL relicensing.
* ad_spdif: Fix crash when spdif muxer is not availableGravatar Michael Forney2016-12-11
| | | | | | | Currently, if init_filter fails after lavf_ctx is allocated, uninit is called which frees lavf_ctx, but doesn't clear the pointer in spdif_ctx. So, on the next call of decode_packet, it thinks it is already initialized and uses it, resulting in a crash on my system.
* wscript_build: rst2pdf: increase section break levelGravatar shinchiro2016-12-11
| | | | This fix broken pdf build and hopefully less fragile in future
* client API: allow passing NULL to mpv_opengl_cb_uninit_gl()Gravatar wm42016-12-09
| | | | In which case it does nothing.
* charset_conv: simplify and change --sub-codepage optionGravatar wm42016-12-09
| | | | | | | As documented in interface-changes.rst. This makes it much easier to follow what the heck is going on. Whether this is adequate for real-world use is unknown.
* charset_conv: drop enca and libguess supportGravatar wm42016-12-09
| | | | | | | | Enca is dead. libguess is relatively useless due to not having an universal detection mode. On the other hand, libuchardet is actively developed. Manpages changes in the following commit.
* manpage: replace `-vo` with `--vo`Gravatar Douglas Christman2016-12-08
|
* manpage: remove mention of window alpha (OSX)Gravatar Akemi2016-12-08
| | | | | | | This is not implemented and i don't even know if it ever was. Also remove a trailing whitespace. Fixes #3866
* options: remove weird RPI-only fullscreen defaultGravatar wm42016-12-08
| | | | As announced by interface-changes.rst.
* vo_rpi: partially undeprecateGravatar wm42016-12-08
| | | | Using vo_opengl + MMAL overlay didn't quite work out.
* Remove compatibility thingsGravatar wm42016-12-07
| | | | | | Possible with bumped FFmpeg/Libav. These are just the simple cases.
* build: bump required minimum versions to FFmpeg 3.2.2 and Libav 12Gravatar wm42016-12-07
| | | | Fixes the build with Libav 11 (not).
* manpage: move the --opengl-dumb-mode option downGravatar wm42016-12-07
| | | | | | | It's horribly obscure - why would it be the first option to be listed? Also might fix the --scale option formatting/anchor in the HTML rendering.
* ao_alsa: print certain ALSA errors as string instead as numberGravatar wm42016-12-07
|
* TOOLS/autoload: allow disabling through script-optsGravatar Ricardo Constantino2016-12-05
| | | | | | | | | | | This allows leaving autoload in auto-loaded scripts and to be used in a special profile like "pseudo-gui" without being troublesome to disable the behavior in profiles that get applied after pseudo-gui. Ex: [someprofile] script-opts=autoload-disabled=yes
* demux, stream: add option to prevent opening referenced filesGravatar wm42016-12-04
| | | | Quite irresponsibly hacked together. Sue me.
* vo_opengl: hwdec_cuda: Don't include hwcontext headersGravatar Philip Langdale2016-12-04
| | | | | After various simplifications, these includes simply aren't needed now.