Required IDE: Visual Studio 2019
Configurations: all combinations of Debug/Release and Win32/x64
Building requires first obtaining external libraries used, the chart below shows what libraries are required by what programs. Goto Setup instructions for settings up external libraries. Once setup is complete, building normally in Visual Studio should work.
PowerCon. | AsciiArtist | AsciiTetris | AsciiVis | SFMLCust. | |
---|---|---|---|---|---|
FFmpeg | ✓¹ | ✓ | ✓ | ||
FFTW | ✓ | ||||
mpg123 | ✓ | ✓ | |||
SFML | ✓ | ✓² | ✓ |
[1] : (optional) FFmpeg main binary used at runtime for optional feature
[2] : SFML borrowed only for openal32 .dll
and .lib
files
Library dependencies can either be set up manually, or automatically by running setup.ps1
then makelibs.bat
.
To make any changes the dependencies setup (including only using x86 or x64, etc.), open setup.ps1
in a text editor and change the desired settings in the Configuration section near the top. Changes to library output directories will also need to be reflected in makelibs.bat
's Configuration section.
- Search for and open Developer Command Prompt for VS 20xx (replacing xx with your VS year)
cd "<REPOPATH>"
powershell ./setup.ps1
makelibs.bat
These scripts will download all dependencies from existing URLs, unpack them, and then reorganize all folder structures. Running makelibs.bat
will then create essential .lib
files for libraries that don't already supply them.
Follow this chart below for creating the folder structure, and including the architectures/configurations you wish to use. All libraries have links to their downloads provided in the Library dependencies section.
lib/
ffmpeg-3.2.4/
bin/
x86/
(from ffmpeg-3.2.4-win32-shared.zip)x64/
(from ffmpeg-3.2.4-win64-shared.zip)
include/
(from ffmpeg-3.2.4-win32-dev.zip or ffmpeg-3.2.4-win64-dev.zip)lib/
x86/
(from ffmpeg-3.2.4-win32-dev.zip)x64/
(from ffmpeg-3.2.4-win64-dev.zip)
fftw-3.3.5/
x86/
libfftw3f-3.dll
libfftw3f-3.def
libfftw3f-3.lib
(created: LIB /MACHINE:X86 /DEF:libfftw3f-3.def in VS dev console)
x64/
libfftw3f-3.dll
libfftw3f-3.def
libfftw3f-3.lib
(created: LIB /MACHINE:X64 /DEF:libfftw3f-3.def in VS dev console)
fftw3.h
mpg123-1.25.4/
x86/
libmpg123-0.dll
libmpg123-0.def
(renamed: rename libmpg123-0.dll.def libmpg123-0.def)libmpg123-0.lib
(created: LIB /MACHINE:X86 /DEF:libmpg123-0.def in VS dev console)
x64/
libmpg123-0.dll
libmpg123-0.def
(renamed: rename libmpg123-0.dll.def libmpg123-0.def)libmpg123-0.lib
(created: LIB /MACHINE:X64 /DEF:libmpg123-0.def in VS dev console)
fmt123.h
mpg123.h
SFML-2.4.2/
bin/
x86/
(from SFML-2.4.2-windows-vc14-32-bit.zip)x64/
(from SFML-2.4.2-windows-vc14-64-bit.zip)
include/
lib/
x86/
(from SFML-2.4.2-windows-vc14-32-bit.zip)x64/
(from SFML-2.4.2-windows-vc14-64-bit.zip)
- Search for and open Developer Command Prompt for VS 20xx (replacing xx with your VS year)
cd "<REPOPATH>/lib/mpg123-1.25.4/<ARCH>"
(replace ARCH with x86 or x64)rename libmpg123-0.dll.def libmpg123-0.def
lib /MACHINE:<ARCH> /DEF:libmpg123-0.def
(replace ARCH with x86 or x64)cd "<REPOPATH>/lib/fftw-3.3.5/<ARCH>"
(replace ARCH with x86 or x64)lib /MACHINE:<ARCH> /DEF:libfftw3f-3.def
(replace ARCH with x86 or x64)
C library (and tools) for all kinds of audio handling and manipulation.
All links for FFmpeg below are web-archived. Zeranoe FFmpeg Builds, which had been an essential hub for prebuilt Windows binaries, shutdown on September 18th, 2020. Thankfully everything of importance was heavily scraped and web-archived beforehand.
ffmpeg.zeranoe.com will close on Sep 18, 2020, and all builds will be removed. If you're using Zeranoe FFmpeg Builds in your product, please ensure that you have a hosting strategy in place by the 18th. Thank you to everyone who supported the project along the way! (source)
- Builds > Windows x86 > dev | shared | static
- ffmpeg-3.2.4-win32-dev.zip .lib
- ffmpeg-3.2.4-win32-shared.zip .dll
- ffmpeg-3.2.4-win32-static.zip .exe (not required)
- Builds > Windows x64 > dev | shared | static
- ffmpeg-3.2.4-win64-dev.zip .lib
- ffmpeg-3.2.4-win64-shared.zip .dll
- ffmpeg-3.2.4-win64-static.zip .exe (not required)
C library for computing the Discrete Fourier Transform, which is used in audio visualization.
C library for reading MPEG-3 (.mp3
) audio files.
- Windows x86 builds > v1.25.4
- mpg123-1.25.4-x86.zip .dll .def
- mpg123-1.25.4-x86-debug.zip .dll .def
- Windows x64 builds > v1.25.4
- mpg123-1.25.4-x86-64.zip .dll .def
- mpg123-1.25.4-x86-64-debug.zip .dll .def
C++ library for easy use of audio in games and applications. Used for sound effect and music playback.
- Builds > v2.4.2
- SFML-2.4.2-windows-vc14-32-bit.zip .dll .lib
- SFML-2.4.2-windows-vc14-64-bit.zip .dll .lib