History

avformat/avio: Schedule AVIODirContext to become an opaque type

Users can't make anything with its content. Making it opaque might allow us to avoid one level of indirection.

Andreas Rheinhardt committed 4 years ago

Commit d09776d1 parent e4beb305 files · +15 −1Browse files

Unified · Split

5 files
  1. doc/APIchanges +3 −0
  2. libavformat/avio.c +6 −0
  3. libavformat/avio.h +4 −0
  4. libavformat/version.h +1 −1
  5. libavformat/version_major.h +1 −0
doc/APIchanges+3−0
@@ -14,6 +14,9 @@ libavutil: 2021-04-27 · 13 unmodified lines
14 14
15API changes, most recent first:15API changes, most recent first:
16 16
172022-10-03 - xxxxxxxxxx - lavf 59.34.100 - avio.h
18 Make AVIODirContext an opaque type in a future major version bump.
19
172022-09-27 - 0c0a3deb18 - lavu 57.38.100 - cpu.h202022-09-27 - 0c0a3deb18 - lavu 57.38.100 - cpu.h
18 Add CPU flags for RISC-V vector extensions:21 Add CPU flags for RISC-V vector extensions:
19 AV_CPU_FLAG_RVV_I32, AV_CPU_FLAG_RVV_F32, AV_CPU_FLAG_RVV_I64,22 AV_CPU_FLAG_RVV_I32, AV_CPU_FLAG_RVV_F32, AV_CPU_FLAG_RVV_I64,
libavformat/avio.c+6−0
@@ -528,6 +528,12 @@ int ffurl_delete(const char *url) · 527 unmodified lines
528 return ret;528 return ret;
529}529}
530 530
531#if !FF_API_AVIODIRCONTEXT
532struct AVIODirContext {
533 struct URLContext *url_context;
534};
535#endif
536
531int avio_open_dir(AVIODirContext **s, const char *url, AVDictionary **options)537int avio_open_dir(AVIODirContext **s, const char *url, AVDictionary **options)
532{538{
533 URLContext *h = NULL;539 URLContext *h = NULL;
libavformat/avio.h+4−0
@@ -101,9 +101,13 @@ typedef struct AVIODirEntry { · 100 unmodified lines
101 int64_t filemode; /**< Unix file mode, -1 if unknown. */101 int64_t filemode; /**< Unix file mode, -1 if unknown. */
102} AVIODirEntry;102} AVIODirEntry;
103 103
104#if FF_API_AVIODIRCONTEXT
104typedef struct AVIODirContext {105typedef struct AVIODirContext {
105 struct URLContext *url_context;106 struct URLContext *url_context;
106} AVIODirContext;107} AVIODirContext;
108#else
109typedef struct AVIODirContext AVIODirContext;
110#endif
107 111
108/**112/**
109 * Different data types that can be returned via the AVIO113 * Different data types that can be returned via the AVIO
libavformat/version.h+1−1
@@ -31,7 +31,7 @@ · 30 unmodified lines
31 31
32#include "version_major.h"32#include "version_major.h"
33 33
34#define LIBAVFORMAT_VERSION_MINOR 3334#define LIBAVFORMAT_VERSION_MINOR 34
35#define LIBAVFORMAT_VERSION_MICRO 10035#define LIBAVFORMAT_VERSION_MICRO 100
36 36
37#define LIBAVFORMAT_VERSION_INT AV_VERSION_INT(LIBAVFORMAT_VERSION_MAJOR, \37#define LIBAVFORMAT_VERSION_INT AV_VERSION_INT(LIBAVFORMAT_VERSION_MAJOR, \
libavformat/version_major.h+1−0
@@ -47,6 +47,7 @@ · 46 unmodified lines
47#define FF_HLS_TS_OPTIONS (LIBAVFORMAT_VERSION_MAJOR < 60)47#define FF_HLS_TS_OPTIONS (LIBAVFORMAT_VERSION_MAJOR < 60)
48#define FF_API_AVSTREAM_CLASS (LIBAVFORMAT_VERSION_MAJOR > 59)48#define FF_API_AVSTREAM_CLASS (LIBAVFORMAT_VERSION_MAJOR > 59)
49#define FF_API_GET_END_PTS (LIBAVFORMAT_VERSION_MAJOR < 60)49#define FF_API_GET_END_PTS (LIBAVFORMAT_VERSION_MAJOR < 60)
50#define FF_API_AVIODIRCONTEXT (LIBAVFORMAT_VERSION_MAJOR < 60)
50 51
51 52
52#define FF_API_R_FRAME_RATE 153#define FF_API_R_FRAME_RATE 1

Keyboard shortcuts

General

Show keyboard shortcuts
?
Focus the current search
/

Issues and pull requests

Open filters
f

Issues, pull requests and Inbox

Select next item
j↓
Select previous item
k↑
Open selected item
Enter
Dismiss filters or clear selection
Esc

Repository code

Go to file
t