-
Notifications
You must be signed in to change notification settings - Fork 1
acrouzet/sidvis
Folders and files
Name | Name | Last commit message | Last commit date | |
---|---|---|---|---|
Repository files navigation
------------------------------------- sidvis ------------------------------------- [ABOUT] sidvis is a batch file script that records .SID music files and outputs .WAV files that are meant to be used to create oscilloscope views. To run the script, first edit "set_sidvis.bat" to input your desired settings, then run "sidvis.bat". It records many 192 kHz sample rate .WAV files, so wait times may be lengthy. [REQUIRED PROGRAMS] The .WAV files are recorded from a modified version of sidplayfp (a SID emulation software) and are then processed with ffmpeg. The .ZIP release contains the sidvis-sidplayfp executable for Windows. The source code of sidvis-sidplayfp is in these repositories: * https://github.com/acrouzet/sidvis-libsidplayfp * https://github.com/acrouzet/sidvis-sidplayfp If you don't have the ffmpeg executable, you can download it here: * https://www.ffmpeg.org/download.html sidvis's .WAV recordings are designed for corrscope, but other oscilloscope view programs may be compatible: * https://github.com/corrscope/corrscope [SIDVIS-SET.BAT] Before using sidvis, you need to provide some settings pointing to required programs and the SID music you'd like to record. Edit sidvis_set.bat in a text editor to provide and/or change the settings used by sidvis. (Non-path options must be lower-case.) set sidplayfp_path=<[path]> * Path to the folder containing the sidvis-sidplayfp executable. * The .ZIP release sets this for you. set ffmpeg_path=<[path]> * Path to the folder containing the ffmpeg executable. set hvsc_path=<[path]> * Path to the folder containing the High Voltage SID Collection. set wav_path=<[path]> * Path to the folder to output the .WAV recordings in. set use_hvsc=<0|1> * Determines how other settings will be interpreted. * 0 = Don't use the HVSC. * 1 = Use the HVSC. set sid_path=<[path]> * Path to the .SID file to record. * If use_hvsc=1, this path must start from your hvsc_path (i.e. this setting will be expanded to the full path "<hvsc_path>\<sid_path>"). set track=<#> * The number of the .SID track (sub-tune) to record. If there's only one track, set this to 1. set record_mode=<n(ormal)|v(olume)|t(est)> * normal = Supports 1SID, 2SID, and 3SID files with automatic detection, but does not isolate the master volume output. * volume = Isolates the master volume output, but only supports 1SID files. * test = Only does one recording with all channels mixed. set pan=<m(ono)|s(tereo)> * Set the stereo configuration of the master audio. * Only works with tracks that use over 2 SID chips. * Stereo options are currently quite limited and may not be ideal, especially for 3 SID chips. set time=<##:##> * Must always be in MM:SS format. * If use_hvsc=0, the total record time. * If use_hvsc=1, the record time to add onto the track length provided by the HVSC. set fadeout_seconds=<#> * The length, in seconds, of a fade-out that can be added to the end of the .WAV recordings. set clock=<n(tsc)|p(al)|a(uto)> * The C64 clock rates to use. * auto = Automatically choose based on the .SID header. set sid_model=<6(581)|8(580)|d(igiboost)|a(uto)> * The SID model to use. * digiboost = 8580 modified to have the ability to use the master volume as a fourth channel like the 6581. * auto = Automatically choose based on the .SID header. set combined_waves=<w(eak)|a(verage)|s(trong)> * Strength of the combined waves. * Weaker combined waves tend to have a thinner timbre. set filter_curve_6581=<0.0-1.0> * Together with filter_range_6581, determines the cutoff response of the 6581's filter. * Ranges from 0.0 (light) to 1.0 (dark). set filter_range_6581=<0.0-1.0> * Together with filter_curve_6581, determines the cutoff response of the 6581's filter. * Ranges from 0.0 (dark) to 1.0 (light). set delay=<#> * C64 power on delay in CPU cycles, ranging from 0 to 8191. * Set this higher if the start of the track is cut off in the .WAV recordings. set fadein_samples=<#> * The length, in number of samples, of a fade-in that can be added to the start of .WAV recordings with all channels enabled. * If record_mode=volume, this is also how many samples of the .WAV recording of the isolated master volume output get skipped when normalizing. * Set this higher if the .WAV recordings are too quiet. set quiet=<#> * Set this lower if you want to see the recording progress and/or the properties of what's being recorded. * 0 = For debug purposes. Can slow things down significantly. * 1 = Echo off. * 2 = Quiet ffmpeg. * 3 = Quiet sidplayfp. set delete_ffmpeg_wavs=<0|1> * For debug purposes. Delete the intermediary files in the ffmpeg_path? * 0 = No * 1 = Yes [.WAV RECORDINGS] The contents of a .WAV recording can be determined by looking at its filename. In order, the filename contains: * The .SID track number. * The .SID filename. * "tw0" or "tw1". "tw1" means particularly difficult-to-trigger waveforms are replaced with simpler ones, and changes to the master volume are disabled. * "nf0" or "nf1". "nf1" means the filter and changes to the master volume are disabled. * A single character representing which channel is enabled/isolated. "v" means the master volume output is isolated, and "a" means all channels are enabled. ----------------------------------------------------------------------------------
About
Script that creates .wav files of separated SID channels for oscilloscope views.
Resources
Stars
Watchers
Forks
Packages 0
No packages published