summaryrefslogtreecommitdiffstats
Commit message (Collapse)AuthorAgeFilesLines
* Update RELEASE_NOTESDiogo Franco (Kovensky)2015-04-131-1/+18
|
* Merge branch 'master' into release/0.9Diogo Franco (Kovensky)2015-04-13269-1465/+1533
|\ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * master: (39 commits) Update license headers af_lavrresample: minor simplification af_lavrresample: allow resetting output sample format audio/filter: fully renegotiate audio formats on every reconfig DOCS/waf: Edit --enable-feature sentences vo_opengl: slightly simplify check_gl_features() vo_opengl: unify blend-subtitles-res and blend-subtitles vo_opengl: fix blend-subtitles-res=video & anamorphic video manpage: mention how pseudo-gui mode is enabled on win32 main-fn-win: fix handle validity check for XP win32: use pseudo-gui profile when started without stdio win32: only attach to the console from mpv.com win32: use a platform-specific unicode entry-point vo_opengl: add blend-subtitles-res manpage: document pseudo-gui stuff mp_image: remove redundant flags field mp_image: remove redundant chroma_x/y_shift fields mp_image: remove redundant plane_w/h fields player: use config parser for setting up pseudo-gui profile player: change pseudo-gui settings ...
| * Update license headersMarcin Kurczewski2015-04-13246-1233/+1012
| | | | | | | | Signed-off-by: wm4 <wm4@nowhere>
| * af_lavrresample: minor simplificationwm42015-04-121-4/+4
| | | | | | | | | | The in/out pointers usually have not much meaning outside of AF_CONTROL_REINIT. Also remove the redundant casts.
| * af_lavrresample: allow resetting output sample formatwm42015-04-121-2/+3
| | | | | | | | It must be allowed to set format==0.
| * audio/filter: fully renegotiate audio formats on every reconfigwm42015-04-121-0/+10
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | It could happen that a lavrresample filter would keep its old output format when the decoder changed its output format. This simply happened because the output format was never reset. Normally, this was not an issue, because lavrresample filters only inserted for format conversion were removed on format changes. But if --no-audio-pitch-correction is set and playback speed is changed, then there is a "permanent" lavrresample filter in the filter chain, which shows this behavior. Fix by explicitly resetting output formats for all filters which support it. Note: this can crash with libswresample in some cases. I'm not sure if this is mpv's fault or libswresample's, but since it works with libavresample, I'm going to assume it's not our's.
| * DOCS/waf: Edit --enable-feature sentencesrobin2015-04-121-2/+3
| | | | | | | | | | | | | | The gender specific pronoun is changed, since we shouldn't assume the gender of the user. The sentence itself is also changed to be more correct in general.
| * vo_opengl: slightly simplify check_gl_features()wm42015-04-111-25/+12
| | | | | | | | | | | | | | | | | | | | Not sure why this was so roundabout; probably to keep spam down if the user's OpenGL drivers are crap (but then just don't enable extended features), or because the "Disabling..." text was so repetitious. But there doesn't seem to be a good reason after all. Also, this could already overflow the fixed size disabled[] array. Just print the messages directly.
| * vo_opengl: unify blend-subtitles-res and blend-subtitleswm42015-04-113-20/+12
| |
| * vo_opengl: fix blend-subtitles-res=video & anamorphic videowm42015-04-111-1/+6
| | | | | | | | | | Since scaling the video changes the aspect ratio, we have to compensate for this when rendering subtitles.
| * manpage: mention how pseudo-gui mode is enabled on win32wm42015-04-111-2/+7
| |
| * main-fn-win: fix handle validity check for XPJames Ross-Gowan2015-04-111-1/+2
| | | | | | | | | | | | | | Apparently the standard handles can be set to bogus values on XP. Use GetFileType to check whether they refer to an actual file/pipe/etc. The logic used by is_valid_handle() is now pretty similar to what the CRT uses to check for valid stdio handles.
| * win32: use pseudo-gui profile when started without stdioJames Ross-Gowan2015-04-111-6/+35
| | | | | | | | | | | | If mpv is started from Explorer or the Start Menu, it will have no console and no standard IO handles. In this case, it's fairly safe to enable the pseudo-gui profile.
| * win32: only attach to the console from mpv.comJames Ross-Gowan2015-04-114-13/+49
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Previously, mpv.exe used the --terminal option to decide whether to attach to the parent process's console, which made it impossible to tell whether mpv would attach to the console before the config files were parsed. Instead, make mpv always attach to the console when launched from the console wrapper (mpv.com) and never attach otherwise. This will be useful for the next commit, which will use the presence of the console to decide whether to use the pseudo-gui profile. This change should also be an improvement in behavior. The old code would attach to the parent process's console, regardless of whether it was mpv.com or some other program like cmd.exe. This could be confusing, since mpv.exe is marked as a Windows GUI program and shouldn't write text to its parent process's console when launched directly. (See #768.) Visual Studio does something similar with its devenv.com wrapper. devenv.exe only attaches to the console when launched from devenv.com.
| * win32: use a platform-specific unicode entry-pointJames Ross-Gowan2015-04-118-40/+32
| | | | | | | | | | | | | | | | | | | | Add a platform-specific entry-point for Windows. This will allow some platform-specific initialization to be added without the need for ugly ifdeffery in main.c. As an immediate advantage, mpv can now use a unicode entry-point and convert the command line arguments to UTF-8 before passing them to mpv_main, so osdep_preinit can be simplified a little bit.
| * vo_opengl: add blend-subtitles-resNiklas Haas2015-04-103-4/+30
| | | | | | | | | | This can be used to draw the subtitles at the video's native res, which can make them look more natural and increases performance.
| * manpage: document pseudo-gui stuffwm42015-04-101-0/+28
| |
| * mp_image: remove redundant flags fieldwm42015-04-103-8/+6
| | | | | | | | | | | | | | Because gcc (and clang) is a goddamn PITA and unnecessarily warns if the universal initializer for structs is used (like mp_image x = {}) and the first member of the struct is also a struct, move the w/h fields to the top.
| * mp_image: remove redundant chroma_x/y_shift fieldswm42015-04-105-13/+9
| |
| * mp_image: remove redundant plane_w/h fieldswm42015-04-104-21/+31
| | | | | | | | Seems relatively painful in this case, but they are morally wrong.
| * player: use config parser for setting up pseudo-gui profilewm42015-04-103-11/+12
| |
| * player: change pseudo-gui settingswm42015-04-101-2/+1
| | | | | | | | | | | | Remove --keep-open. Switch to --idle=once. This effectively makes the player quit after end of playback, but still shows the idle screen if it was started with no files.
| * vo_opengl: use correct texture coordinates for nv12wm42015-04-101-1/+1
| |
| * ao_coreaudio: fix inverted conditionwm42015-04-101-3/+4
| | | | | | | | And also use the correct type for the printf call below.
| * player: do not accidentally init terminalwm42015-04-101-2/+1
| | | | | | | | | | | | | | Starting the command line player with --no-terminal, the terminal was sitll initialized. This happened because update_logging() used the option value before the options were parsed. Fix by moving down the initialization to before the point where it's actually needed.
| * README: remove dead linkwm42015-04-101-1/+1
| |
| * mp_image: fix buildwm42015-04-091-2/+0
| |
| * mp_image: get rid of chroma_width/height fieldswm42015-04-092-7/+4
| | | | | | | | | | | | | | They are redundant. They were used by draw_bmp.c only, and only in a special code path that 1. used fixed image formats, and 2. had image sized perfectly aligned to chroma boundaries (so computing the chroma width/height is trivial).
| * screenshots: drop some useless jpeg writer optionswm42015-04-091-11/+0
| |
| * screenshots: write jpg files with original subsamplingwm42015-04-091-1/+5
| | | | | | | | | | A screenshot from a 4:2:0 video will use 4:2:0, RGB will use 4:4:4, and so on. (The image data still goes through RGB conversion always.)
| * Update README.mdCris2015-04-091-20/+42
| | | | | | | | Signed-off-by: wm4 <wm4@nowhere>
| * ytdl: set additional properties for rtmp streamsSebastian Mayr2015-04-091-3/+21
| |
| * opengl: win32 - add option 'dwmflush' to sync in DWMAvi Halachmi (:avih)2015-04-094-0/+69
| | | | | | | | | | | | | | This could help in cases where the DWM (Windows desktop compositor) adds another layer of bufferring and therefore the SwapBuffers timing could get messed up. Signed-off-by: wm4 <wm4@nowhere>
| * opengl: smoothmotion: wake up for next vsync a bit earlierAvi Halachmi (:avih)2015-04-091-1/+1
| | | | | | | | | | | | | | | | on my windows system this allows smoothmotion to work perfectly also in windowed mode. There's no real right or wrong here, with the the only goal being to always hit the next vsync. however, on cases where vsync timing is jittery (as could happen with DWM), this patch tries to aim to the middle of the vsync cycle to get as least affected as possible by such jitter.
| * opengl: drop less frames when clip and display have similar fpsAvi Halachmi (:avih)2015-04-091-1/+9
| | | | | | | | | | | | | | | | adds 1 vsync interval "slack" before deciding to drop the first frame. it should help on cases of timing jitter (sleep duration, container timestamps, compositor vsync timing, etc). once the drop threshold has been crossed, it will keep dropping until perfect timing alignment. this prevents crossing the drop threshold back and forth repeatedly and therefore more resilient to frame drops
| * ytdl_hook.lua: Disable video when vid option is "no"robin2015-04-091-0/+7
| | | | | | | | | | | | When setting options like --no-video, ytdl_hook adds the "-x" argument to youtube-dl, so that bandwith is saved by not downloading the video on some sites.
| * vo_opengl_cb: deprecate mpv_opengl_cb_render()wm42015-04-097-24/+42
| | | | | | | | Its vp parameter made no sense anymore. Introduce a new one.
| * vo_opengl_cb: add a function to report vsync timewm42015-04-098-1/+48
| | | | | | | | | | | | | | And also let vo.c know of it. Currently, this does not help much, but will facilitate future improvements.
| * vo_opengl_cb: fix video timing somewhatwm42015-04-091-2/+2
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Increase the default queue size. This helps with "missed" frames due to the asynchronous nature of the API. All the other VOs are synchronous, so if rendering and displaying takes a while, the common code in vo.c will be blocked until it can continue. But with opengl-cb, vo.c might immediately push the next ready frame, which causes the current frame to be dropped _if_ it wasn't rendered yet. One could fix this by making vo.c wait a while (until the API user calls the render function, which pulls the frame). But setting the default queue size to 2 seems much simpler: instead of dropping the frame, it will be pushed to the API user once the next renderer call finishes. (This is still a bit strange, and will hopefully be cleaned up when video scheduling is redone, but for now this appears to deliver relatively good results.)
| * vo_opengl: log used GLXFBConfigwm42015-04-091-0/+1
| | | | | | | | | | Now don't ask me why the GLXFBConfig type is a pointer, but stores an integer ID.
| * vo_opengl: remove unused functionwm42015-04-092-6/+0
| |
* | Update RELEASE_NOTESDiogo Franco (Kovensky)2015-04-131-6/+243
| |
* | Update RELEASE_NOTESDiogo Franco (Kovensky)2015-04-091-11/+13
| |
* | Merge branch 'master' into release/0.9Diogo Franco (Kovensky)2015-04-0917-87/+115
|\| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | All commits are bugfixes anyway, so just taking everything. * master: sub: don't truncate timestamps to int sub: unprefer libavcodec's MicroDVD converter manpage: lua: clarify timer usage audio: automatically deatch filters if spdif prevents their use audio: change a detail about filter insertion ao_alsa: change log output audio: avoid one more redundant audio filter reinit ao_coreaudio: do not error if retrieving info for verbose mode fails travis: re-enable OSX video/out: fix screenshot image formats vdpau: don't use a transparent image format for screenshots screenshot: use GPU readback only for hardware decoded images manpage: remove confusing statement screenshots: select best image format the encoder supports
| * sub: don't truncate timestamps to intwm42015-04-081-1/+1
| | | | | | | | | | Realistically probably no problem at all since they're in ms and usually start from 0, but whatever.
| * sub: unprefer libavcodec's MicroDVD converterwm42015-04-081-1/+1
| | | | | | | | | | | | | | | | | | | | Prefer the builtin one again. libavcodec still uses the ASS packet format that uses inline timestamps, so the packet timestamps are ignored. This again leads to additional rounding of timestamps, because the ASS storage format only has 10ms resolution (instead of 1ms resolution like libass). This again can lead to unintentional overlaps when converting subtitles. The internal MicroDVD converter avoids this, because it always uses packet timestamps.
| * manpage: lua: clarify timer usagewm42015-04-081-0/+17
| | | | | | | | | | | | This seems to come up often. I guess '.' vs. ':' for Lua calls is confusing, and this part of the scripting API is the only one which requires using it.
| * audio: automatically deatch filters if spdif prevents their usewm42015-04-072-5/+17
| | | | | | | | Fixes #1743 and partially #1780.
| * audio: change a detail about filter insertionwm42015-04-074-28/+15
| | | | | | | | | | | | | | | | | | | | The af_add() function has a problem: if the inserted filter returns AF_DETACH during init, the function will have a dangling pointer. Until now this was avoided by making sure none of the used filters actually return AF_DETACH, but it's getting infeasible. Solve this by requiring passing an unique label to af_add(), which is then used instead of the pointer.
| * ao_alsa: change log outputwm42015-04-071-12/+15
| | | | | | | | | | | | | | | | Silence the usually user-visible warning about unsupported channel maps. This might be an ALSA bug, but ALSA will never fix this behavior anyway. (Or maybe it's a feature.) Log some other information that might be useful.
| * audio: avoid one more redundant audio filter reinitwm42015-04-071-2/+2
| | | | | | | | | | | | Only reinit filters if it's actually needed. This is also slightly easier to understand: if you look at the code, it should now be more obvious why a reinit is needed (hopefully).
| * ao_coreaudio: do not error if retrieving info for verbose mode failswm42015-04-071-6/+6
| | | | | | | | | | | | The message log level shouldn't get to decide whether something fails or not. So replace the fatal error check on the verbose output code path with a warning.
| * travis: re-enable OSXwm42015-04-071-1/+1
| | | | | | | | Let's see if it works better now.
| * video/out: fix screenshot image formatswm42015-04-073-3/+3
| | | | | | | | | | | | | | Use variants without alpha. I skipped vo_sdl, because format selection seems a bit more complicated here, and nobody cares about vo_sdl anymore.
| * vdpau: don't use a transparent image format for screenshotswm42015-04-071-1/+1
| | | | | | | | Fixes #1779.
| * screenshot: use GPU readback only for hardware decoded imageswm42015-04-071-1/+1