|
FFmpeg
|
#include "config.h"#include "error.h"#include "file.h"#include "file_open.h"#include "internal.h"#include "log.h"#include "mem.h"#include <fcntl.h>#include <sys/stat.h>Go to the source code of this file.
Data Structures | |
| struct | FileLogContext |
Functions | |
| int | av_file_map (const char *filename, uint8_t **bufptr, size_t *size, int log_offset, void *log_ctx) |
| Read the file with name filename, and put its content in a newly allocated buffer or map it with mmap() when available. | |
| void | av_file_unmap (uint8_t *bufptr, size_t size) |
| Unmap or free the buffer bufptr created by av_file_map(). | |
| int | av_file_map_shared (int fd, size_t size, void **bufptr) |
| Map the beginning of an open file into memory for shared read and write access. | |
| void | av_file_unmap_shared (void *bufptr, size_t size) |
| Unmap the memory mapped by av_file_map_shared(). | |
Variables | |
| static const AVClass | file_log_ctx_class |
| int av_file_map | ( | const char * | filename, |
| uint8_t ** | bufptr, | ||
| size_t * | size, | ||
| int | log_offset, | ||
| void * | log_ctx ) |
Read the file with name filename, and put its content in a newly allocated buffer or map it with mmap() when available.
In case of success set *bufptr to the read or mmapped buffer, and *size to the size in bytes of the buffer in *bufptr. Unlike mmap this function succeeds with zero sized files, in this case *bufptr will be set to NULL and *size will be set to 0. The returned buffer must be released with av_file_unmap().
| filename | path to the file | |
| [out] | bufptr | pointee is set to the mapped or allocated buffer |
| [out] | size | pointee is set to the size in bytes of the buffer |
| log_offset | loglevel offset used for logging | |
| log_ctx | context used for logging |
Definition at line 114 of file file.c.
Referenced by ff_load_textfile(), init(), init(), init_pattern_from_file(), init_pattern_from_file(), init_vulkan(), main(), main(), parse_custom_lut(), parse_psfile(), parse_psfile(), and read_shape_from_file().
| void av_file_unmap | ( | uint8_t * | bufptr, |
| size_t | size ) |
Unmap or free the buffer bufptr created by av_file_map().
| bufptr | the buffer previously created with av_file_map() |
| size | size in bytes of bufptr, must be the same as returned by av_file_map() |
Definition at line 175 of file file.c.
Referenced by ff_load_textfile(), init(), init(), init_vulkan(), main(), main(), parse_custom_lut(), parse_psfile(), parse_psfile(), read_shape_from_file(), uninit(), and uninit().
| int av_file_map_shared | ( | int | fd, |
| size_t | size, | ||
| void ** | bufptr ) |
Map the beginning of an open file into memory for shared read and write access.
Unlike av_file_map() the mapping is not a private copy of the file, every store to the returned memory is written to the file and is visible to every other mapping of it, in this process and in other processes. The file is extended to size bytes if it is shorter, it is never shortened. The mapping must be released with av_file_unmap_shared().
| fd | file descriptor of a file opened for reading and writing | |
| size | number of bytes to map, must not be zero | |
| [out] | bufptr | pointee is set to the mapped memory |
Definition at line 186 of file file.c.
Referenced by cache_map(), and spacemap_remap().
| void av_file_unmap_shared | ( | void * | bufptr, |
| size_t | size ) |
Unmap the memory mapped by av_file_map_shared().
| bufptr | the memory previously mapped by av_file_map_shared() |
| size | size in bytes of the mapping, must be the same as passed to av_file_map_shared() |
Definition at line 198 of file file.c.
Referenced by cache_map(), shared_close(), and spacemap_remap().
|
static |
Definition at line 54 of file file.c.
Referenced by av_file_map(), and avpriv_tempfile().