update to 1.3.1 [release 1.3.1-1mamba;Sun Nov 17 2024]

This commit is contained in:
Silvan Calarco 2024-11-18 18:22:22 +01:00
parent 4b3537b4ea
commit 2afcc20d52
3 changed files with 63 additions and 45 deletions

View File

@ -1,4 +1,5 @@
# performous
While Performous might be classified as a karaoke program, it is actually much more than that. Instead of just displaying the lyrics, notes are also displayed and the performance is scored based on how well you actually hit the notes. Unlike in most other games in this genre, you will also see the precise pitch that you are singing, so that you can see what you are doing wrong and easily (well, everything is relative) correct your pitch.
While Performous might be classified as a karaoke program, it is actually much more than that.
Instead of just displaying the lyrics, notes are also displayed and the performance is scored based on how well you actually hit the notes. Unlike in most other games in this genre, you will also see the precise pitch that you are singing, so that you can see what you are doing wrong and easily (well, everything is relative) correct your pitch.

View File

@ -0,0 +1,19 @@
diff --git a/game/ffmpeg.cc b/game/ffmpeg.cc
index db204fb8..528902a5 100644
--- a/game/ffmpeg.cc
+++ b/game/ffmpeg.cc
@@ -290,8 +290,12 @@ AudioFFmpeg::AudioFFmpeg(fs::path const& filename, int rate, AudioCb audioCb) :
// setup resampler
m_resampleContext.reset(swr_alloc());
if (!m_resampleContext) throw std::runtime_error("Cannot create resampling context");
- av_opt_set_int(m_resampleContext.get(), "in_channel_layout", m_codecContext->channel_layout ? static_cast<std::int64_t>(m_codecContext->channel_layout) : av_get_default_channel_layout(m_codecContext->channels), 0);
- av_opt_set_int(m_resampleContext.get(), "out_channel_layout", av_get_default_channel_layout(AUDIO_CHANNELS), 0);
+ AVChannelLayout in_layout;
+ AVChannelLayout out_layout;
+ av_channel_layout_default(&in_layout, m_codecContext->ch_layout.nb_channels);
+ av_channel_layout_default(&out_layout, AUDIO_CHANNELS);
+ av_opt_set_int(m_resampleContext.get(), "in_channel_layout", m_codecContext->ch_layout.u.mask ? static_cast<std::int64_t>(m_codecContext->ch_layout.u.mask) : in_layout.nb_channels, 0);
+ av_opt_set_int(m_resampleContext.get(), "out_channel_layout", out_layout.nb_channels, 0);
av_opt_set_int(m_resampleContext.get(), "in_sample_rate", m_codecContext->sample_rate, 0);
av_opt_set_int(m_resampleContext.get(), "out_sample_rate", static_cast<int>(m_rate), 0);
av_opt_set_int(m_resampleContext.get(), "in_sample_fmt", m_codecContext->sample_fmt, 0);

View File

