diff options
author | wm4 <wm4@nowhere> | 2014-12-26 17:43:59 +0100 |
---|---|---|
committer | wm4 <wm4@nowhere> | 2014-12-26 18:11:22 +0100 |
commit | adf7f0661ec7b6c83a3a82478f28967e7a96d298 (patch) | |
tree | 1914c642abcf338384a4d94785cc49f8bb6a3e52 /DOCS/man | |
parent | 3fdb6be3166790ff3aad68dd4d4bb83963815e4b (diff) |
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/man')
-rw-r--r-- | DOCS/man/input.rst | 16 |
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. |