diff options
Diffstat (limited to 'emulators/dosbox-x/files/patch-fix-ffmpeg8')
-rw-r--r-- | emulators/dosbox-x/files/patch-fix-ffmpeg8 | 88 |
1 files changed, 0 insertions, 88 deletions
diff --git a/emulators/dosbox-x/files/patch-fix-ffmpeg8 b/emulators/dosbox-x/files/patch-fix-ffmpeg8 deleted file mode 100644 index 7c1782a7b3bd..000000000000 --- a/emulators/dosbox-x/files/patch-fix-ffmpeg8 +++ /dev/null @@ -1,88 +0,0 @@ -Fix build with FFmpeg 8 -https://github.com/joncampbell123/dosbox-x/issues/5803 - ---- src/hardware/hardware.cpp.orig 2025-08-25 08:00:00 UTC -+++ src/hardware/hardware.cpp -@@ -123,20 +123,18 @@ void ffmpeg_closeall() { - ffmpeg_avformat_began = false; - } - avio_close(ffmpeg_fmt_ctx->pb); -- if (ffmpeg_vid_ctx != NULL) avcodec_close(ffmpeg_vid_ctx); -- if (ffmpeg_aud_ctx != NULL) avcodec_close(ffmpeg_aud_ctx); -+ if (ffmpeg_vid_ctx != NULL) avcodec_free_context(&ffmpeg_vid_ctx); -+ if (ffmpeg_aud_ctx != NULL) avcodec_free_context(&ffmpeg_aud_ctx); - avformat_free_context(ffmpeg_fmt_ctx); - ffmpeg_fmt_ctx = NULL; - ffmpeg_vid_ctx = NULL; // NTS: avformat_free_context() freed this for us, don't free again - ffmpeg_aud_ctx = NULL; // NTS: avformat_free_context() freed this for us, don't free again - } - if (ffmpeg_vid_ctx != NULL) { -- avcodec_close(ffmpeg_vid_ctx); - avcodec_free_context(&ffmpeg_vid_ctx); - ffmpeg_vid_ctx = NULL; - } - if (ffmpeg_aud_ctx != NULL) { -- avcodec_close(ffmpeg_aud_ctx); - avcodec_free_context(&ffmpeg_aud_ctx); - ffmpeg_aud_ctx = NULL; - } -@@ -171,7 +169,6 @@ void ffmpeg_audio_frame_send() { - - if (!pkt) E_Exit("Error: Unable to alloc packet"); - -- ffmpeg_aud_frame->key_frame = 1; - ffmpeg_aud_frame->pts = (int64_t)ffmpeg_audio_sample_counter; - r=avcodec_send_frame(ffmpeg_aud_ctx,ffmpeg_aud_frame); - if (r < 0 && r != AVERROR(EAGAIN)) -@@ -426,7 +423,6 @@ void ffmpeg_reopen_video(double fps,const int bpp) { - - void ffmpeg_reopen_video(double fps,const int bpp) { - if (ffmpeg_vid_ctx != NULL) { -- avcodec_close(ffmpeg_vid_ctx); - avcodec_free_context(&ffmpeg_vid_ctx); - ffmpeg_vid_ctx = NULL; - } -@@ -1271,7 +1267,7 @@ skip_shot: - ffmpeg_aud_ctx->sample_rate = (int)capture.video.audiorate; - ffmpeg_aud_ctx->flags = 0; // do not use global headers - ffmpeg_aud_ctx->bit_rate = 320000; -- ffmpeg_aud_ctx->profile = FF_PROFILE_AAC_LOW; -+ // ffmpeg_aud_ctx->profile = FF_PROFILE_AAC_LOW; - - #if LIBAVCODEC_VERSION_INT < AV_VERSION_INT(59,24,100) - ffmpeg_aud_ctx->channels = 2; -@@ -1531,7 +1527,6 @@ skip_shot: - - // encode it - ffmpeg_vid_frame->pts = (int64_t)capture.video.frames; // or else libx264 complains about non-monotonic timestamps -- ffmpeg_vid_frame->key_frame = ((capture.video.frames % 15) == 0)?1:0; - - r=avcodec_send_frame(ffmpeg_vid_ctx,ffmpeg_vid_frame); - if (r < 0 && r != AVERROR(EAGAIN)) -@@ -1768,7 +1763,7 @@ skip_mt_wav: - } - - #pragma pack(push,1) --typedef struct pcap_hdr_struct_t { -+typedef struct { - uint32_t magic_number; /* magic number */ - uint16_t version_major; /* major version number */ - uint16_t version_minor; /* minor version number */ -@@ -1776,14 +1771,14 @@ typedef struct pcap_hdr_struct_t { - uint32_t sigfigs; /* accuracy of timestamps */ - uint32_t snaplen; /* max length of captured packets, in octets */ - uint32_t network; /* data link type */ --}; -+} pcap_hdr_struct_t; - --typedef struct pcaprec_hdr_struct_t { -+typedef struct { - uint32_t ts_sec; /* timestamp seconds */ - uint32_t ts_usec; /* timestamp microseconds */ - uint32_t incl_len; /* number of octets of packet saved in file */ - uint32_t orig_len; /* actual length of packet */ --}; -+} pcaprec_hdr_struct_t; - #pragma pack(pop) - - void Capture_WritePacket(bool /*send*/,const unsigned char *buf,size_t len) { |