summaryrefslogtreecommitdiffstats
Commit message (Collapse)AuthorAgeFilesLines
* w32_common: reformat slightlyMartin Herkt2014-01-061-68/+99
| | | | This really needs more whitespace.
* w32_common: use OLE DnD for text/uri-list supportxnoreq2014-01-061-39/+203
| | | | Signed-off-by: Martin Herkt <lachs0r@srsfckn.biz>
* win32-console-wrapper: Fix heap corruptionMartin Herkt2014-01-061-1/+1
| | | | FUCK the Windows API.
* build: don't depend on both libavresample and libswresamplewm42014-01-051-0/+1
| | | | | | When both libavresample and libswresample were detected, the script enabled both at the same time. This is not supported; although nothing bad happened apparently. Make the dependencies both mutually exclusive.
* quvi: add option to not fetch subtitlesAndre D2014-01-054-1/+11
| | | | Signed-off-by: wm4 <wm4@nowhere>
* player: always ise [statusline] for terminal OSDwm42014-01-051-3/+3
| | | | | | This was inconsistent: the actual statusline used [statusline] as message prefix, while other parts of the terminal OSD used [cplayer] (and MSGL_STATUS). This commit makes it consistent.
* player: print an error message if run command failswm42014-01-051-1/+5
| | | | | | | | | | | Note that we can't use mp_msg, because it's not async-signal safe (we might be running other threads while forking, so only functions specified to be async-signal safe can be called, and this doesn't include stdio; mp_msg acquires a mutex too). Also, always print a \n before running the program to flush the status line. The effect is that a program running successfully as well as the error message will effectively start on a new line.
* manpage: fix typowm42014-01-051-1/+1
|
* player: don't select subtitles added from quvi by defaultwm42014-01-052-5/+10
| | | | | | | | | | Quvi subtitles are considered external subtitles (simply because they're separate from the audio/video stream), but for the sake of subtitle auto-selection, they should not be considered external. Change this so that quvi subtitles are treated like muxed subtitles (with default flag never set). This means subtitles won't be selected by default, unless explicitly requested with --sid or --slang.
* Revert "wayland/egl: use redraw callback"Alexander Preisinger2014-01-042-28/+1
| | | | | | | | | | | Because of this commit there were problems displaying the frmase in their right order. This reverts commit 96e75d234a4df1a09f38eaf932d00d79dccdc324. Conflicts: video/out/gl_wayland.c video/out/wayland_common.h
* wayland: remove workaroundAlexander Preisinger2014-01-041-6/+3
| | | | | | | | The changes in the vo_wayland_ontop function have no effect on the workaround. Somehow the problem just disappeared. I guess it is because of the new control function in gl_wayland.c where the resize happens immediatly after the event dispatch/flush.
* wayland: fix obvious bug in dnd codeAlexander Preisinger2014-01-041-1/+1
| | | | I still don't think this is the right approach.
* input: change mp_input_run_cmd signaturewm42014-01-043-8/+6
| | | | | | | | I don't like this function at all, but it's basically a trick to get the input's mp_log instance in a case the mp_input_parse_cmd_strv() is almost certainly not going to output anything. But still make it somewhat more consistent with mp_input_parse_cmd_strv() - why force the caller to always use MP_ON_OSD_AUTO?
* video/out: remove some code duplication between X11 and waylandwm42014-01-044-45/+35
| | | | | | Both X11 and Wayland support the same format for drag & drop operations (text/uri-list), and the code for that was copied from x11_common.c to wayland_common.c. Factor it out.
* demux_subreader: reject file if not opened by --subwm42014-01-043-0/+5
| | | | | | | demux_subreader.c contains the old MPlayer subtitle parser, and I have absolutely no confidence in this (very crappy) code. There might be one or two security risks associated with running that code on arbitrary input.
* build: fix build on old build systemStefano Pigozzi2014-01-041-0/+1
| | | | Regression from 082c5c19
* cocoa: handle files drag and drop on the player video viewStefano Pigozzi2014-01-045-1/+30
|
* cocoa: refactor files drag and drop on the Dock iconStefano Pigozzi2014-01-041-24/+16
| | | | | Use the newly added `mp_event_drop_files` core function instead of having logic in the platform dependent code.
* input: move files drag and drop to a new event.c fileStefano Pigozzi2014-01-048-43/+89
| | | | | event.c will be used to feed the input queue with 'global' events that don't mesh well with the usual check_events path in mpv.
* wayland/egl: misc fixes and cleanupsAlexander Preisinger2014-01-042-6/+1
|
* wayland/egl: use redraw callbackAlexander Preisinger2014-01-042-1/+32
| | | | | | | This solves the issue where we would not receive any frame events. The difference to my earlier tests is that now it looks like eglSwapBuffers uses it's own event queue or something similiar along the lines. Becaues the performance is the same as without any redraw callback.
* wayland/egl: add egl_context to the wayland stateAlexander Preisinger2014-01-042-67/+73
| | | | | | | | | | | At the moment there are visual glitches when we resize the window. This happens because in wayland there a special function for resizing EGL windows. To prevent the glitches move the egl_context to the wayland state in wayland_common.h and add a new control function to gl_wayland.c to wrap the vo_wayland_control function to check for resize events. With the new control wrapper the glitches are gone and the resizing is fluid.
* wayland: Remove nonsense comment and add warningAlexander Preisinger2014-01-041-4/+2
| | | | | | | | | The reason a segmentation happend here was because we couldn't get the requested minor version. The major version is enough for differentiating between OpenGL 3 and OpenGL 2. If it fails there is still a fallback to any version available. Also add a warning if we use the fallback.
* wayland: move workaround to fullscreen codeAlexander Preisinger2014-01-041-4/+5
| | | | | Because of this workaround there was a bug in the wayland vo. Now it works on both vos (opengl and shm) as it should.
* wayland: implement dropping files on the VO windowAlexander Preisinger2014-01-042-2/+190
| | | | Needs some proper testing.
* vo: dropping subtitle files on the VO window adds them as subtitle fileswm42014-01-043-11/+36
| | | | | | | Note that we don't try to be clever about detecting the files as subtitles: we just check the file extension. We could go all the way and check the files by opening them with a demuxer, but that would probably do more bad than good.
* x11: implement dropping files on the VO windowwm42014-01-042-6/+192
| | | | | | | | | | | | | | | | | | | | Drag and drop is pretty complicated (just note how the number of Atoms in use almost doubles), so I'm not sure whether this works everywhere. This has been written by looking at the specification [1] or what looks like the specification, and some external example code [2]. (The latter one has no code license, but we didn't copy any code.) We completely ignore the "requirement" of the spec. that the filename "must" include username and hostname, e.g. "file://user@host/path/file". In theory, this is required because X is network transparent, but at this point the so called network transparency is a complete joke, and Konqueror for one didn't include hostnames in "file://" URIs. Tested with konqueror as drop source. [1] http://www.newplanetsoftware.com/xdnd/ [2] http://www.edwardrosten.com/code/dist/x_clipboard-1.1/paste.cc
* vo: add vo_drop_files()wm42014-01-042-0/+26
| | | | Intended to be used for GUI drag & drop.
* manpage: mention --pauseMartin Herkt2014-01-031-0/+3
|
* dvdnav: set correct stride for fake highlightswm42014-01-031-1/+1
| | | | | This didn't really matter, because the fake highlight rectangle is in a single color, and every pixel has the same color value.
* stream_pvr: fix crash on initializationwm42014-01-031-0/+1
| | | | Fallout from the mp_msg conversions.
* audio: check for overflowswm42014-01-031-0/+5
|
* bstr: check for overflow in buffer allocationwm42014-01-031-0/+4
| | | | | We're being a little bit lazy here and limit the max allocation to SIZE_MAX/2, which is practically infinite anyway on 64 bit systems.
* ta: check overflow in array realloc macroswm42014-01-023-3/+18
|
* vda: fix build on OS X 10.7Stefano Pigozzi2014-01-022-0/+2
| | | | | Looks like on 10.8 OpenGL.h recursively includes CGLIOSurface.h. That is not the case for 10.7 so the build was broken on that version of OS X.
* ao_alsa: remove 9 year old typowm42014-01-021-1/+0
| | | | | Actually, remove the whole comment, because it's outdated and get_space() returns the number of free samples now.
* build: fix cocoa configure check on OS X 10.7Stefano Pigozzi2014-01-023-6/+15
| | | | | It failed because the 10.7 SDK doesn't natively support array and dictionary subscripting.
* wayland/opengl: fix garbage bordersAlexander Preisinger2014-01-022-22/+22
| | | | | It seems mpv draws garbage in those regions. Now we calculate the aspect and let weston draw the black borders.
* wayland/shm: only commit new framesAlexander Preisinger2014-01-021-36/+40
| | | | | Only attach and commit new buffers. This also increases performance when paused.
* wayland: don't change set fullscreen twiceAlexander Preisinger2014-01-021-1/+1
| | | | | Newest weston chrashes if we call set_fullscreen twice. This is a major bug I which I should probably report.
* ao_alsa: Unbreak pause/resumeMartin Herkt2014-01-021-11/+10
| | | | Well that was dumb.
* ao_alsa: Fix PCM resume after suspendMartin Herkt2014-01-021-15/+15
| | | | Fixes #324
* Add Windows console wrapper program (mpv.com)Martin Herkt2014-01-022-0/+96
|
* Windows: use the GUI subsystem, attach to consoleMartin Herkt2014-01-024-1/+25
| | | | | | | | This is necessary to start mpv without forcing a console window, but also breaks console usability. A workaround is to call mpv from a wrapper process that uses the console subsystem and helps redirecting the standard streams and WriteConsole output to where they belong.
* osdep/io, mp_vfprintf: split out console detectionMartin Herkt2014-01-021-42/+43
|
* stream: always respect sector_size, fixes cdda://wm42014-01-021-1/+1
| | | | | | | | | | | | Streams like CDDA have special requirements in what quantities data can be read: you can only read a sector at once, not more and not less. The stream_peek() function didn't respect that and set less (used internal buffer size of 2048 bytes, instead of CD sector size of 2352 bytes), so no data was read and EOF was accidentally set, making playback with cdda:// fail. This is a regression since commit 9a723f, but that commit merely exposed the issue (the redundant seek would clear the EOF flag).
* build: fix typoStefano Pigozzi2014-01-012-2/+2
|
* build: make configure fail if both __atomic and __sync are not availableStefano Pigozzi2014-01-013-3/+37
|
* manpage: clarifications about bitmap subtitles and --secondary-sidwm42014-01-011-2/+4
|
* options: make --msglevel=help print something helpfulwm42014-01-011-0/+11
|
* manpage: fix description on the slave mode msglevelwm42014-01-011-2/+1
|
* player: load encoding-profiles.conf before the main configwm42014-01-011-7/+7
| | | | Otherwise one can't add profiles based on the encoding profiles.
* mpv.desktop: Add Czech translationsMiro HronĨok2014-01-011-0/+3
|
* player: fix DVD playbackwm42014-01-011-1/+1
| | | | | | | Crashed in case of lazily added subtitle streams, which add tracks with track->stream set to NULL. Fixes gituhub issue #439.
* Update copyright yearwm42014-01-012-2/+2
|
* compat: use __atomic operations instead of __sync, when presentAlessandro Ghedini2013-12-311-2/+9
| | | | | Fixes #434 Fixes #437
* build: check for libatomic and __atomic operationsAlessandro Ghedini2013-12-312-0/+23
| | | | | | Add check in old-configure as well. Reformat the check to use a maximum of 80 columns in the wscript. Signed-off-by: Stefano Pigozzi <stefano.pigozzi@gmail.com>
* manpage: fix vf_noise parameter namewm42013-12-301-2/+2
|
* common: drop mp_append_utf8_buffer()wm42013-12-302-13/+2
|
* bstr: use mp_append_utf8_bstr()wm42013-12-301-19/+4
| | | | Drop usage of the ugly PUT_UTF8() macro.
* input: use bstr_xappend()wm42013-12-303-15/+25
| | | | To get rid of mp_append_utf8_buffer().
* osd_libass: use bstr_xappend()wm42013-12-301-22/+25
| | | | Partially, just enough to drop mp_append_utf8_buffer().
* common: simplify and optimize string escape parsingwm42013-12-304-42/+85
| | | | | | | | | | | This code is shared between input.conf parser and option parser. Until now, the performance didn't really matter. But I want to use this code for JSON parsing too, and since JSON will have to be parsed a lot, it should probably try to avoid realloc'ing too much. This commit moves parsing of C-style escaped strings into a common function, and allows using it in a way realloc can be completely avoided, if the already allocated buffer is large enough.
* bstr: add bstr_xappend functionwm42013-12-302-0/+59
| | | | | | Apparently this can be really useful when being paranoid and trying to avoid too much malloc/realloc, since it can be used to appending into a buffer (with transparent realloc only if the buffer is too small).
* video: fix --brightness etc. optionswm42013-12-292-11/+14
| | | | They were set before the VO was intitialized, which silently failed.
* build: add flag for inline assemblyStefano Pigozzi2013-12-292-5/+10
| | | | | This is used to disable inline assembly (useful for old version of binutils like the one in OpenBSD).
* vd_lavc: by default, output all frames, even corrupted oneswm42013-12-294-0/+17
| | | | | | | | | | | | | | | | Set the flag CODEC_FLAG_OUTPUT_CORRUPT by default. Note that there is also CODEC_FLAG2_SHOW_ALL, which is older, but this seems to be ffmpeg only. Note that whether you want this enabled depends on the user. Some might prefer that only good frames are output, while others want the decoder to try as hard as possible to output _anything_. Since mplayer/mpv is rather the kind of player that tries hard instead of being "clever", set the new default to override libavcodec's default. A nice way to test this is switching video tracks. Since mpv doesn't wait for the next key frame, it'll start feeding the decoder with a packet from the middle of the stream.
* player: add two more font mimetypes recognized by Haaliwm42013-12-291-1/+3
| | | | | | | | | | | | | | The Haali Matroska splitter is basically the reference implementation for this crap, and it knows only: application/vnd.ms-opentype application/x-font-ttf application/x-truetype-font Two of them were missing in our code. One of them, "application/x-font", is probably plain incorrect, but I can't really tell. Also see: http://www.cccp-project.net/beta/test_files/fontsample.mkv
* player: use arrays to list font mimetypes and font file extensionswm42013-12-291-9/+15
|
* build: disable SDL by defaultStefano Pigozzi2013-12-291-2/+4
| | | | old-configure already behaves like this. Adapt wscript to the same default.
* Install encoding-profiles.conf by defaultwm42013-12-285-19/+42
| | | | | | | | | | | | This is probably useful. Note that this includes a small, stupid hack to prevent loading of the config file if vf_lavfi is not available. The profile by default uses vf_lavfi, and the config parser will output errors if vf_lavfi is not available. As another caveat, we install the example profile even if encoding is disabled (though we don't load it, since this would print errors).
* player: fix buggy error condition when loading mpv.confwm42013-12-281-1/+1
|
* vo/x11_common: do not select motion events when --no-mouse-movements is setahodesuka2013-12-281-1/+1
|
* input: print an error if reading input.conf failswm42013-12-281-4/+8
| | | | | | stream_read_complete() fails if the file is larger than the requested maximum size. But input.c didn't check for this case, and no indication that something went wrong was printed.
* Revert "x11: don't set global error handler"wm42013-12-271-0/+28
| | | | | | | | | | | | | This reverts commit 877303aaa9111fc56a8e5edbeb439699acfe44c0. The OpenGL 2.1 fallback for vo_opengl didn't work. Two things come together: 1. trying to create an OpenGL 3.0 context will fail with a GLXBadFBConfig error, and 2. X errors are fatal by default. Since the reverted commit removed the X error handler, the mpv process was killed, instead of continuing for the fallback. (Note that this commit is not an exact inverse commit, since mp_msg changed, but it does about the same thing.)
* demux_mkv: handle TrueHD properlywm42013-12-271-32/+98
| | | | | | | | | Apparently, Matroska packs TrueHD packets in a way lavc doesn't expect. This broke decoding of some files [1] completely. A short look at the libavcodec parser shows that parsing this ourselves would probably be too much work, so make use of the libavcodec parser API. [1] http://www.cccp-project.net/be