FFmpeg
Main Page
Related Pages
Modules
Namespaces
Data Structures
Files
Examples
File List
Globals
All
Data Structures
Namespaces
Files
Functions
Variables
Typedefs
Enumerations
Enumerator
Macros
Groups
Pages
libavutil
file.h
Go to the documentation of this file.
1
/*
2
* This file is part of FFmpeg.
3
*
4
* FFmpeg is free software; you can redistribute it and/or
5
* modify it under the terms of the GNU Lesser General Public
6
* License as published by the Free Software Foundation; either
7
* version 2.1 of the License, or (at your option) any later version.
8
*
9
* FFmpeg is distributed in the hope that it will be useful,
10
* but WITHOUT ANY WARRANTY; without even the implied warranty of
11
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
12
* Lesser General Public License for more details.
13
*
14
* You should have received a copy of the GNU Lesser General Public
15
* License along with FFmpeg; if not, write to the Free Software
16
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
17
*/
18
19
#ifndef AVUTIL_FILE_H
20
#define AVUTIL_FILE_H
21
22
#include <stdint.h>
23
24
#include "
avutil.h
"
25
26
/**
27
* @file
28
* Misc file utilities.
29
*/
30
31
/**
32
* Read the file with name filename, and put its content in a newly
33
* allocated buffer or map it with mmap() when available.
34
* In case of success set *bufptr to the read or mmapped buffer, and
35
* *size to the size in bytes of the buffer in *bufptr.
36
* The returned buffer must be released with av_file_unmap().
37
*
38
* @param log_offset loglevel offset used for logging
39
* @param log_ctx context used for logging
40
* @return a non negative number in case of success, a negative value
41
* corresponding to an AVERROR error code in case of failure
42
*/
43
int
av_file_map
(
const
char
*filename,
uint8_t
**bufptr,
size_t
*
size
,
44
int
log_offset,
void
*log_ctx);
45
46
/**
47
* Unmap or free the buffer bufptr created by av_file_map().
48
*
49
* @param size size in bytes of bufptr, must be the same as returned
50
* by av_file_map()
51
*/
52
void
av_file_unmap
(
uint8_t
*bufptr,
size_t
size
);
53
54
/**
55
* Wrapper to work around the lack of mkstemp() on mingw.
56
* Also, tries to create file in /tmp first, if possible.
57
* *prefix can be a character constant; *filename will be allocated internally.
58
* @return file descriptor of opened file (or -1 on error)
59
* and opened file name in **filename.
60
* @note On very old libcs it is necessary to set a secure umask before
61
* calling this, av_tempfile() can't call umask itself as it is used in
62
* libraries and could interfere with the calling application.
63
*/
64
int
av_tempfile
(
const
char
*prefix,
char
**filename,
int
log_offset,
void
*log_ctx);
65
66
#endif
/* AVUTIL_FILE_H */
Generated on Sun Sep 14 2014 18:56:16 for FFmpeg by
1.8.2