aboutsummaryrefslogtreecommitdiffhomepage
path: root/options
Commit message (Collapse)AuthorAge
* player: add --audio-wait-open optionsGravatar wm42016-08-09
| | | | Complements the option added in the previous commit.
* player: add --audio-stream-silenceGravatar wm42016-08-09
| | | | | Completely insane that this has to be done. Crap for compensating HDMI crap.
* options: fix channels options copy/free operationsGravatar wm42016-08-05
| | | | | For some fucked up reason the arguments can be NULL. Makes no sense to me, but ok.
* audio: use --audio-channels=auto behavior, except on ALSAGravatar wm42016-08-04
| | | | | | | | | | | | | | | | | | | | | | | This commit adds an --audio-channel=auto-safe mode, and makes it the default. This mode behaves like "auto" with most AOs, except with ao_alsa. The intention is to allow multichannel output by default on sane APIs. ALSA is not sane as in it's so low level that it will e.g. configure any layout over HDMI, even if the connected A/V receiver does not support it. The HDMI fuckup is of course not ALSA's fault, but other audio APIs normally isolate applications from dealing with this and require the user to globally configure the correct output layout. This will help with other AOs too. ao_lavc (encoding) is changed to the new semantics as well, because it used to force stereo (perhaps because encoding mode is supposed to produce safe files for crap devices?). Exclusive mode output on Windows might need to be adjusted accordingly, as it grants the same kind of low level access as ALSA (requires more research). In addition to the things mentioned above, the --audio-channels option is extended to accept a set of channel layouts. This is supposed to be the correct way to configure mpv ALSA multichannel output. You need to put a list of channel layouts that your A/V receiver supports.
* options: un-restrict --audio-delayGravatar wm42016-08-04
| | | | Not a real reason to restrict its value range.
* options: add vp9 to --hwdec-codecsGravatar wm42016-07-30
|
* audio: refactor mixer code and delete mixer.cGravatar wm42016-07-17
| | | | | | | | | | | | | | | | | mixer.c didn't really deserve to be separate anymore, as half of its contents were unnecessary glue code after recent changes. It also created a weird split between audio.c and af.c due to the fact that mixer.c could insert audio filters. With the code being in audio.c directly, together with other code that unserts filters during runtime, it will be possible to cleanup this code a bit and make it work like the video filter code. As part of this change, make the balance code work like the volume code, and add an option to back the current balance value. Also, since the balance semantics are unexpected for most users (panning between the audio channels, instead of just changing the relative volume), and there are some other volumes, formally deprecate both the old property and the new option.
* videotoolbox: add --hwdec=videotoolbox-copy for h/w accelerated decoding ↵Gravatar Aman Gupta2016-07-15
| | | | with video filters
* audio: drop --softvol=no and --softvol=autoGravatar wm42016-07-09
| | | | | | | | | | | | | | Drop the code for switching the volume options and properties between af_volume and AO volume controls. interface-changes.rst mentions the changes in detail. Do this because this was exceedingly complex and had other problems as well. It was also very hard to test. It's just not worth the trouble. Some leftovers like AOCONTROL_HAS_PER_APP_VOLUME will be removed at a later point. Fixes #3322.
* options: deprecate --heartbeat-cmdGravatar wm42016-06-29
| | | | | It's useless. --heartbeat-interval is also considered deprecated, but this is not made explicit.
* options: add a deprecation warning printing mechanismGravatar wm42016-06-29
| | | | | | | | | | We have a warning mechanism for removed and for replaced options, but none yet for options which have been simply deprecated. For the following commit. (Fun fact: just adding the m_option field increases binary size by 14KB.)
* Fix misspellingsGravatar stepshal2016-06-26
|
* vo_opengl: refactor performance data propertiesGravatar Niklas Haas2016-06-08
| | | | | | | | | | | | | | | Instead of having 9 different properties, requiring 18 different VOCTRLs to read them all, they are now exposed as a single property. This is not only cleaner (since they're all together) but also allows querying all 9 of them with only a single VOCTRL (by using mp.get_property_native). (The extra factor of 2 was due to an extra query being needed to get the type, which is now also unnecessary) This makes it much easier to access performance metrics from within a lua script, and also makes it easier to just show a readable, formatted version via show-text.
* vo_opengl: somewhat simplify suboption handling messGravatar wm42016-06-04
| | | | | | | | | | | | | | | Enable m_sub_options_copy() to copy nested sub-options, and also enable it to create an option struct from defaults. We can get rid of most of the crap in assign_options() now. Calling handle_scaler_opt() to get a static allocation for scaler name is still needed. It's moved to reinit_scaler(), which seems to be a better place for it. Without it, dangling pointers could be created when options are changed. (And in fact, this fixes possible dangling pointers for window.name.) In theory we could create a dynamic copy, but that seemed even more messy. Chance of regressions.
* options: --geometry: center window position after applying sizeGravatar maniak13492016-05-22
| | | | | | | Center window position after applying W and H parameters of the --geometry option. Passing valid X and Y values will still override the position. Fixes #2397.
* video: add --hwdec=auto-copy modeGravatar wm42016-05-11
| | | | | | | | This uses the normal autoprobing rules like "auto", but rejects anything that isn't flagged as copying data back to system memory. The chunk in command.c was dead code, so remove it instead of updating it.
* win32: make taskbar progress indication optionalGravatar maniak13492016-05-08
| | | | | | | | | | | Add --taskbar-progress command line option and property which controls taskbar progress indication rendering in Windows 7+. This option is on by default and can be toggled during playback. This option does not affect the creation process of ITaskbarList3. When the option is turned off the progress bar is just hidden with TBPF_NOPROGRESS. Closes #2535
* x11: rename inappropriate --x11-bypass-compositor=never optionGravatar wm42016-05-07
| | | | This obviously made no sense.
* x11: add --x11-bypass-compositor=alwaysGravatar wm42016-05-06
| | | | Also add missing documentation for fs-only, and correct the default.
* client API: access choices as flags if appropriateGravatar wm42016-05-04
| | | | | | | | | | | | Options/properties that are choices, and which include "yes" or "no" values (or both) can now be read and written as MPV_FORMAT_FLAG. For write access, rejecting flags in these cases was obnoxiously unintuitive and inconvenient. For read access, the value of this is less convincing, and actually it's a major API change. At this point I probably have to admit that the finer details of the client API are very unstable.
* x11: extend --x11-bypass-compositor with fs-only optionGravatar wm42016-05-02
| | | | | | | | | | The "fs-only" choice sets the _NET_WM_BYPASS_COMPOSITOR to 1 if the window is fullscreened, and 0 otherwise. (0 is specified to be the implicit default - i.e. no change is requested in windowed mode.) In particular, change the default to "fs-only". Fixes #2582.
* options: add --fit-border video optionGravatar maniak13492016-04-30
| | | | | | | Flag that is set by default. Reseting it will result in mpv trying to fit client area with video instead of the whole window with border and decorations on the screen. Marked as (Windows only) for now until it's implemented on other platforms.
* sd_add: replace --sub-ass=no with --ass-style-override=stripGravatar wm42016-04-30
| | | | | | --sub-ass=no / --ass=no still work, but --ass-style-override=strip is preferred now. With this change, --ass-style-override can control all the types of style overriding.
* vo_opengl: D3D11VA + ANGLE interopGravatar wm42016-04-27
| | | | | | | | | | | | | | | | | | | This uses ID3D11VideoProcessor to convert the video to a RGBA surface, which is then bound to ANGLE. Currently ANGLE does not provide any way to bind nv12 surfaces directly, so this will have to do. ID3D11VideoContext1 would give us slightly more control about the colorspace conversion, though it's still not good, and not available in MinGW headers yet. The video processor is created lazily, because we need to have the coded frame size, of which AVFrame and mp_image have no concept of. Doing the creation lazily is less of a pain than somehow hacking the coded frame size into mp_image. I'm not really sure how ID3D11VideoProcessorInputView is supposed to work. We recreate it on every frame, which is simple and hopefully doesn't affect performance.
* command: fix cycling certain propertiesGravatar wm42016-04-15
| | | | | | | Commit a9bd4535 generally changed properties are set to string values. This actually broke the fallback for non-string properties, because the set string action was redirected directly to the property, instead of the generic handler and its fallback code.
* client API: improve mpv_set_property() handling of MPV_FORMAT_NODEGravatar wm42016-04-15
| | | | | | | | | If a mpv_node wrapped a string, the behavior was different from calling mpv_set_property() with MPV_FORMAT_STRING directly. Change this. The original intention was to be strict about types if MPV_FORMAT_NODE is used. But I think the result was less than ideal, and the same change towards less strict behavior was made to mpv_set_option() ages ago.
* m_option: slightly improve --msg-level=help outputGravatar wm42016-04-13
| | | | In particular get rid of the semi-deprecated ":" separator.
* m_option: add string conversion for --audio-channelsGravatar wm42016-04-13
| | | | Requested in #3040.
* x11: do not set _NET_WM_BYPASS_COMPOSITOR by defaultGravatar wm42016-04-03
| | | | | | | | | | | It's pretty "unfriendly" and causes too many issues. (Probably. At least they're more obvious to a user than e.g. broken frame timing.) Potentially we could apply heuristics like applying this only on fullscreen, but let's not. It's up to the user to configure this to get best results. Fixes #2997.
* vd_lavc: add d3d11va hwdecGravatar Kevin Mitchell2016-03-30
| | | | | | This commit adds the d3d11va-copy hwdec mode using the ffmpeg d3d11va api. Functions in common with dxva2 are handled in a separate decode/d3d.c file. A future commit will rewrite decode/dxva2.c to share this code.
* Add a mediacodec decoder hwdec wrapperGravatar Jan Ekström2016-03-25
| | | | | Does the same thing as the rpi one - makes fallback possible by pretending that h264_mediacodec is a hwdec.
* ipc: rename --input-unix-socket to --input-ipc-serverGravatar James Ross-Gowan2016-03-23
| | | | | | | | | | | JSON IPC works on Windows now, and although the transports for each plaform have similar characteristics, they unfortunately have different names (Unix domain sockets on Linux/Unix vs. named pipes on Windows.) Hopefully this change better reflects the purpose of the option too, since with --input-ipc-server, mpv acts as an IPC server that can service many simultaneous clients (as opposed to --input-file, which can only do one-to-one IPC.)
* dxva2: add interop (non-copyback) hwdec_typeGravatar Kevin Mitchell2016-02-17
| | | | | This always falls back to software decoding right now. VO support will be added in future commits.
* player: add --external-file optionGravatar wm42016-02-08
| | | | Mostly intended for use with --lavfi-complex.
* player: add complex filter graph supportGravatar wm42016-02-05
| | | | | | | | | | | | | | | | See --lavfi-complex option. This is still quite rough. There's no support for dynamic configuration of any kind. There are probably corner cases where playback might freeze or burn 100% CPU (due to dataflow problems when interaction with libavfilter). Future possible plans might include: - freely switch tracks by providing some sort of default track graph label - automatically enabling audio visualization - automatically mix audio or stack video when multiple tracks are selected at once (similar to how multiple sub tracks can be selected)
* options: set fs=yes by default on RPI, and change RPI defaults handlingGravatar wm42016-02-05
| | | | | The main reason for changing the fullscreen default is that not doing it would change the vo_rpi default behavior with the previous commit.
* audio: remove default preference for libdcadecGravatar wm42016-02-01
| | | | Not needed anymore, because the decoder was merged with FFmpeg.
* audio: change downmix behavior, add --audio-normalize-downmixGravatar wm42016-01-20
| | | | | | This is probably the 3rd time the user-visible behavior changes. This time, switch back because not normalizing seems to be the more expected behavior from users.
* audio: change --audio-channels default back to stereoGravatar wm42016-01-20
| | | | | | | | Too many problems. Well, actually it's just Linux audio systems which cause problems, and exclusive audio access on other platforms. In any case, it seems you have to do some manual configuration if you want multichannel audio output.
* options: add "service_name" as display tag.Gravatar Oliver Freyermuth2016-01-14
| | | | | | This is labeled as "name of the service in broadcasting (channel name)" and exported as a generic tag by avformat-demuxers, notably lavf when handling mpegts-streams from DVB.
* mpv_talloc.h: rename from talloc.hGravatar Dmitrij D. Czarkoff2016-01-11
| | | | This change helps avoiding conflict with talloc.h from libtalloc.
* player: make watch later/resume work when "playing" directoriesGravatar wm42016-01-06
| | | | | | | | | | | | | | If you do "mpv /bla/", and then branch out into sub-directories using playlist navigation, and then used quit and watch later, then playing the same directory did not resume from the previous point. This was because resuming is based on the path hash, so a path prefix can't be detected when resuming the parent directory. Solve this by writing each path prefix when playing directories is involved. (This includes all parent paths, so interestingly, "mpv /" would also resume in the above example.) Something like this was requested multiple times, and I want it too.
* options: raise maximum value for --audio-samplerateGravatar wm42016-01-05
| | | | Helps with testing.
* options: exclude 360 from --video-rotate rangeGravatar wm42016-01-02
| | | | It's indeed completely useless. Pointed out in #2647.
* options: add --audio-file-pathsGravatar wm42015-12-25
| | | | | | | | Requested. It works like --sub-paths. This will also load audio files from a "audio" sub directory in the config file (because the same code as for subtitles is used, and it also had such a feature). Fixes #2632.
* stream: drop PVR supportGravatar wm42015-12-10
| | | | | | | | | This is only for specific Hauppage cards. According to the comments in who is actively using this feature. Get it out of the way. Anyone who still wants to use this should complain. Keeping this code would not cause terribly much additional work, and it could be restored again. (But not if the request comes months later.)
* win32: add option to set VO MMCSS profileGravatar wm42015-12-06
| | | | This was requested.
* path: cosmeticsGravatar lzmths2015-12-02
| | | | | | Avoiding conditional directives that split up parts of statements. Signed-off-by: wm4 <wm4@nowhere>
* x11: request bypassing compositorGravatar wm42015-11-18
| | | | | | | Maybe this is a good idea. Also add an option to disable it again, for the sake of testing. Fixes #2502.
* videotoolbox: make decoder format customizableGravatar wm42015-11-17
| | | | | | | | | | Because apparently there's no ideal universally working format. The weird OpenGL texture format for kCVPixelFormatType_32BGRA is from: http://stackoverflow.com/questions/22077544/draw-an-iosurface-to-an-opengl-context (Which apparently got it from the linked Apple example code.)