[packages/obs-studio] - add missing BR and more formatting fixes for x32
baggins
baggins at pld-linux.org
Thu Dec 26 23:36:04 CET 2024
commit e87d0fcb8856fb08062e9d5b96f129a803446911
Author: Jan Rękorajski <baggins at pld-linux.org>
Date: Fri Dec 27 00:35:37 2024 +0100
- add missing BR and more formatting fixes for x32
obs-studio.spec | 1 +
x32.patch | 181 +++++++++++++++++++++++++++++++++++++++++++++++++++++++-
2 files changed, 181 insertions(+), 1 deletion(-)
---
diff --git a/obs-studio.spec b/obs-studio.spec
index a5cac5e..8db3772 100644
--- a/obs-studio.spec
+++ b/obs-studio.spec
@@ -54,6 +54,7 @@ BuildRequires: libxcb-devel
BuildRequires: luajit-devel
%endif
BuildRequires: mbedtls-devel
+BuildRequires: nv-codec-headers
BuildRequires: pciutils-devel
BuildRequires: pipewire-devel >= 0.3.33
BuildRequires: pkgconfig
diff --git a/x32.patch b/x32.patch
index 75f70b1..43a5e96 100644
--- a/x32.patch
+++ b/x32.patch
@@ -5,10 +5,189 @@
}
+#if defined(__x86_64__) && defined(__ILP32__)
-+ blog(LOG_DEBUG, "%s: ts: %0al6ld buf id #%d, flags 0x%08X, seq #%d, len %d, used %d", data->device_id,
++ blog(LOG_DEBUG, "%s: ts: %06lld buf id #%d, flags 0x%08X, seq #%d, len %d, used %d", data->device_id,
+#else
blog(LOG_DEBUG, "%s: ts: %06ld buf id #%d, flags 0x%08X, seq #%d, len %d, used %d", data->device_id,
+#endif
buf.timestamp.tv_usec, buf.index, buf.flags, buf.sequence, buf.length, buf.bytesused);
out.timestamp = timeval2ns(buf.timestamp);
+--- obs-studio-31.0.0/libobs/obs-output.c.orig 2024-12-26 23:35:00.153332094 +0100
++++ obs-studio-31.0.0/libobs/obs-output.c 2024-12-26 23:36:56.276665465 +0100
+@@ -1494,7 +1494,11 @@
+
+ struct caption_track_data *ctrack = output->caption_tracks[out->track_idx];
+ if (!ctrack) {
++#if defined(__x86_64__) && defined(__ILP32__)
++ blog(LOG_DEBUG, "Caption track for index: %u has not been initialized", out->track_idx);
++#else
+ blog(LOG_DEBUG, "Caption track for index: %lu has not been initialized", out->track_idx);
++#endif
+ return false;
+ }
+
+@@ -1702,12 +1706,20 @@
+ }
+ }
+ if (found_ept == false) {
++#if defined(__x86_64__) && defined(__ILP32__)
++ blog(LOG_DEBUG, "%s: Track %u encoder packet timing for PTS%" PRId64 " not found.",
++#else
+ blog(LOG_DEBUG, "%s: Track %lu encoder packet timing for PTS%" PRId64 " not found.",
++#endif
+ __FUNCTION__, out.track_idx, out.pts);
+ }
+ } else {
+ // encoder_packet_times should not be empty; log if so.
++#if defined(__x86_64__) && defined(__ILP32__)
++ blog(LOG_DEBUG, "%s: Track %u encoder packet timing array empty.", __FUNCTION__,
++#else
+ blog(LOG_DEBUG, "%s: Track %lu encoder packet timing array empty.", __FUNCTION__,
++#endif
+ out.track_idx);
+ }
+ }
+--- obs-studio-31.0.0/plugins/obs-nvenc/nvenc.c.orig 2024-12-26 23:55:28.883332170 +0100
++++ obs-studio-31.0.0/plugins/obs-nvenc/nvenc.c 2024-12-26 23:59:49.099998914 +0100
+@@ -378,9 +378,17 @@
+ if (vbr)
+ dstr_catf(&log, "\tmax_bitrate: %d\n", max_bitrate);
+ if (cqp)
++#if defined(__x86_64__) && defined(__ILP32__)
++ dstr_catf(&log, "\tcqp: %lld\n", enc->props.cqp);
++#else
+ dstr_catf(&log, "\tcqp: %ld\n", enc->props.cqp);
++#endif
+ if (cqvbr) {
++#if defined(__x86_64__) && defined(__ILP32__)
++ dstr_catf(&log, "\tcq: %lld\n", enc->props.target_quality);
++#else
+ dstr_catf(&log, "\tcq: %ld\n", enc->props.target_quality);
++#endif
+ }
+
+ dstr_catf(&log, "\tkeyint: %d\n", gop_size);
+@@ -390,13 +398,22 @@
+ dstr_catf(&log, "\tprofile: %s\n", enc->props.profile);
+ dstr_catf(&log, "\twidth: %d\n", enc->cx);
+ dstr_catf(&log, "\theight: %d\n", enc->cy);
++#if defined(__x86_64__) && defined(__ILP32__)
++ dstr_catf(&log, "\tb-frames: %lld\n", enc->props.bf);
++ dstr_catf(&log, "\tb-ref-mode: %lld\n", enc->props.bframe_ref_mode);
++#else
+ dstr_catf(&log, "\tb-frames: %ld\n", enc->props.bf);
+ dstr_catf(&log, "\tb-ref-mode: %ld\n", enc->props.bframe_ref_mode);
++#endif
+ dstr_catf(&log, "\tlookahead: %s (%d frames)\n", lookahead ? "true" : "false", rc_lookahead);
+ dstr_catf(&log, "\taq: %s\n", enc->props.adaptive_quantization ? "true" : "false");
+
+ if (enc->props.split_encode) {
++#if defined(__x86_64__) && defined(__ILP32__)
++ dstr_catf(&log, "\tsplit encode: %lld\n", enc->props.split_encode);
++#else
+ dstr_catf(&log, "\tsplit encode: %ld\n", enc->props.split_encode);
++#endif
+ }
+ if (enc->props.opts.count)
+ dstr_catf(&log, "\tuser opts: %s\n", enc->props.opts_str);
+--- obs-studio-31.0.0/plugins/obs-qsv11/common_utils_linux.cpp.orig 2024-12-07 00:21:55.000000000 +0100
++++ obs-studio-31.0.0/plugins/obs-qsv11/common_utils_linux.cpp 2024-12-27 00:01:45.876665615 +0100
+@@ -509,7 +509,11 @@
+ obs_enter_graphics();
+ uint32_t gs_count = gs_get_adapter_count();
+ if (*adapter_count < gs_count) {
++#if defined(__x86_64__) && defined(__ILP32__)
++ blog(LOG_WARNING, "Too many video adapters: %d < %d", *adapter_count, gs_count);
++#else
+ blog(LOG_WARNING, "Too many video adapters: %ld < %d", *adapter_count, gs_count);
++#endif
+ obs_leave_graphics();
+ return;
+ }
+--- obs-studio-31.0.0/UI/obs-app-theming.cpp.orig 2024-12-27 00:19:42.779999070 +0100
++++ obs-studio-31.0.0/UI/obs-app-theming.cpp 2024-12-27 00:24:51.099999085 +0100
+@@ -555,7 +555,11 @@
+
+ QStringList args = var.value.toStringList();
+ if (args.length() != 3) {
++#if defined(__x86_64__) && defined(__ILP32__)
++ blog(LOG_ERROR, "calc() had invalid number of arguments: %d (%s)", args.length(),
++#else
+ blog(LOG_ERROR, "calc() had invalid number of arguments: %lld (%s)", args.length(),
++#endif
+ QT_TO_UTF8(args.join(", ")));
+ return "'Invalid expression'";
+ }
+--- obs-studio-31.0.0/shared/bpm/bpm.c.org 2024-12-27 00:27:44.626665761 +0100
++++ obs-studio-31.0.0/shared/bpm/bpm.c 2024-12-27 00:13:58.196665720 +0100
+@@ -9,7 +9,11 @@
+ */
+ memset(&m_time->rfc3339_str, 0, sizeof(m_time->rfc3339_str));
+ strftime(m_time->rfc3339_str, sizeof(m_time->rfc3339_str), "%Y-%m-%dT%T", gmtime(&m_time->tspec.tv_sec));
++#if defined(__x86_64__) && defined(__ILP32__)
++ sprintf(m_time->rfc3339_str + strlen(m_time->rfc3339_str), ".%03lldZ", m_time->tspec.tv_nsec / 1000000);
++#else
+ sprintf(m_time->rfc3339_str + strlen(m_time->rfc3339_str), ".%03ldZ", m_time->tspec.tv_nsec / 1000000);
++#endif
+ m_time->valid = true;
+ }
+
+@@ -17,7 +21,11 @@
+ const struct encoder_packet_time *ept, struct metrics_data *m_track)
+ {
+ if (!output || !pkt || !ept || !m_track) {
++#if defined(__x86_64__) && defined(__ILP32__)
++ blog(LOG_DEBUG, "%s: Null arguments for track %u", __FUNCTION__, pkt->track_idx);
++#else
+ blog(LOG_DEBUG, "%s: Null arguments for track %lu", __FUNCTION__, pkt->track_idx);
++#endif
+ return false;
+ }
+
+@@ -118,7 +126,11 @@
+ * with "--verbose" and "--unfiltered_log".
+ */
+ blog(LOG_DEBUG,
++#if defined(__x86_64__) && defined(__ILP32__)
++ "BPM: %s, trk %u: [CTS|FER-CTS|FERC-FER|PIR-CTS]:[%" PRIu64 " ms|%" PRIu64 " ms|%" PRIu64 " us|%" PRIu64
++#else
+ "BPM: %s, trk %lu: [CTS|FER-CTS|FERC-FER|PIR-CTS]:[%" PRIu64 " ms|%" PRIu64 " ms|%" PRIu64 " us|%" PRIu64
++#endif
+ " ms], [dts|pts]:[%" PRId64 "|%" PRId64 "], S[R:O:D:L],R[I:S:O]:%d:%d:%d:%d:%d:%d:%d",
+ obs_encoder_get_name(pkt->encoder), pkt->track_idx, ept->cts / 1000000, (ept->fer - ept->cts) / 1000000,
+ (ept->ferc - ept->fer) / 1000, (ept->pir - ept->cts) / 1000000, pkt->dts, pkt->pts,
+@@ -323,14 +335,22 @@
+ bool av1 = false;
+
+ if (!m_track) {
++#if defined(__x86_64__) && defined(__ILP32__)
++ blog(LOG_DEBUG, "Metrics track for index: %u had not be initialized", out->track_idx);
++#else
+ blog(LOG_DEBUG, "Metrics track for index: %lu had not be initialized", out->track_idx);
++#endif
+ return false;
+ }
+
+ // Update the metrics for this track
+ if (!update_metrics(output, out, ept, m_track)) {
+ // Something went wrong; log it and return
++#if defined(__x86_64__) && defined(__ILP32__)
++ blog(LOG_DEBUG, "update_metrics() for track index: %u failed", out->track_idx);
++#else
+ blog(LOG_DEBUG, "update_metrics() for track index: %lu failed", out->track_idx);
++#endif
+ return false;
+ }
+
+@@ -569,7 +589,11 @@
+ if (pkt->type == OBS_ENCODER_VIDEO && pkt->keyframe) {
+ /* Video packet must have pkt_timing supplied for BPM */
+ if (!pkt_time) {
++#if defined(__x86_64__) && defined(__ILP32__)
++ blog(LOG_DEBUG, "%s: Packet timing missing for track %d, PTS %" PRId64, __FUNCTION__,
++#else
+ blog(LOG_DEBUG, "%s: Packet timing missing for track %ld, PTS %" PRId64, __FUNCTION__,
++#endif
+ pkt->track_idx, pkt->pts);
+ return;
+ }
================================================================
---- gitweb:
http://git.pld-linux.org/gitweb.cgi/packages/obs-studio.git/commitdiff/e87d0fcb8856fb08062e9d5b96f129a803446911
More information about the pld-cvs-commit
mailing list