aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorAndreas Rheinhardt <andreas.rheinhardt@outlook.com>2024-03-23 13:10:40 +0100
committerAndreas Rheinhardt <andreas.rheinhardt@outlook.com>2024-03-26 06:31:58 +0100
commite95dd6f53e49325f95ac2243acf3667a6ddf40ac (patch)
tree9492aae92bdf8af7e108972ea6c850089a1f12af
parentebe832640945c531b0ee9b82ae745a11cd9f8e71 (diff)
downloadffmpeg-e95dd6f53e49325f95ac2243acf3667a6ddf40ac.tar.gz
avformat/file: Combine all CONFIG_ANDROID_CONTENT_PROTOCOL blocks
Besides improving readability this also ensures that a developer who has the android content protocol enabled and works on the other parts of the file will not forget to add necessary inclusions just because of (indirect) inclusions from the files included only when said protocol is enabled. Reviewed-by: Matthieu Bouron <matthieu.bouron@gmail.com> Signed-off-by: Andreas Rheinhardt <andreas.rheinhardt@outlook.com>
-rw-r--r--libavformat/file.c36
1 files changed, 15 insertions, 21 deletions
diff --git a/libavformat/file.c b/libavformat/file.c
index 8f3b35c795..182995717a 100644
--- a/libavformat/file.c
+++ b/libavformat/file.c
@@ -40,12 +40,6 @@
#include <stdlib.h>
#include "os_support.h"
#include "url.h"
-#if CONFIG_ANDROID_CONTENT_PROTOCOL
-#include <jni.h>
-#include "libavcodec/jni.h"
-#include "libavcodec/ffjni.c"
-#endif
-
/* Some systems may not have S_ISFIFO */
#ifndef S_ISFIFO
@@ -107,21 +101,6 @@ typedef struct FileContext {
int64_t initial_pos;
} FileContext;
-
-#if CONFIG_ANDROID_CONTENT_PROTOCOL
-static const AVOption android_content_options[] = {
- { "blocksize", "set I/O operation maximum block size", offsetof(FileContext, blocksize), AV_OPT_TYPE_INT, { .i64 = INT_MAX }, 1, INT_MAX, AV_OPT_FLAG_ENCODING_PARAM },
- { NULL }
-};
-
-static const AVClass android_content_class = {
- .class_name = "android_content",
- .item_name = av_default_item_name,
- .option = android_content_options,
- .version = LIBAVUTIL_VERSION_INT,
-};
-#endif
-
static const AVOption file_options[] = {
{ "truncate", "truncate existing files on write", offsetof(FileContext, trunc), AV_OPT_TYPE_BOOL, { .i64 = 1 }, 0, 1, AV_OPT_FLAG_ENCODING_PARAM },
{ "blocksize", "set I/O operation maximum block size", offsetof(FileContext, blocksize), AV_OPT_TYPE_INT, { .i64 = INT_MAX }, 1, INT_MAX, AV_OPT_FLAG_ENCODING_PARAM },
@@ -547,6 +526,9 @@ const URLProtocol ff_fd_protocol = {
#endif /* CONFIG_FD_PROTOCOL */
#if CONFIG_ANDROID_CONTENT_PROTOCOL
+#include <jni.h>
+#include "libavcodec/jni.h"
+#include "libavcodec/ffjni.c"
typedef struct JFields {
jclass uri_class;
@@ -670,6 +652,18 @@ done:
return ret;
}
+static const AVOption android_content_options[] = {
+ { "blocksize", "set I/O operation maximum block size", offsetof(FileContext, blocksize), AV_OPT_TYPE_INT, { .i64 = INT_MAX }, 1, INT_MAX, AV_OPT_FLAG_ENCODING_PARAM },
+ { NULL }
+};
+
+static const AVClass android_content_class = {
+ .class_name = "android_content",
+ .item_name = av_default_item_name,
+ .option = android_content_options,
+ .version = LIBAVUTIL_VERSION_INT,
+};
+
const URLProtocol ff_android_content_protocol = {
.name = "content",
.url_open = android_content_open,