summaryrefslogtreecommitdiffstats
path: root/DOCS/tech-overview.txt
Commit message (Collapse)AuthorAgeFilesLines
* DOCS/tech-overview.txt: add builtin.conf to etc/ descriptionnanahi2024-03-111-2/+2
| | | | builtin.conf is compiled into mpv binary as the default config.
* DOCS/tech-overview.txt: update for merged pull/push glue codenanahi2024-03-111-3/+3
| | | | | b83bdd1d17cc90b4d8cd2a32321cd7c5cc306422 merged the glue code for the two types of audio APIs.
* DOCS/tech-overview.txt: add vo_gpu_next referencenanahi2024-03-111-2/+2
| | | | vo_gpu_next also can pick a windowing system at runtime.
* DOCS/tech-overview.txt: add a section for the new filter frameworknanahi2024-03-111-12/+16
| | | | | | | | | | 76276c92104c31ee936ba5c76a76072f09978c5f introduced a generic filtering framework which replaced the separate video and audio filter chains. Additionally, 6d36fad83c779936a012e85a1eb92ec94651c7c0 and 76e7e78ce989aad546310b9808cf7f96f23a281f made the decoder wrappers a filter. Add a new section to document this, and corrrect the outdated audio/video decoder and filter info.
* DOCS/tech-overview.txt: update for removed stream inputsnanahi2024-03-111-2/+1
| | | | | | stream_tv.c was removed in b30e85508a305d668db8419556d295a65ab08707. stream_dvd.c was removed in 62294049852549e99ec948e0df16452856afa0c1 and replaced by stream_dvdnav.c.
* DOCS/tech-overview.txt: update for split m_config.c/hnanahi2024-03-111-7/+8
| | | | | | Since eb381cbd4b38dd496ee0be609f1a66c360a76448 split the file into m_config_core.h and m_config_frontend.h, the statements here are no longer true. Correct them the current usage.
* DOCS/tech-overview.txt: fix function/member/header namesnanahi2024-03-111-3/+3
| | | | Just to be exact.
* DOCS: make mentions of macOS consistentder richter2024-02-211-1/+1
| | | | | change all mentions and variations of OSX, OS X, MacOSX, MacOS X, etc consistent. use the official naming macOS.
* DOCS/*: remove mentions of Libavllyyr2024-01-201-4/+1
|
* ALL: use new mp_thread abstractionKacper Michajłow2023-11-051-24/+24
|
* osdep: drop atomic fallbackNRK2023-10-201-2/+1
| | | | | even msvc (which mpv apparently doesn't support) supports C11 atomics now. no need to carry around fallback with subtle semantic differences.
* various: fix typosCœur2022-04-251-2/+2
|
* options: change option macros and all option declarationswm42020-03-181-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Change all OPT_* macros such that they don't define the entire m_option initializer, and instead expand only to a part of it, which sets certain fields. This requires changing almost every option declaration, because they all use these macros. A declaration now always starts with {"name", ... followed by designated initializers only (possibly wrapped in macros). The OPT_* macros now initialize the .offset and .type fields only, sometimes also .priv and others. I think this change makes the option macros less tricky. The old code had to stuff everything into macro arguments (and attempted to allow setting arbitrary fields by letting the user pass designated initializers in the vararg parts). Some of this was made messy due to C99 and C11 not allowing 0-sized varargs with ',' removal. It's also possible that this change is pointless, other than cosmetic preferences. Not too happy about some things. For example, the OPT_CHOICE() indentation I applied looks a bit ugly. Much of this change was done with regex search&replace, but some places required manual editing. In particular, code in "obscure" areas (which I didn't include in compilation) might be broken now. In wayland_common.c the author of some option declarations confused the flags parameter with the default value (though the default value was also properly set below). I fixed this with this change.
* DOCS/tech-overview.txt: some more blablawm42019-12-281-27/+67
| | | | | This file is only complete once it contains the entire mpv source code in English form.
* DOCS/tech-overview.txt: add lots of irrelevant blablawm42019-12-271-0/+373
| | | | | | Thought it might be useful to document some of these things, instead of explaining them over and over again. But I can guarantee that nobody will ever read all this. (Independent of its quality and completeness.)
* wscript: add --enable-ta-leak-report optionwm42019-11-081-0/+1
| | | | Kind of more convenient because I'm lazy.
* DOCS/tech-overview.txt: caching has changedwm42019-10-021-3/+4
|
* video: change some remaining vo_opengl mentions to vo_gpuAkemi2018-01-201-2/+2
|
* DOCS/tech-overview.txt: updateswm42017-06-291-50/+26
| | | | Oh, this file still exists.
* Fix misspellingsstepshal2016-06-261-1/+1
|
* options: remove --leak-reportwm42015-05-021-2/+1
| | | | Use the environment variable instead.
* DOCS/tech-overview.txt: some updateswm42014-08-181-17/+35
|
* DOCS/tech-overview: minor updateswm42014-07-091-12/+12
|
* options: rename subtitle-related optionsMartin Herkt2014-05-041-1/+1
| | | | | | | | | --ass → --sub-ass --autosub → --sub-auto --autosub-match → --sub-auto-match --sub → --sub-file --subcp → --sub-codepage --subfps → --sub-fps
* DOCS/tech-overview: DOCS/OUTDATED-tech/ was deletedwm42014-03-121-3/+1
|
* Fix OSX build; remove all remaining mpvcore references11rcombs2013-12-171-7/+7
|
* tech-overview.txt: minor updatewm42013-11-201-2/+2
|
* tech-overview.txt: reflect recent updateswm42013-10-301-21/+32
| | | | mplayer.c split, and some other things.
* tech-overview.txt: reflect talloc/TA changeswm42013-10-151-0/+6
|
* core: move contents to mpvcore (2/2)Stefano Pigozzi2013-08-061-6/+6
| | | | Followup commit. Fixes all the files references.
* tech-overview.txt: minor changes and additionswm42013-07-141-27/+38
|
* DOCS: update tech-overview.txt to reflect some subtitle related changeswm42013-06-251-13/+19
|
* docs: update tech-overview.txtwm42013-06-051-9/+19
|
* core: redo how codecs are mapped, remove codecs.confwm42013-02-101-4/+2
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Use codec names instead of FourCCs to identify codecs. Rewrite how codecs are selected and initialized. Now each decoder exports a list of decoders (and the codec it supports) via add_decoders(). The order matters, and the first decoder for a given decoder is preferred over the other decoders. E.g. all ad_mpg123 decoders are preferred over ad_lavc, because it comes first in the mpcodecs_ad_drivers array. Likewise, decoders within ad_lavc that are enumerated first by libavcodec (using av_codec_next()) are preferred. (This is actually critical to select h264 software decoding by default instead of vdpau. libavcodec and ffmpeg/avconv use the same method to select decoders by default, so we hope this is sane.) The codec names follow libavcodec's codec names as defined by AVCodecDescriptor.name (see libavcodec/codec_desc.c). Some decoders have names different from the canonical codec name. The AVCodecDescriptor API is relatively new, so we need a compatibility layer for older libavcodec versions for codec names that are referenced internally, and which are different from the decoder name. (Add a configure check for that, because checking versions is getting way too messy.) demux/codec_tags.c is generated from the former codecs.conf (minus "special" decoders like vdpau, and excluding the mappings that are the same as the mappings libavformat's exported RIFF tables). It contains all the mappings from FourCCs to codec name. This is needed for demux_mkv, demux_mpg, demux_avi and demux_asf. demux_lavf will set the codec as determined by libavformat, while the other demuxers have to do this on their own, using the mp_set_audio/video_codec_from_tag() functions. Note that the sh_audio/video->format members don't uniquely identify the codec anymore, and sh->codec takes over this role. Replace the --ac/--vc/--afm/--vfm with new --vd/--ad options, which provide cover the functionality of the removed switched. Note: there's no CODECS_FLAG_FLIP flag anymore. This means some obscure container/video combinations (e.g. the sample Film_200_zygo_pro.mov) are played flipped. ffplay/avplay doesn't handle this properly either, so we don't care and blame ffmeg/libav instead.
* Rename directories, move files (step 2 of 2)wm42012-11-121-18/+22
| | | | | | | | | | | | Finish renaming directories and moving files. Adjust all include statements to make the previous commit compile. The two commits are separate, because git is bad at tracking renames and content changes at the same time. Also take this as an opportunity to remove the separation between "common" and "mplayer" sources in the Makefile. ("common" used to be shared between mplayer and mencoder.)
* core: disable vf_sub auto-insertionwm42012-10-241-2/+1
| | | | | | | Since most VOs support rendering subs directly, this doesn't change much. Changes include: vo_null is faster, vo_image doesn't add subtitles by default (while vo_lavc does), vo_caca doesn't render subs (but you couldn't read them anyway).
* VF: rename vf_ass to vf_subwm42012-10-241-1/+1
| | | | | | | | | | | | This reflects the fact that this filter now renders all types of subtitles, not just ASS subtitles. Always compile this filter, not just on CONFIG_ASS. Note that --no-ass still disables auto-inserting this filter. It's the only way to disable auto-insertion, so keep it even though it's not really ASS specific anymore. --no-ass also disables using libass for rendering text subs directly.
* Rename to "mpv"wm42012-10-121-3/+3
| | | | | | | | | | | | | | | | | | This changes the name of this project to mpv. Most user-visible mentions of "MPlayer" and "mplayer" are changed to "mpv". The binary name and the default config file location are changed as well. The new default config file location is: ~/.mpv/ Remove etc/mplayer.desktop. Apparently this was for the MPlayer GUI, which has been removed from mplayer2 ages ago. We don't have a logo, and the MS Windows resource files sort-of require one, so leave etc/mplayer.ico/.xpm as-is. Remove the debian and rpm packaging scripts. These contained outdated dependencies and likely were more harmful than useful. (Patches which add working and well-tested packaging are welcome.)
* VO: actually rename VOs gl -> opengl-old, gl3 -> openglwm42012-10-031-2/+2
| | | | | | | | | | | | | This renames vo_gl3 to vo_opengl, and makes it the default. The old vo_gl is still available under "opengl-old". We keep "gl3" as alias to "opengl" for short-term compatibility. For OSX/Cocoa, the autoprobe order changes (prefer the "opengl" over "opengl-old"). Remove "gl_nosw". This was a compatibility alias for "opengl-old", and there's no point in keeping it.
* libaf: rename af_format.h to format.hwm42012-08-291-1/+1
| | | | | | | | | | af_format.h declares some symbols which are defined in format.c. The fact that af_format.c is a completely unrelated file is rather confusing. Having the header and implementation file use the same base name is more uniform. (af_format.c is the audio conversion filter, while af_format.h and format.c are about audio formats and their properties.) Also fix all source files which include this file.
* DOCS: add big picture overview over the codewm42012-08-261-0/+206
Apparently this was useful for some. Isn't as detailed as general.txt and others, but broader and less outdated.