diff options
author | Zane van Iperen <zane@zanevaniperen.com> | 2021-11-07 15:51:49 +1000 |
---|---|---|
committer | Zane van Iperen <zane@zanevaniperen.com> | 2021-11-07 15:56:45 +1000 |
commit | 1d177d5a70ad0f52a70f68196e69369bf73c8256 (patch) | |
tree | 21ea9a122fefe6eb25ac6f8b0717f73d37b32bd1 /pkgs/games/stepmania | |
parent | 1777da08a3edef2f6afd9f248dab77a71ed0dd6c (diff) | |
download | nixpkgs-1d177d5a70ad0f52a70f68196e69369bf73c8256.tar nixpkgs-1d177d5a70ad0f52a70f68196e69369bf73c8256.tar.gz nixpkgs-1d177d5a70ad0f52a70f68196e69369bf73c8256.tar.bz2 nixpkgs-1d177d5a70ad0f52a70f68196e69369bf73c8256.tar.lz nixpkgs-1d177d5a70ad0f52a70f68196e69369bf73c8256.tar.xz nixpkgs-1d177d5a70ad0f52a70f68196e69369bf73c8256.tar.zst nixpkgs-1d177d5a70ad0f52a70f68196e69369bf73c8256.zip |
stepmania: build with newer ffmpeg
Diffstat (limited to 'pkgs/games/stepmania')
-rw-r--r-- | pkgs/games/stepmania/0001-fix-build-with-ffmpeg-4.patch | 136 | ||||
-rw-r--r-- | pkgs/games/stepmania/default.nix | 4 |
2 files changed, 140 insertions, 0 deletions
diff --git a/pkgs/games/stepmania/0001-fix-build-with-ffmpeg-4.patch b/pkgs/games/stepmania/0001-fix-build-with-ffmpeg-4.patch new file mode 100644 index 00000000000..65686f5546c --- /dev/null +++ b/pkgs/games/stepmania/0001-fix-build-with-ffmpeg-4.patch @@ -0,0 +1,136 @@ +From 33d928c54f4b35f8877cacd1e2c77b68b4dddc06 Mon Sep 17 00:00:00 2001 +From: Zane van Iperen <zane@zanevaniperen.com> +Date: Sun, 7 Nov 2021 15:46:37 +1000 +Subject: [PATCH] fix build with ffmpeg 4 + +--- + src/arch/MovieTexture/MovieTexture_FFMpeg.cpp | 5 +---- + src/arch/MovieTexture/MovieTexture_FFMpeg.h | 22 +++++++++---------- + 2 files changed, 12 insertions(+), 15 deletions(-) + +diff --git a/src/arch/MovieTexture/MovieTexture_FFMpeg.cpp b/src/arch/MovieTexture/MovieTexture_FFMpeg.cpp +index bdf2356..f79fea2 100644 +--- a/src/arch/MovieTexture/MovieTexture_FFMpeg.cpp ++++ b/src/arch/MovieTexture/MovieTexture_FFMpeg.cpp +@@ -445,7 +445,7 @@ RString MovieDecoder_FFMpeg::Open( RString sFile ) + return "Couldn't find any video streams"; + m_pStream = m_fctx->streams[stream_idx]; + +- if( m_pStream->codec->codec_id == avcodec::CODEC_ID_NONE ) ++ if( m_pStream->codec->codec_id == avcodec::AV_CODEC_ID_NONE ) + return ssprintf( "Unsupported codec %08x", m_pStream->codec->codec_tag ); + + RString sError = OpenCodec(); +@@ -474,9 +474,6 @@ RString MovieDecoder_FFMpeg::OpenCodec() + m_pStream->codec->idct_algo = FF_IDCT_AUTO; + m_pStream->codec->error_concealment = 3; + +- if( pCodec->capabilities & CODEC_CAP_DR1 ) +- m_pStream->codec->flags |= CODEC_FLAG_EMU_EDGE; +- + LOG->Trace("Opening codec %s", pCodec->name ); + + int ret = avcodec::avcodec_open2( m_pStream->codec, pCodec, NULL ); +diff --git a/src/arch/MovieTexture/MovieTexture_FFMpeg.h b/src/arch/MovieTexture/MovieTexture_FFMpeg.h +index f4d25ef..32564e5 100644 +--- a/src/arch/MovieTexture/MovieTexture_FFMpeg.h ++++ b/src/arch/MovieTexture/MovieTexture_FFMpeg.h +@@ -64,7 +64,7 @@ private: + + avcodec::AVStream *m_pStream; + avcodec::AVFrame *m_Frame; +- avcodec::PixelFormat m_AVTexfmt; /* PixelFormat of output surface */ ++ avcodec::AVPixelFormat m_AVTexfmt; /* PixelFormat of output surface */ + avcodec::SwsContext *m_swsctx; + + avcodec::AVFormatContext *m_fctx; +@@ -90,7 +90,7 @@ static struct AVPixelFormat_t + { + int bpp; + uint32_t masks[4]; +- avcodec::PixelFormat pf; ++ avcodec::AVPixelFormat pf; + bool bHighColor; + bool bByteSwapOnLittleEndian; + MovieDecoderPixelFormatYCbCr YUV; +@@ -101,7 +101,7 @@ static struct AVPixelFormat_t + 0x00FF0000, + 0x0000FF00, + 0x000000FF }, +- avcodec::PIX_FMT_YUYV422, ++ avcodec::AV_PIX_FMT_YUYV422, + false, /* N/A */ + true, + PixelFormatYCbCr_YUYV422, +@@ -112,7 +112,7 @@ static struct AVPixelFormat_t + 0x00FF0000, + 0xFF000000, + 0x000000FF }, +- avcodec::PIX_FMT_BGRA, ++ avcodec::AV_PIX_FMT_BGRA, + true, + true, + PixelFormatYCbCr_Invalid, +@@ -123,7 +123,7 @@ static struct AVPixelFormat_t + 0x0000FF00, + 0x000000FF, + 0xFF000000 }, +- avcodec::PIX_FMT_ARGB, ++ avcodec::AV_PIX_FMT_ARGB, + true, + true, + PixelFormatYCbCr_Invalid, +@@ -135,7 +135,7 @@ static struct AVPixelFormat_t + 0x0000FF00, + 0x00FF0000, + 0xFF000000 }, +- avcodec::PIX_FMT_ABGR, ++ avcodec::AV_PIX_FMT_ABGR, + true, + true, + PixelFormatYCbCr_Invalid, +@@ -146,7 +146,7 @@ static struct AVPixelFormat_t + 0x00FF0000, + 0x0000FF00, + 0x000000FF }, +- avcodec::PIX_FMT_RGBA, ++ avcodec::AV_PIX_FMT_RGBA, + true, + true, + PixelFormatYCbCr_Invalid, +@@ -157,7 +157,7 @@ static struct AVPixelFormat_t + 0x00FF00, + 0x0000FF, + 0x000000 }, +- avcodec::PIX_FMT_RGB24, ++ avcodec::AV_PIX_FMT_RGB24, + true, + true, + PixelFormatYCbCr_Invalid, +@@ -168,7 +168,7 @@ static struct AVPixelFormat_t + 0x00FF00, + 0xFF0000, + 0x000000 }, +- avcodec::PIX_FMT_BGR24, ++ avcodec::AV_PIX_FMT_BGR24, + true, + true, + PixelFormatYCbCr_Invalid, +@@ -179,12 +179,12 @@ static struct AVPixelFormat_t + 0x03E0, + 0x001F, + 0x0000 }, +- avcodec::PIX_FMT_RGB555, ++ avcodec::AV_PIX_FMT_RGB555, + false, + false, + PixelFormatYCbCr_Invalid, + }, +- { 0, { 0,0,0,0 }, avcodec::PIX_FMT_NB, true, false, PixelFormatYCbCr_Invalid } ++ { 0, { 0,0,0,0 }, avcodec::AV_PIX_FMT_NB, true, false, PixelFormatYCbCr_Invalid } + }; + + #endif +-- +2.31.1 + diff --git a/pkgs/games/stepmania/default.nix b/pkgs/games/stepmania/default.nix index 70e1acb1f34..c7f8f0d7a27 100644 --- a/pkgs/games/stepmania/default.nix +++ b/pkgs/games/stepmania/default.nix @@ -14,6 +14,10 @@ stdenv.mkDerivation rec { sha256 = "0a7y9l7xm510vgnpmj1is7p9m6d6yd0fcaxrjcickz295k5w3rdn"; }; + patches = [ + ./0001-fix-build-with-ffmpeg-4.patch + ]; + nativeBuildInputs = [ cmake nasm ]; buildInputs = [ |