13.1 Suono in ingresso

# Suono in ingresso

Un modo semplice (e magari familiare) per accedere ai suoni in ingresso è usare il nostro amico `synth` specificando il synth `:sound_in`:

```
synth :sound_in
```

Questo opererà proprio come qualunque altro synth tipo `synth :dsaw` con l'eccezione che l'audio generato sarà letto direttamente dal primo ingresso della tua scheda audio di sistema. Sui computer portatili, questo è tipicamente il microfono integrato, ma se hai una scheda audio esterna, puoi collegare qualunque sorgente audio al primo ingresso.

## Durata

Una cosa che potresti notare è che, proprio come `synth :dsaw` il synth `:sound_in` dura solo 1 beat in quanto ha un envelope standard. Se vuoi tenerlo aperto un po' più a lungo, cambia le impostazioni ADSR envelope. Ad esempio, quanto segue terrà il synth aperto per 8 beat prima di chiudere la connessione:

```
synth :sound_in, sustain: 8
```

## Aggiungere un effetto

Naturalmente, come per qualunque altro synth normale, puoi aggiungere facilmente effetti tramite il blocco FX:

```
with_fx :reverb do
  with_fx :distortion do
    synth :sound_in, sustain: 8
  end
end
```

Se hai collegato una chitarra al tuo primo ingresso, dovresti riuscire a sentirla con distorsione e riverbero fino a che il synth termina come atteso.

Sei libero di usare il synth `:sound_in` quante volte vuoi contemporaneamente (proprio come faresti con qualunque altro synth). Ad esempio, quanto segue suonerà due synth `:sound_in` simultaneamente - uno con distorsione e uno con riverbero:

```
with_fx :distortion do
  synth :sound_in, sustain: 8
end
with_fx :reverb do  
  synth :sound_in, sustain: 8
end
```

## Concatenazioni multiple

Puoi selezionare quale ingresso audio far suonare attraverso l'opzione `input:`. Puoi anche specificare un ingresso stereo (2 ingressi paralleli) usando il synth `:sound_in_stereo`. Per esempio, se hai una scheda audio con almeno 3 ingressi, puoi trattare i primi 2 come un flusso stereo e aggiungere distorsione, e il terzo come un flusso mono con riverbero aggiunto con il seguente codice:

```
with_fx :distortion do
  synth :sound_in_stereo, sustain: 8, input: 1
end
with_fx :reverb do  
  synth :sound_in, sustain: 8, input: 3
end
```


## Potenziali problemi

Anche se è una tecnica molto utile, ci sono un paio di limitazioni a questo approccio. Innanzitutto funziona solo per una specifica durata (in seguito al fatto che ha un envelopre ADSR) e secondariamente non c'è modo di cambiare l'effetto una volta che il synth è stato aperto. Entrambe queste cose sono tipicamente richieste quando si lavora con sorgenti audio esterne come microfoni, chitarre e sintetizzatori esterni. Daremo tuttavia un'occhiata alle soluzioni di Sonic Pi a questo problema di manipolazione di un (potenzialmente) infinito flusso di ingresso audio `live_audio`.