@ -1,86 +1,89 @@
Name: performous
Version: 1.1
Version: 1.3.1
Release: 1mamba
Summary: A free cross-platform band game
Summary: An open-source music and rhythm game
Group: Graphical Desktop/Applications/Games
Vendor: openmamba
Distribution: openmamba
Packager: Ercole 'ercolinux' Carpanetto <ercole69@gmail.com>
Packager: Silvan Calarco <silvan.calarco@mambasoft.it>
URL: http://performous.org
Source: https://github.com/performous/performous.git/%{version}/performous-%{version}.tar.bz2
Patch0: performous-1.3.1-ffmpeg-7.patch
License: GPL
BuildRequires: cmake
BuildRoot: %{_tmppath}/%{name}-%{version}-root
## AUTOBUILDREQ-BEGIN
BuildRequires: glibc-devel
BuildRequires: libavcodec-ffmpeg-devel
BuildRequires: libavformat-ffmpeg-devel
BuildRequires: libavutil-ffmpeg-devel
BuildRequires: libSDL2-devel
BuildRequires: libaubio-devel
BuildRequires: libavcodec-devel
BuildRequires: libavformat-devel
BuildRequires: libavutil-devel
BuildRequires: libboost-devel
BuildRequires: libcairo-devel
BuildRequires: libepoxy-devel
BuildRequires: libfmt-devel
BuildRequires: libfontconfig-devel
BuildRequires: libfreetype-devel
BuildRequires: libgcc
BuildRequires: libgdk-pixbuf-devel
BuildRequires: libGL-devel
BuildRequires: libglew-devel
BuildRequires: libglib-devel
BuildRequires: libglibmm-devel
BuildRequires: libGLU-devel
BuildRequires: libjpeg-devel
BuildRequires: libharfbuzz-devel
BuildRequires: libicu-devel
BuildRequires: libjpeg-turbo
BuildRequires: libopencv-devel
BuildRequires: libpango-devel
BuildRequires: libpng-devel
BuildRequires: libportaudio-devel
BuildRequires: libportmidi-devel
BuildRequires: librsvg-devel
BuildRequires: libSDL-devel
BuildRequires: libsigc++-devel
BuildRequires: libstdc++6-devel
BuildRequires: libswscale-ffmpeg-devel
BuildRequires: libxml2-devel
BuildRequires: libswresample-devel
BuildRequires: libswscale-devel
BuildRequires: libxml++-devel
BuildRequires: libxml2-devel
BuildRequires: libz-devel
BuildRequires: libopencv-devel
## AUTOBUILDREQ-END
BuildRequires: cmake
BuildRequires: libportmidi-devel >= 1:2.0.4-1mamba
Provides: Performous
Obsoletes: Performous
Obsoletes: Performous < 1.3.1
%description
While Performous might be classified as a karaoke program, it is actually much more than that. Instead of just displaying the lyrics, notes are also displayed and the performance is scored based on how well you actually hit the notes. Unlike in most other games in this genre, you will also see the precise pitch that you are singing, so that you can see what you are doing wrong and easily (well, everything is relative) correct your pitch.
While Performous might be classified as a karaoke program, it is actually much more than that.
Instead of just displaying the lyrics, notes are also displayed and the performance is scored based on how well you actually hit the notes. Unlike in most other games in this genre, you will also see the precise pitch that you are singing, so that you can see what you are doing wrong and easily (well, everything is relative) correct your pitch.
%debug_package
%prep
%setup -q
%patch 0 -p1 -b .ffmpeg-7
%build
%cmake -d build
%cmake -d build \
-DCMAKE_CXX_FLAGS="%{optflags} -Wno-error=unused-result"
%make
%install
[ "%{buildroot}" != / ] && rm -rf "%{buildroot}"
%makeinstall -C build
%find_lang %{name} --all-name
install -d -m0755 %{buildroot}%{_mandir}/man6
mv %{buildroot}%{_mandir}/performous.* %{buildroot}%{_mandir}/man6/
%clean
[ "%{buildroot}" != / ] && rm -rf "%{buildroot}"
%files
%files -f %{name}.lang
%defattr(-,root,root)
%{_bindir}/performous
%{_bindir}/ss_adpcm_decode
%{_bindir}/ss_cover_conv
%{_bindir}/ss_extract
%{_bindir}/ss_ipu_conv
#%{_bindir}/ss_ipu_decode
%{_bindir}/ss_pak_extract
%{_bindir}/gh_fsb_decrypt
%{_bindir}/gh_xen_decrypt
%{_bindir}/itg_pck
%{_bindir}/ss_archive_extract
%{_bindir}/ss_chc_decode
#%{_libdir}/performous/libda-1/*.so
%{_datadir}/applications/performous.desktop
%{_datadir}/pixmaps/performous.svg
%dir %{_datadir}/games/performous
%dir %{_datadir}/games/performous/backgrounds
%{_datadir}/games/performous/backgrounds/*.svg
%{_datadir}/games/performous/backgrounds/*
%dir %{_datadir}/games/performous/config
%{_datadir}/games/performous/config/*.xml
%dir %{_datadir}/games/performous/fonts
@ -93,21 +96,16 @@ While Performous might be classified as a karaoke program, it is actually much m
%dir %{_datadir}/games/performous/sounds
%{_datadir}/games/performous/sounds/*.ogg
%dir %{_datadir}/games/performous/themes
%dir %{_datadir}/games/performous/themes/default
%{_datadir}/games/performous/themes/default/*.svg
%{_datadir}/games/performous/themes/default/*.obj
%{_datadir}/games/performous/themes/default/icon.bmp
%{_datadir}/games/performous/themes/default/*.png
%{_datadir}/games/performous/themes/default/*.ogg
%{_datadir}/games/performous/themes/*
%dir %{_datadir}/games/performous/xsl
%{_datadir}/games/performous/xsl/*.xsl
#%{_datadir}/pixmaps/performous.xpm
%{_datadir}/locale/*/LC_MESSAGES/*.mo
%{_mandir}/man1/gh_*.1*
%{_mandir}/man1/ss_*.1*
%{_datadir}/icons/hicolor/scalable/apps/performous.svg
%{_mandir}/man6/performous.6*
%changelog
* Sun Nov 17 2024 Silvan Calarco <silvan.calarco@mambasoft.it> 1.3.1-1mamba
- update to 1.3.1
* Tue Aug 23 2016 Automatic Build System <autodist@mambasoft.it> 1.1-1mamba
- automatic version update by autodist