File: 02_matrix_record.py

package info (click to toggle)
python-pyo 1.0.4-1
  • links: PTS, VCS
  • area: main
  • in suites: bookworm
  • size: 23,692 kB
  • sloc: ansic: 137,415; python: 135,293; makefile: 390; cpp: 242; sh: 163
file content (35 lines) | stat: -rw-r--r-- 780 bytes parent folder | download
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
#!/usr/bin/env python
# encoding: utf-8
from __future__ import print_function

"""
Wave terrain synthesis of a live recording of FM synthesis in the matrix.

"""
from pyo import *

s = Server(duplex=0).boot()

SIZE = 256
mm = NewMatrix(SIZE, SIZE)

fmind = Sine(freq=1.2, mul=2, add=2.5)
fmrat = Sine(freq=1.33, mul=0.25, add=0.5)
aa = FM(carrier=10, ratio=fmrat, index=fmind)
rec = MatrixRec(input=aa, matrix=mm).play()

lfx = Sine(freq=0.07, mul=0.24, add=0.25)
lfy = Sine(freq=0.05, mul=0.2, add=0.25)
x = Sine(freq=[505, 499.9], mul=lfx, add=0.5)
y = Sine(freq=[40.5, 37.6], mul=lfy, add=0.5)
c = MatrixPointer(matrix=mm, x=x, y=y, mul=0.25)
filt = Tone(input=c, freq=3000).out()


def func():
    print("End of recording")


tr = TrigFunc(rec["trig"], func)

s.gui(locals())