Gambas-it

Gambas3 => Programmazione => Topic aperto da: allegfede - 06 Settembre 2017, 11:42:03

Titolo: Registratore audio "timeLapse" con Gstreamer1.0 e ingresso Jack audio server
Inserito da: allegfede - 06 Settembre 2017, 11:42:03
In allegato il mio progetto per un registratore "di legge" per sorgenti audio gestite da un server jack.
Mi serve per poter registrare un log di quel che si sente/suona/dice in radio.
i file devono essere spezzati ogni ora (allo scoccare dell'ora).

Pero' mi succede una cosa strana. ogni volta che stoppo il recorder e poi lo riavvio, mi crea il nuovo file, col nuovo nome (che comprende l'orario di inizio registrazione), ma mi azzera il contenuto del vecchio .....

ipotesi?

ps: Necessario jack audio server in esecuzione e gstreamer1 con i suoi plug in
Titolo: Re:Registratore audio "timeLapse" con Gstreamer1.0 e ingresso Jack audio server
Inserito da: vuott - 06 Settembre 2017, 12:10:58
Premendo il tasto virtuale " RECORD " ottengo l'errore " Cannot set status " alla riga " pl.Play ".
Titolo: Re:Registratore audio "timeLapse" con Gstreamer1.0 e ingresso Jack audio server
Inserito da: allegfede - 06 Settembre 2017, 12:26:12
jack sta girando?

io ultimamente ho avuto problemi con jack e sto' facendo i test con cadence (kx studio) ed un server jack appoggiato ad una scheda audio dummy.

PS: ho fatto un walkaround copiando il file registrato in altra posizione :D in allegato
Titolo: Re:Registratore audio "timeLapse" con Gstreamer1.0 e ingresso Jack audio server
Inserito da: vuott - 06 Settembre 2017, 23:51:50
Si, scusa, mancava l'avvio di Jack.
Ho scaricato la seconda versione del tuo programma, genera i file ogg ogni qual volta premo il tasto per la registrazione: mi pare che ora vada bene.



Titolo: Re:Registratore audio "timeLapse" con Gstreamer1.0 e ingresso Jack audio server
Inserito da: allegfede - 07 Settembre 2017, 08:28:20
Si ma ho usato un trucco. Ho fatto un file temporaneo nella home dell'utente che uso per registrare l'audio.
Poi quando sto per registrare il successivo, copio il temporaneo nella cartella 'giusta', con il giusto nome.
A questo punto gstreamer resetta nuovamente il file temporaneo e ri-registra.

Ora aggiungo il rec-rotate, ovvero la eliminazione dei file audio più vecchi di TOT giorni.

Dopo allego il progetto.
Titolo: Re:Registratore audio "timeLapse" con Gstreamer1.0 e ingresso Jack audio server
Inserito da: allegfede - 07 Settembre 2017, 13:16:27
sto cercando di passare da VORBIS a OPUS, ma non riesco a capire che valore hanno queste costanti:

enum GstOpusEncBitrateType:

   BITRATE_TYPE_CBR
   
   BITRATE_TYPE_VBR
   
   BITRATE_TYPE_CONSTRAINED_VBR
Titolo: Re:Registratore audio "timeLapse" con Gstreamer1.0 e ingresso Jack audio server
Inserito da: vuott - 07 Settembre 2017, 15:31:54
Si ma ho usato un trucco.
Sì, sostanzialmente è il trucco che ho dovuto utilizzare anche io nei codici esplicativi presentati nella nostra WIKI utilizzando il Componente gb.media.
E' un problema di questo Componente non di GStreamer.

Titolo: Re:Registratore audio "timeLapse" con Gstreamer1.0 e ingresso Jack audio server
Inserito da: vuott - 07 Settembre 2017, 15:42:01
non riesco a capire che valore hanno queste costanti
Essendo un'enumerazione, salvo diversa disposizione, i valori dovrebbero essere i seguenti:

BITRATE_TYPE_CBR = 0
   
BITRATE_TYPE_VBR = 1
   
BITRATE_TYPE_CONSTRAINED_VBR = 2