@@ -11,14 +11,54 @@ and different from my usual screen capture of FL Studio.
1111
1212![ ] ( ./screenshot.png )
1313
14- ## Planned Features
15-
16- * [x] Load multiple audio tracks
17- * [x] Render waveforms to screen
18- * [x] Load dynamically from JSON
19- * [x] Specify colours and titles for each track
20- * [x] Change display size via config
21- * [x] Render individual frames to PNG
22- * [x] Handle errors properly!!!
23- * [x] Change columns depending on aspect ratio (eg. for vertical video)
24- * [ ] Render entire sequence to MP4
14+ ## Usage
15+
16+ ```
17+ multitrack-visualizer.exe [OPTIONS]
18+
19+ Options:
20+ -s, --song /path/to/song.json JSON config file for all tracks, colours, and audio files
21+ -w, --window /path/to/window.json JSON config file for size and scaling of the output video file
22+ -h, --help Print help
23+ -V, --version Print version
24+ ```
25+
26+ ## JSON Config Format
27+
28+ ### Song.json
29+
30+ * ` channels ` , an array of objects, where:
31+ * ` name ` is the channel name, displayed on screen
32+ * ` file ` is a path name to the audio file, and
33+ * ` colour ` contains the Red, Green, and Blue colour values (0-255).
34+ * ` video_file_out ` is a path name to the video that will be output.
35+
36+ ``` json
37+ {
38+ "channels" : [
39+ {
40+ "name" : " Channel Name" ,
41+ "file" : " /path/to/audio-file.wav" ,
42+ "colour" : [0 , 2 , 255 ]
43+ }
44+ ],
45+ "video_file_out" : " /path/to/output.mp4"
46+ }
47+ ```
48+
49+ ### Window.json
50+
51+ * ` width ` and ` height ` are the base resolution for the video file.
52+ * ` scale ` is how many times the resolution should be scaled (integer).
53+ * For example, the default is 480x270 at a scale of 4, which means the final
54+ output resolution is 1920x1080.
55+ * ` frame_rate ` the frame rate of the output video
56+
57+ ``` json
58+ {
59+ "width" : 480 ,
60+ "height" : 270 ,
61+ "scale" : 4 ,
62+ "frame_rate" : 30
63+ }
64+ ```
0 commit comments