aboutsummaryrefslogtreecommitdiffhomepage
path: root/src/ffmpeg_utils.c
diff options
context:
space:
mode:
authordec05eba <dec05eba@protonmail.com>2026-08-01 21:14:46 +0200
committerdec05eba <dec05eba@protonmail.com>2026-08-01 21:14:46 +0200
commite8fca67df16025598f6ca7bcc31cfdcfb79feb7d (patch)
tree4e20ecf3f93b5800ef40a1f48aa94c696a075587 /src/ffmpeg_utils.c
parent2b47b9926966b6e81ffda188193eb80653c6f14f (diff)
Move audio/video codec setup from main.cpp into C modules
Adds gsr_recorder_settings, a library-friendly settings struct embedded in args_parser, so the new modules don't depend on the argument parser. The codec functions return errors instead of exiting.
Diffstat (limited to 'src/ffmpeg_utils.c')
-rw-r--r--src/ffmpeg_utils.c12
1 files changed, 12 insertions, 0 deletions
diff --git a/src/ffmpeg_utils.c b/src/ffmpeg_utils.c
new file mode 100644
index 0000000..ce239a1
--- /dev/null
+++ b/src/ffmpeg_utils.c
@@ -0,0 +1,12 @@
+#include "../include/ffmpeg_utils.h"
+
+#include <string.h>
+#include <libavutil/error.h>
+
+static _Thread_local char av_error_buffer[AV_ERROR_MAX_STRING_SIZE];
+
+const char* gsr_av_error_to_string(int err) {
+ if(av_strerror(err, av_error_buffer, sizeof(av_error_buffer)) < 0)
+ strcpy(av_error_buffer, "Unknown error");
+ return av_error_buffer;
+}