summaryrefslogtreecommitdiffstats
path: root/DOCS
diff options
context:
space:
mode:
authorwm4 <wm4@nowhere>2014-12-26 17:43:59 +0100
committerwm4 <wm4@nowhere>2014-12-26 18:11:22 +0100
commitadf7f0661ec7b6c83a3a82478f28967e7a96d298 (patch)
tree1914c642abcf338384a4d94785cc49f8bb6a3e52 /DOCS
parent3fdb6be3166790ff3aad68dd4d4bb83963815e4b (diff)
downloadmpv-adf7f0661ec7b6c83a3a82478f28967e7a96d298.tar.bz2
mpv-adf7f0661ec7b6c83a3a82478f28967e7a96d298.tar.xz
command: overlay_add: more flexible treatment of offset parameter
Essentially, don't make it the mmap() argument, and just add it to the memory address. This hides tricky things like alignment reequirements from the user. Strictly speaking, this is not entirely backwards compatible: this adds the regression that you can't access past 2 or 4 GB of a file on 32 bit systems anymore. But I doubt anyone cared about this. In theory, we could be clever, and just align the offset manually and pass that to mmap(). This would also be transparent to the user, but minimally more effort, so this is left as exercise to the reader.
Diffstat (limited to 'DOCS')
-rw-r--r--DOCS/man/input.rst16
1 files changed, 9 insertions, 7 deletions
diff --git a/DOCS/man/input.rst b/DOCS/man/input.rst
index ca384ab4c9..eee6beaf78 100644
--- a/DOCS/man/input.rst
+++ b/DOCS/man/input.rst
@@ -501,13 +501,15 @@ Input Commands that are Possibly Subject to Change
It is also possible to pass a raw memory address for use as bitmap memory
by passing a memory address as integer prefixed with a ``&`` character.
- Passing the wrong thing here will crash the player. The ``offset`` parameter
- is not used and must be 0. This mode might be useful for use with libmpv.
-
- ``offset`` is the offset of the first pixel in the source file. It is
- passed directly to ``mmap`` and is subject to certain restrictions
- (see ``man mmap`` for details). In particular, this value has to be a
- multiple of the system's page size.
+ Passing the wrong thing here will crash the player. This mode might be
+ useful for use with libmpv. The ``offset`` parameter is simply added to the
+ memory address (since mpv 0.8.0, ignored before).
+
+ ``offset`` is the byte offset of the first pixel in the source file.
+ (The current implementation always mmap's the whole file from position 0 to
+ the end of the image, so large offsets should be avoided. Before mpv 0.8.0,
+ the offset was actually passed directly to ``mmap``, but it was changed to
+ make using it easier.)
``fmt`` is a string identifying the image format. Currently, only ``bgra``
is defined. This format has 4 bytes per pixels, with 8 bits per component.