Skip to content

Commit 72c601e

Browse files
committed
avutil/internal: Move avpriv-file API to a header of its own
It is not used by the large majority of files that include lavu/internal.h. Signed-off-by: Andreas Rheinhardt <[email protected]>
1 parent 04b7217 commit 72c601e

32 files changed

+92
-61
lines changed

libavcodec/dvdsubdec.c

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -27,6 +27,7 @@
2727

2828
#include "libavutil/attributes.h"
2929
#include "libavutil/colorspace.h"
30+
#include "libavutil/file_open.h"
3031
#include "libavutil/opt.h"
3132
#include "libavutil/bswap.h"
3233

libavcodec/libxvid.c

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -30,7 +30,7 @@
3030
#include <xvid.h>
3131

3232
#include "libavutil/avassert.h"
33-
#include "libavutil/file.h"
33+
#include "libavutil/file_open.h"
3434
#include "libavutil/internal.h"
3535
#include "libavutil/intreadwrite.h"
3636
#include "libavutil/mathematics.h"

libavdevice/bktr.c

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -25,6 +25,7 @@
2525
*/
2626

2727
#include "libavformat/internal.h"
28+
#include "libavutil/file_open.h"
2829
#include "libavutil/internal.h"
2930
#include "libavutil/log.h"
3031
#include "libavutil/opt.h"

libavdevice/fbdev_common.c

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -26,6 +26,7 @@
2626
#include <stdlib.h>
2727
#include "fbdev_common.h"
2828
#include "libavutil/common.h"
29+
#include "libavutil/file_open.h"
2930
#include "avdevice.h"
3031

