- Multimedia Programming Using Max-MSP and TouchDesigner
- Patrik Lechner
- 378字
- 2021-08-05 17:21:23
Introducing the synthesizer example
As mentioned before, we'll start with a simple synthesizer. It's a subtractive one with two oscillators, [saw~]
and [rect~]
; a lowpass filter, [lores~]
; and a standard ADSR,[adsr~]
. In this chapter, we won't talk much about the actual synthesis or sound processing. We are going to use the synth to motivate us a bit to learn everything else that's needed around the synth and in many other occasions. While learning these methods, we are going to improve the synth in many ways, and as I said already, it doesn't really matter if it's a synth, a sampler or something else. In fact, I encourage you to build something else and apply the techniques discussed in the upcoming sections to it, rather than working with this synth. One last thing before we dive into it; don't expect this first little synth to sound unbelievably great. Again, we'll come to more sophisticated sound-processing topics in the next chapter.
So let's have a look at where we are going to start off:

So, there are a lot of things we can talk about here. Basically, we have a MIDI input at the top and an audio output at the bottom, and more or less everything in between is our synth. If you open the patch firstSynth_v001
, you might not quite see what is shown here. In fact, you won't even be able to get a sound when clicking on the keyboard. Why? Think about it for a moment. First of all, audio might be switched off. Secondly, the cutoff of the lowpass filter is turned down completely, so only very low frequencies will be able to pass. However, I saved it the way it is shown here, not with all [live.dial]
objects at zero position. Why isn't that saved too?
Initializing values correctly and saving presets are two slightly different things; you can see that if we decide to manage values via presets and so on. We can also initialize them by recalling a preset. However, there are often many values that don't need to be controlled by presets or other storage management techniques but that need to be initialized. Let's first care for initialization, so when we fire up our patcher, we at least get some sound.
- 筆記本電腦使用、維護與故障排除實戰
- 顯卡維修知識精解
- 深入淺出SSD:固態存儲核心技術、原理與實戰
- Getting Started with Qt 5
- Visual Media Processing Using Matlab Beginner's Guide
- CC2530單片機技術與應用
- Rapid BeagleBoard Prototyping with MATLAB and Simulink
- 單片機系統設計與開發教程
- SiFive 經典RISC-V FE310微控制器原理與實踐
- OpenGL Game Development By Example
- Java Deep Learning Cookbook
- Python Machine Learning Blueprints
- 可編程邏輯器件項目開發設計
- 微服務實戰(Dubbox +Spring Boot+Docker)
- The Machine Learning Workshop