Autore Topic: Registratore audio "timeLapse" con Gstreamer1.0 e ingresso Jack audio server  (Letto 451 volte)

Offline allegfede

  • Gran Maestro dei Gamberi
  • *****
  • Post: 738
    • Mostra profilo
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
« Ultima modifica: 06 Settembre 2017, 11:45:56 da allegfede »
se corri, morirai stanco (motto degli sniper)

Offline vuott

  • Moderatore globale
  • Senatore Gambero
  • *****
  • Post: 11.262
  • Ne mors quidem nos iunget
    • Mostra profilo
Premendo il tasto virtuale " RECORD " ottengo l'errore " Cannot set status " alla riga " pl.Play ".
« Chiunque, non ricorrendo lo stato di necessità, nel proprio progetto Gambas fa uso delle istruzioni Shell o Exec, è punito con la sanzione pecuniaria da euro 20,00 a euro 60,00. »

Offline allegfede

  • Gran Maestro dei Gamberi
  • *****
  • Post: 738
    • Mostra profilo
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
se corri, morirai stanco (motto degli sniper)

Offline vuott

  • Moderatore globale
  • Senatore Gambero
  • *****
  • Post: 11.262
  • Ne mors quidem nos iunget
    • Mostra profilo
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.



« Ultima modifica: 07 Settembre 2017, 00:15:39 da vuott »
« Chiunque, non ricorrendo lo stato di necessità, nel proprio progetto Gambas fa uso delle istruzioni Shell o Exec, è punito con la sanzione pecuniaria da euro 20,00 a euro 60,00. »

Offline allegfede

  • Gran Maestro dei Gamberi
  • *****
  • Post: 738
    • Mostra profilo
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.
se corri, morirai stanco (motto degli sniper)

Offline allegfede

  • Gran Maestro dei Gamberi
  • *****
  • Post: 738
    • Mostra profilo
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
se corri, morirai stanco (motto degli sniper)

Offline vuott

  • Moderatore globale
  • Senatore Gambero
  • *****
  • Post: 11.262
  • Ne mors quidem nos iunget
    • Mostra profilo
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.

« Chiunque, non ricorrendo lo stato di necessità, nel proprio progetto Gambas fa uso delle istruzioni Shell o Exec, è punito con la sanzione pecuniaria da euro 20,00 a euro 60,00. »

Offline vuott

  • Moderatore globale
  • Senatore Gambero
  • *****
  • Post: 11.262
  • Ne mors quidem nos iunget
    • Mostra profilo
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
« Chiunque, non ricorrendo lo stato di necessità, nel proprio progetto Gambas fa uso delle istruzioni Shell o Exec, è punito con la sanzione pecuniaria da euro 20,00 a euro 60,00. »