47 Commits
Author SHA1 Message Date
McSchneidar cf2fa796e2 .NET10 Migration (#946)
Runtime and build
- Move all projects to .NET 10 with SDK-style project files and a shared
  Directory.Build.props (WIN/LINUX, x86/x64 defines)
- Load managed and unmanaged dependencies from libs/managed and
  libs/unmanaged through assembly and native library resolvers
- Compile party modes with Roslyn instead of CodeDom
- Update AppVeyor to the .NET 10 SDK and dotnet test
- Download the FFmpeg and gstreamer runtimes from the dependencies
  repository during the build
- Remove the VC++ 2015-2022 runtime check, no dependency needs it anymore

Graphics and windowing
- Replace the Direct3D 9 renderer with Direct3D 11 (Vortice)
- Pace Direct3D 11 frames with a frame latency waitable swap chain
- Move window, input and message boxes to SDL3
- Replace System.Drawing with SkiaSharp and WinForms with SDL3 and a
  software renderer

Video and audio
- Replace Acinerella with FFmpeg 8.1.3 (FFmpeg.AutoGen)
- Add hardware accelerated video decoding (D3D11VA, DXVA2, VideoToolbox,
  VAAPI, VDPAU) with software fallback
- Convert YUV video frames to RGB on the GPU in Direct3D 11 and OpenGL
- Add the video options HardwareDecoding, GpuColorConversion,
  DecoderThreads and VideoDownscaleResolution
- Update OpenAL to OpenTK 4 and NAudio recording to WasapiRecorder

Fixes
- Fix the song preview start and shorten the reporter buttons
- Fix a crash when opening the highscore without a selected song
- Use the options slide highlight in the party mode screens to avoid
  brightness flicker on VRR displays
- Disable GameInput in the x86 build, SDL3 crashes in GameInputCreate
  on 32-bit systems with the GameInput runtime installed
- Fix a truncation warning in PitchTracker
2026-11-02 08:11:20 +01:00
McSchneidarandFlorian Ostertag 336d08040e New Webserver and WebApp (#942)
* Replace the WCF webserver with an ASP.NET Core webserver (VocaluxeWeb)

- New project VocaluxeWeb: ASP.NET Core 2.3 (Kestrel) on .NET Framework 4.8.1, HTTP or HTTPS
  with a self-signed certificate, REST API (/api/v1) with Swagger, live events (Server-Sent Events)
- Access to the game only through IVocaluxeRemote; requests run on the main thread once per frame
- Sessions with roles (guest, player, admin) and configurable permissions, PINs hashed with PBKDF2
- Queue as a playlist with requesters and singers, fair order (one song per person and round)
- Admin: settings, server status, logged-in devices, activate/deactivate and delete profiles
- Profile pictures: own photo or one of the Vocaluxe avatars
- Game: WebApp queue screen (song options, playlist group) to start the next song with the chosen
  singers, return to it after singing, warning when the webserver is off, remote keyboard
- Old WCF server, WebserverInitalConfig and URL reservations removed; libraries moved to libs/managed
- Unit tests for PIN hashing, settings and permissions, queue order and device names
- AppVeyor: Visual Studio 2022 image and Node.js 24 (the build compiles the WebApp)
- Documentation in VocaluxeWeb/README.md

* New WebApp (Vue 3, TypeScript, Vite) replacing the old jQuery Mobile website

- Login with profile and PIN, create profiles
- Songs with search, filters, sorting and 30 second previews
- Queue: add songs with game mode, audio and singers, edit, reorder, start in the game
- Playlists: create, edit, add to the queue
- Now playing with live updates, remote control and keyboard
- Players: own profile with picture (photo or Vocaluxe avatar), roles for admins
- Admin settings: permissions, server status, devices, profiles
- Help page, responsive layout for phones, tablets and desktops, light and dark mode
- Texts in WebApp/src/locales/en.json, translated with Transifex
- Old website and PhoneGap config removed

---------

Co-authored-by: Florian Ostertag <flokuep@users.noreply.github.com>
2026-10-26 05:40:11 +01:00
Florian Ostertag 8ad55d391b Update appveyor.yml 2024-01-08 20:53:06 +01:00
Florian OstertagandFlorian Ostertag 3f656e6870 Fix nightly build (#632)
* Bump JDK version

* Fix: Use sonar.token instead of deprecated login

* Test if sonar has a problem with doctype

* Exclude website-folder from sonar scan

* Fix: Replace another sonar.login

* Exclude website-folder also on develop-build

---------

Co-authored-by: Florian Ostertag <git@florian-ostertag.de>
2023-11-23 17:17:01 +01:00
Florian OstertagandFlorian Ostertag 05064b1904 Fix CI issues (#631)
* Bump JDK version

* Fix: Use sonar.token instead of deprecated login

* Test if sonar has a problem with doctype

* Exclude website-folder from sonar scan

* Fix: Replace another sonar.login

---------

Co-authored-by: Florian Ostertag <git@florian-ostertag.de>
2023-11-23 17:03:45 +01:00
lukeIam 79464db984 update git tokens 2022-01-16 15:31:09 +01:00
lukeIam 9aa59a0d63 Merge remote-tracking branch 'remotes/upstream/develop' into appveyorNewImage 2020-09-13 10:55:38 +02:00
lukeIam 9df0bf70ad set java home to jdk11 2020-09-13 10:54:28 +02:00
lukeIam 45fffe429a Update build image (and vs to 2019) to have Java 11 in the image available 2020-09-13 10:42:11 +02:00
lukeIam cb916defaf Fix: github deployments use the old and invalid token 2020-01-11 19:35:44 +01:00
lukeIam 964336abcc Fix: Token of VocaluxeBuildBot for github access was revoked due to inactivity 2020-01-11 10:43:10 +01:00
lukeIam de258bebb5 Fix: x64 build is failing as the sonarcloud plugin has a problem with d:sonar.organization 2020-01-10 17:16:14 +01:00
lukeIam 7b9a7298a2 Changes to work with Vocaluxe/Vocaluxe 2018-05-03 20:36:42 +02:00
lukeIam a8aec3ac91 Revert "Change main branch to sonarcloud for testing"
This reverts commit 60d6336366.
2018-05-03 20:23:42 +02:00
lukeIam 60d6336366 Change main branch to sonarcloud for testing 2018-05-01 15:46:41 +02:00
lukeIam 0d69b5ee62 Use OpenCover to generate coverage statistics for SonarSloud 2018-05-01 15:20:42 +02:00
lukeIam 2748148a1d Submit test result to sonarcloud 2018-05-01 13:24:22 +02:00
lukeIam 36a836d95b Try to get PR check running 2018-05-01 12:40:18 +02:00
lukeIam 639c29a619 Removed sonarqube preview setting for pr 2018-04-30 22:46:11 +02:00
lukeIam 41526752c4 Changed to SonarScanner.MSBuild.exe as SonarQube.Scanner.MSBuild.exe is deprecated 2018-04-30 21:50:41 +02:00
lukeIam 48dfcb717e Limit SonarQube analysis to develop branch and PRs 2018-04-30 21:09:09 +02:00
lukeIam 5c2bc2bd1b Use prefix '/v:' instead injecting 'sonar.projectVersion' property 2018-04-30 19:36:16 +02:00
lukeIam 71126989a7 SonarQube analysis only for x64 builds (as SonarCloud does not support multiple builds per version) 2018-04-30 19:27:00 +02:00
lukeIam 14ad783c8f Publish version number to sonarcloud 2018-04-30 19:15:50 +02:00
lukeIam 52ac408bbd Add SonarCloud analysis to the build pipeline (first test) 2018-04-30 18:00:39 +02:00
lukeIam efc17c2cdb Checkout windows style line endings in appveyor builds. 2018-03-23 15:32:30 +01:00
lukeIam a0d57da2f4 Enable tests in appveyor builds 2018-03-23 15:19:06 +01:00
lukeIam 20f1f98e22 Fix: runGitLink.ps1 not found 2017-12-22 17:03:18 +01:00
lukeIam 58cab6e627 Apply gitlink only to files in Output 2017-12-22 16:54:43 +01:00
lukeIam 259447fdc1 Add GitLink to the build pipeline 2017-12-22 14:03:39 +01:00
lukeIam a2d42e98a5 Mod: Make Genius theme videos downloadable (and download them in appveyor builds) 2017-09-18 17:48:27 +02:00
lukeIam 7594ea6bad Fixed: $(APPVEYOR_REPO_COMMIT) tag is missing in some releases 2017-09-02 16:40:28 +02:00
lukeIam bcc79b77d8 Modified pre-release tagging: true for nightly and tags containing beta, false for all others (normal releases). 2017-08-14 18:00:58 +02:00
lukeIam 90d4b35741 Minimized the the release recreation race condition by writing the current sha to the comment section. 2017-08-14 17:38:01 +02:00
lukeIam b33fe92e8a Do an empty commit to gh-pages branch after publishing artifacts to trigger a git hub pages build (fixes #277). 2017-08-14 17:06:45 +02:00
lukeIam 6b89fdf8bb -Mod: add ambient theme videos to all releases (closes #237) 2016-12-10 18:36:16 +01:00
lukeIam 561dadb67a Windows/Appveyor CI build improvements
-Fix: Nightly tag is moved even if the build fails (fixes #171)
-Mod: Improved log messages
-Add: Adjustments to allow forks to run appveyor.yml on their instances
-Add: Custom names for custom builds
2016-09-09 21:07:45 +02:00
lukeIam 873619ccf8 Changed options for building Vocaluxe/Vocaluxe 2015-12-06 17:12:25 +01:00
lukeIam a50f026f8e Fix: environment variable scope problem 2015-12-06 14:09:55 +01:00
lukeIam d1b0431964 Fix: deployment does not work under some circumstances 2015-12-06 14:09:55 +01:00
lukeIam 0966cb08d0 Made release description consistent 2015-12-06 13:48:17 +01:00
lukeIam 11dbef6f37 Fixed artifact issue 2015-12-06 13:48:16 +01:00
lukeIam 475a074c9e Small deployment changes 2015-12-06 13:48:16 +01:00
lukeIam 76bc9e93cb Working on release deployment 2015-12-06 13:48:16 +01:00
lukeIam ced828c401 Appveyor: add prepareDeploy.ps1 and gitDescribe.ps1
which is needed to use GitHub API to correctly tag automatic
builds, because git-describe doesn't work on shallow clones
2015-12-06 13:42:29 +01:00
lukeIam 86ad2dc09f Appveyor: add PushArtifact and -DisableParallelProcessing 2015-12-06 13:40:41 +01:00
lukeIam 7b6670e893 Appveyor: add appveyor.yml 2015-12-06 13:39:14 +01:00