1
0
mirror of https://github.com/mpv-player/mpv synced 2024-12-26 09:02:38 +00:00
mpv/DOCS
wm4 236577af09 cache: use threads instead of fork()
Basically rewrite all the code supporting the cache (i.e. anything other
than the ringbuffer logic). The underlying design is untouched.

Note that the old cache2.c (on which this code is based) already had a
threading implementation. This was mostly unused on Linux, and had some
problems, such as using shared volatile variables for communication and
uninterruptible timeouts, instead of using locks for synchronization.

This commit does use proper locking, while still retaining the way the
old cache worked. It's basically a big refactor.

Simplify the code too. Since we don't need to copy stream ctrl args
anymore (we're always guaranteed a shared address space now), lots of
annoying code just goes away. Likewise, we don't need to care about
sector sizes. The cache uses the high-level stream API to read from
other streams, and sector sizes are handled transparently.
2013-06-16 22:05:09 +02:00
..
man/en cache: use threads instead of fork() 2013-06-16 22:05:09 +02:00
OUTDATED-tech core: redo how codecs are mapped, remove codecs.conf 2013-02-10 17:25:56 +01:00
crosscompile-mingw.txt DOCS: add some basic MinGW cross compilation instructions 2013-01-08 17:21:04 +01:00
edl.rst DOCS: document EDL format 2012-12-28 13:43:59 +01:00
encoding.rst encoding-example-profiles and manpage: prefer libvorbis over vorbis 2013-03-31 19:13:06 +02:00
tech-overview.txt docs: update tech-overview.txt 2013-06-05 01:39:54 +02:00