Here is an update to corsixth 0.66.

Index: Makefile
===================================================================
RCS file: /home/cvs/ports/games/corsixth/Makefile,v
retrieving revision 1.14
diff -u -p -u -p -r1.14 Makefile
--- Makefile    24 Apr 2023 11:40:39 -0000      1.14
+++ Makefile    11 May 2023 04:10:30 -0000
@@ -1,10 +1,9 @@
 ONLY_FOR_ARCHS =       ${CXX11_ARCHS}
 
-V =            0.65.1
+V =            0.66
 COMMENT =      open source clone of Theme Hospital
 PKGNAME =      corsixth-${V}
 CATEGORIES =   games x11
-REVISION =     0
 
 GH_ACCOUNT =   CorsixTH
 GH_PROJECT =   CorsixTH
Index: distinfo
===================================================================
RCS file: /home/cvs/ports/games/corsixth/distinfo,v
retrieving revision 1.7
diff -u -p -u -p -r1.7 distinfo
--- distinfo    22 Jul 2021 20:25:14 -0000      1.7
+++ distinfo    11 May 2023 04:10:39 -0000
@@ -1,2 +1,2 @@
-SHA256 (CorsixTH-0.65.1.tar.gz) = uKFQM3H6DA89B9Ozmj3idpuO0lkj0NkxtwdbyI4/UI8=
-SIZE (CorsixTH-0.65.1.tar.gz) = 4163922
+SHA256 (CorsixTH-0.66.tar.gz) = n4f/ACQFUBsSeYpxW2kUlndaT5cnGI7roWcUOBaZKg8=
+SIZE (CorsixTH-0.66.tar.gz) = 4117046
Index: patches/patch-CorsixTH_Lua_app_lua
===================================================================
RCS file: /home/cvs/ports/games/corsixth/patches/patch-CorsixTH_Lua_app_lua,v
retrieving revision 1.3
diff -u -p -u -p -r1.3 patch-CorsixTH_Lua_app_lua
--- patches/patch-CorsixTH_Lua_app_lua  11 Mar 2022 19:04:13 -0000      1.3
+++ patches/patch-CorsixTH_Lua_app_lua  11 May 2023 04:11:11 -0000
@@ -3,7 +3,7 @@ Do not check or download updates.
 Index: CorsixTH/Lua/app.lua
 --- CorsixTH/Lua/app.lua.orig
 +++ CorsixTH/Lua/app.lua
-@@ -64,7 +64,7 @@ function App:App()
+@@ -65,7 +65,7 @@ function App:App()
    }
    self.strings = {}
    self.savegame_version = SAVEGAME_VERSION
Index: patches/patch-CorsixTH_Src_th_movie_cpp
===================================================================
RCS file: patches/patch-CorsixTH_Src_th_movie_cpp
diff -N patches/patch-CorsixTH_Src_th_movie_cpp
--- /dev/null   1 Jan 1970 00:00:00 -0000
+++ patches/patch-CorsixTH_Src_th_movie_cpp     11 May 2023 04:20:35 -0000
@@ -0,0 +1,44 @@
+Use ffmpeg 5.1 new channel layout api
+
+Index: CorsixTH/Src/th_movie.cpp
+--- CorsixTH/Src/th_movie.cpp.orig
++++ CorsixTH/Src/th_movie.cpp
+@@ -446,9 +446,29 @@ void movie_player::play(int iChannel) {
+       default:
+         std::cerr << "WARN: unsupported channel layout " << mixer_channels
+                   << ". Please report issue.";
+-        target_channel_layout = av_get_default_channel_layout(mixer_channels);
++        target_channel_layout = 0;
+     }
+ 
++#if LIBAVUTIL_VERSION_INT >= AV_VERSION_INT(57, 24, 100) && \
++    LIBSWRESAMPLE_VERSION_INT >= AV_VERSION_INT(4, 5, 100)
++    av_channel_layout_unique_ptr ch_layout(new AVChannelLayout{});
++
++    if (target_channel_layout == 0) {
++      av_channel_layout_default(ch_layout.get(), mixer_channels);
++    } else {
++      av_channel_layout_from_mask(ch_layout.get(), target_channel_layout);
++    }
++
++    swr_alloc_set_opts2(&audio_resample_context, ch_layout.get(),
++                        AV_SAMPLE_FMT_S16, mixer_frequency,
++                        &(audio_codec_context->ch_layout),
++                        audio_codec_context->sample_fmt,
++                        audio_codec_context->sample_rate, 0, nullptr);
++#else
++    if (target_channel_layout == 0) {
++      target_channel_layout = av_get_default_channel_layout(mixer_channels);
++    }
++
+     audio_resample_context = swr_alloc_set_opts(
+         audio_resample_context,
+         static_cast<std::int64_t>(target_channel_layout), AV_SAMPLE_FMT_S16,
+@@ -456,6 +476,7 @@ void movie_player::play(int iChannel) {
+         static_cast<std::int64_t>(audio_codec_context->channel_layout),
+         audio_codec_context->sample_fmt, audio_codec_context->sample_rate, 0,
+         nullptr);
++#endif
+     swr_init(audio_resample_context);
+     empty_audio_chunk.reset(
+         Mix_QuickLoad_RAW(audio_chunk_buffer.data(),
Index: patches/patch-CorsixTH_Src_th_movie_h
===================================================================
RCS file: patches/patch-CorsixTH_Src_th_movie_h
diff -N patches/patch-CorsixTH_Src_th_movie_h
--- /dev/null   1 Jan 1970 00:00:00 -0000
+++ patches/patch-CorsixTH_Src_th_movie_h       11 May 2023 04:20:47 -0000
@@ -0,0 +1,27 @@
+Use ffmpeg 5.1 new channel layout api
+
+Index: CorsixTH/Src/th_movie.h
+--- CorsixTH/Src/th_movie.h.orig
++++ CorsixTH/Src/th_movie.h
+@@ -96,6 +96,21 @@ class mix_chunk_deleter {
+ 
+ using mix_chunk_unique_ptr = std::unique_ptr<Mix_Chunk, mix_chunk_deleter>;
+ 
++#if LIBAVUTIL_VERSION_INT >= AV_VERSION_INT(57, 24, 100)
++//! \brief Functor for deleting AVChannelLayout
++class av_channel_layout_deleter {
++ public:
++  void operator()(AVChannelLayout* c) {
++    av_channel_layout_uninit(c);
++    delete c;
++  }
++};
++
++//! \brief unique_ptr for AVChannelLayout
++using av_channel_layout_unique_ptr =
++    std::unique_ptr<AVChannelLayout, av_channel_layout_deleter>;
++#endif
++
+ //! \brief A picture in movie_picture_buffer
+ //!
+ //! Stores the picture from a frame in the movie from the time that it is

Reply via email to