3132
struct rgb_pixfmt_map_entry {

libavdevice/fbdev_dec.c

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -34,6 +34,7 @@
3434
#include <time.h>
3535
#include <linux/fb.h>
3636

37+
#include "libavutil/file_open.h"
3738
#include "libavutil/internal.h"
3839
#include "libavutil/log.h"
3940
#include "libavutil/opt.h"

libavdevice/fbdev_enc.c

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -23,6 +23,7 @@
2323
#include <sys/ioctl.h>
2424
#include <sys/mman.h>
2525
#include <linux/fb.h>
26+
#include "libavutil/file_open.h"
2627
#include "libavutil/pixdesc.h"
2728
#include "libavutil/log.h"
2829
#include "libavutil/opt.h"

libavdevice/oss.c

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -30,6 +30,7 @@
3030
#include <sys/ioctl.h>
3131
#include <sys/soundcard.h>
3232

33+
#include "libavutil/file_open.h"
3334
#include "libavutil/log.h"
3435

3536
#include "avdevice.h"

libavfilter/af_arnndn.c

Lines changed: 1 addition & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -31,10 +31,8 @@
3131
* SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
3232
*/
3333

34-
#include <float.h>
35-
3634
#include "libavutil/avassert.h"
37-
#include "libavutil/avstring.h"
35+
#include "libavutil/file_open.h"
3836
#include "libavutil/float_dsp.h"
3937
#include "libavutil/mem_internal.h"
4038
#include "libavutil/opt.h"

libavfilter/af_firequalizer.c

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -19,6 +19,7 @@
1919
*/
2020

2121
#include "libavutil/channel_layout.h"
22+
#include "libavutil/file_open.h"
2223
#include "libavutil/opt.h"
2324
#include "libavutil/eval.h"
2425
#include "libavutil/avassert.h"

libavfilter/opencl.c

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -19,6 +19,7 @@
1919
#include <stdio.h>
2020
#include <string.h>
2121

22+
#include "libavutil/file_open.h"
2223
#include "libavutil/mem.h"
2324
#include "libavutil/pixdesc.h"
2425

libavfilter/vf_curves.c

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -22,12 +22,12 @@
2222
#include "libavutil/bprint.h"
2323
#include "libavutil/eval.h"
2424
#include "libavutil/file.h"
25+
#include "libavutil/file_open.h"
2526
#include "libavutil/intreadwrite.h"
2627
#include "libavutil/avassert.h"
2728
#include "libavutil/pixdesc.h"
2829
#include "avfilter.h"
2930
#include "drawutils.h"
30-
#include "formats.h"
3131
#include "internal.h"
3232
#include "video.h"
3333

libavfilter/vf_deshake.c

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -50,10 +50,10 @@
5050
*/
5151

5252
#include "avfilter.h"
53-
#include "formats.h"
5453
#include "internal.h"
5554
#include "video.h"
5655
#include "libavutil/common.h"
56+
#include "libavutil/file_open.h"
5757
#include "libavutil/mem.h"
5858
#include "libavutil/opt.h"
5959
#include "libavutil/pixdesc.h"

libavfilter/vf_dnn_classify.c

Lines changed: 1 addition & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -21,14 +21,10 @@
2121
* implementing an classification filter using deep learning networks.
2222
*/
2323

24-
#include "libavformat/avio.h"
24+
#include "libavutil/file_open.h"
2525
#include "libavutil/opt.h"
26-
#include "libavutil/pixdesc.h"
27-
#include "libavutil/avassert.h"
28-
#include "libavutil/imgutils.h"
2926
#include "filters.h"
3027
#include "dnn_filter_common.h"
31-
#include "formats.h"
3228
#include "internal.h"
3329
#include "libavutil/time.h"
3430
#include "libavutil/avstring.h"

libavfilter/vf_dnn_detect.c

Lines changed: 1 addition & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -21,14 +21,10 @@
2121
* implementing an object detecting filter using deep learning networks.
2222
*/
2323

24-
#include "libavformat/avio.h"
24+
#include "libavutil/file_open.h"
2525
#include "libavutil/opt.h"
26-
#include "libavutil/pixdesc.h"
27-
#include "libavutil/avassert.h"
28-
#include "libavutil/imgutils.h"
2926
#include "filters.h"
3027
#include "dnn_filter_common.h"
31-
#include "formats.h"
3228
#include "internal.h"
3329
#include "libavutil/time.h"
3430
#include "libavutil/avstring.h"

libavfilter/vf_fieldhint.c

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -19,6 +19,7 @@
1919
*/
2020

2121
#include "libavutil/avassert.h"
22+
#include "libavutil/file_open.h"
2223
#include "libavutil/imgutils.h"
2324
#include "libavutil/internal.h"
2425
#include "libavutil/opt.h"

libavfilter/vf_lut3d.c

Lines changed: 1 addition & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -29,13 +29,11 @@
2929
#include "float.h"
3030

3131
#include "libavutil/opt.h"
32-
#include "libavutil/file.h"
33-
#include "libavutil/intreadwrite.h"
32+
#include "libavutil/file_open.h"
3433
#include "libavutil/intfloat.h"
3534
#include "libavutil/avassert.h"
3635
#include "libavutil/avstring.h"
3736
#include "drawutils.h"
38-
#include "formats.h"
3937
#include "internal.h"
4038
#include "video.h"
4139
#include "lut3d.h"

libavfilter/vf_nnedi.c

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -22,13 +22,13 @@
2222
#include <float.h>
2323

2424
#include "libavutil/common.h"
25+
#include "libavutil/file_open.h"
2526
#include "libavutil/float_dsp.h"
2627
#include "libavutil/imgutils.h"
2728
#include "libavutil/mem_internal.h"
2829
#include "libavutil/opt.h"
2930
#include "libavutil/pixdesc.h"
3031
#include "avfilter.h"
31-
#include "formats.h"
3232
#include "internal.h"
3333
#include "video.h"
3434

libavfilter/vf_paletteuse.c

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -24,6 +24,7 @@
2424
*/
2525

2626
#include "libavutil/bprint.h"
27+
#include "libavutil/file_open.h"
2728
#include "libavutil/internal.h"
2829
#include "libavutil/opt.h"
2930
#include "libavutil/qsort.h"

libavfilter/vf_psnr.c

Lines changed: 1 addition & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -26,15 +26,14 @@
2626
*/
2727

2828
#include "libavutil/avstring.h"
29+
#include "libavutil/file_open.h"
2930
#include "libavutil/opt.h"
3031
#include "libavutil/pixdesc.h"
3132
#include "avfilter.h"
3233
#include "drawutils.h"
33-
#include "formats.h"
3434
#include "framesync.h"
3535
#include "internal.h"
3636
#include "psnr.h"
37-
#include "video.h"
3837

3938
typedef struct PSNRContext {
4039
const AVClass *class;

libavfilter/vf_signature.c

Lines changed: 1 addition & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -24,13 +24,11 @@
2424
* @see http://epubs.surrey.ac.uk/531590/1/MPEG-7%20Video%20Signature%20Author%27s%20Copy.pdf
2525
*/
2626

27-
#include <float.h>
2827
#include "libavcodec/put_bits.h"
2928
#include "libavformat/avformat.h"
3029
#include "libavutil/opt.h"
3130
#include "libavutil/avstring.h"
32-
#include "libavutil/intreadwrite.h"
33-
#include "libavutil/timestamp.h"
31+
#include "libavutil/file_open.h"
3432
#include "avfilter.h"
3533
#include "internal.h"
3634
#include "signature.h"

libavfilter/vf_ssim.c

Lines changed: 1 addition & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -35,15 +35,14 @@
3535
*/
3636

3737
#include "libavutil/avstring.h"
38+
#include "libavutil/file_open.h"
3839
#include "libavutil/opt.h"
3940
#include "libavutil/pixdesc.h"
4041
#include "avfilter.h"
4142
#include "drawutils.h"
42-
#include "formats.h"
4343
#include "framesync.h"
4444
#include "internal.h"
4545
#include "ssim.h"
46-
#include "video.h"
4746

4847
typedef struct SSIMContext {
4948
const AVClass *class;

libavfilter/vf_vidstabdetect.c

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -23,8 +23,9 @@
2323
#include <vid.stab/libvidstab.h>
2424

2525
#include "libavutil/common.h"
26+
#include "libavutil/file_open.h"
2627
#include "libavutil/opt.h"
27-
#include "libavutil/imgutils.h"
28+
#include "libavutil/pixdesc.h"
2829
#include "avfilter.h"
2930
#include "internal.h"
3031

libavfilter/vf_vidstabtransform.c

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -23,8 +23,9 @@
2323
#include <vid.stab/libvidstab.h>
2424

2525
#include "libavutil/common.h"
26+
#include "libavutil/file_open.h"
2627
#include "libavutil/opt.h"
27-
#include "libavutil/imgutils.h"
28+
#include "libavutil/pixdesc.h"
2829
#include "avfilter.h"
2930
#include "internal.h"
3031

libavfilter/vf_vmafmotion.c

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -24,6 +24,7 @@
2424
* Calculate VMAF Motion score.
2525
*/
2626

27+
#include "libavutil/file_open.h"
2728
#include "libavutil/opt.h"
2829
#include "libavutil/pixdesc.h"
2930
#include "avfilter.h"

libavformat/cache.c

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -29,10 +29,10 @@
2929

3030
#include "libavutil/avassert.h"
3131
#include "libavutil/avstring.h"
32-
#include "libavutil/internal.h"
32+
#include "libavutil/file_open.h"
3333
#include "libavutil/opt.h"
3434
#include "libavutil/tree.h"
35-
#include "avformat.h"
35+
#include "avio.h"
3636
#include <fcntl.h>
3737
#if HAVE_IO_H
3838
#include <io.h>

libavformat/file.c

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -22,9 +22,10 @@
2222
#include "config_components.h"
2323

2424
#include "libavutil/avstring.h"
25+
#include "libavutil/file_open.h"
2526
#include "libavutil/internal.h"
2627
#include "libavutil/opt.h"
27-
#include "avformat.h"
28+
#include "avio.h"
2829
#if HAVE_DIRENT_H
2930
#include <dirent.h>
3031
#endif

libavformat/ipfsgateway.c

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -20,6 +20,7 @@
2020
*/
2121

2222
#include "libavutil/avstring.h"
23+
#include "libavutil/file_open.h"
2324
#include "libavutil/getenv_utf8.h"
2425
#include "libavutil/opt.h"
2526
#include <sys/stat.h>

libavutil/file.c

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -18,6 +18,7 @@
1818

1919
#include "config.h"
2020
#include "file.h"
21+
#include "file_open.h"
2122
#include "internal.h"
2223
#include "log.h"
2324
#include "mem.h"

libavutil/file_open.c

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -17,7 +17,8 @@
1717
*/
1818

1919
#include "config.h"
20-
#include "internal.h"
20+
#include "avutil.h"
21+
#include "file_open.h"
2122
#include "mem.h"
2223
#include <stdarg.h>
2324
#include <fcntl.h>

libavutil/file_open.h

Lines changed: 57 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,57 @@
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_OPEN_H
20+
#define AVUTIL_FILE_OPEN_H
21+
22+
#include <stdio.h>
23+
24+
#include "config.h"
25+
#include "attributes.h"
26+
27+
#if HAVE_LIBC_MSVCRT
28+
#define avpriv_fopen_utf8 ff_fopen_utf8
29+
#define avpriv_open ff_open
30+
#define avpriv_tempfile ff_tempfile
31+
#endif
32+
33+
/**
34+
* A wrapper for open() setting O_CLOEXEC.
35+
*/
36+
av_warn_unused_result
37+
int avpriv_open(const char *filename, int flags, ...);
38+
39+
/**
40+
* Open a file using a UTF-8 filename.
41+
*/
42+
FILE *avpriv_fopen_utf8(const char *path, const char *mode);
43+
44+
/**
45+
* Wrapper to work around the lack of mkstemp() on mingw.
46+
* Also, tries to create file in /tmp first, if possible.
47+
* *prefix can be a character constant; *filename will be allocated internally.
48+
* @return file descriptor of opened file (or negative value corresponding to an
49+
* AVERROR code on error)
50+
* and opened file name in **filename.
51+
* @note On very old libcs it is necessary to set a secure umask before
52+
* calling this, av_tempfile() can't call umask itself as it is used in
53+
* libraries and could interfere with the calling application.
54+
*/
55+
int avpriv_tempfile(const char *prefix, char **filename, int log_offset, void *log_ctx);
56+
57+
#endif /* AVUTIL_FILE_OPEN_H */

0 commit comments

Comments
 (0)