Skip to content

Commit 19d9416

Browse files
kixelatedkixcordclaude
authored
Fix Windows build compatibility issues (#27)
- Add Windows compatibility for strncasecmp by defining it as _strnicmp - Fix integer conversion warnings with explicit static_cast - Resolves compilation errors on MSVC for Windows builds 🤖 Generated with [Claude Code](https://claude.ai/code) Co-authored-by: Luke Curley <luke.curley@discordapp.com> Co-authored-by: Claude <noreply@anthropic.com>
1 parent 0b3873a commit 19d9416

2 files changed

Lines changed: 6 additions & 3 deletions

File tree

src/moq-output.cpp

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -74,7 +74,7 @@ bool MoQOutput::Start()
7474

7575
if (error_code == 0) {
7676
auto elapsed = std::chrono::steady_clock::now() - self->connect_start;
77-
self->connect_time_ms = std::chrono::duration_cast<std::chrono::milliseconds>(elapsed).count();
77+
self->connect_time_ms = static_cast<int>(std::chrono::duration_cast<std::chrono::milliseconds>(elapsed).count());
7878
LOG_INFO("MoQ session established (%d ms): %s", self->connect_time_ms,
7979
self->server_url.c_str());
8080
} else {

src/moq-source.cpp

Lines changed: 5 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -6,6 +6,9 @@
66

77
#include <atomic>
88

9+
#ifdef _WIN32
10+
#define strncasecmp _strnicmp
11+
#endif
912
extern "C" {
1013
#include <libavcodec/avcodec.h>
1114
#include <libavutil/imgutils.h>
@@ -669,7 +672,7 @@ static bool moq_source_init_decoder(struct moq_source *ctx, const struct moq_vid
669672
new_codec_ctx->extradata = (uint8_t *)av_mallocz(config->description_len + AV_INPUT_BUFFER_PADDING_SIZE);
670673
if (new_codec_ctx->extradata) {
671674
memcpy(new_codec_ctx->extradata, config->description, config->description_len);
672-
new_codec_ctx->extradata_size = config->description_len;
675+
new_codec_ctx->extradata_size = static_cast<int>(config->description_len);
673676
}
674677
}
675678

@@ -827,7 +830,7 @@ static void moq_source_decode_frame(struct moq_source *ctx, int32_t frame_id)
827830
}
828831

829832
packet->data = (uint8_t *)frame_data.payload;
830-
packet->size = frame_data.payload_size;
833+
packet->size = static_cast<int>(frame_data.payload_size);
831834
packet->pts = frame_data.timestamp_us / 1000; // Convert to milliseconds
832835
packet->dts = packet->pts;
833836

0 commit comments

Comments
 (0)