Nottolino
23 feb 2022

OBS in crontab

Ora è chiaro che ha un senso registrare una lezione soprattutto quando uno non può essere presente e quando uno non può essere presente è difficile che possa attivare il programma di registrazione. Quindi avrebbe senso trovare un modo per attivare la registrazione al momento in cui c'è una lezione.

Come si può fare?

Il problema ha due differenti sottoproblemi.

  1. Entrare nell'area della lezione e
  2. Far partire la registrazione.

Per il punto 1 non ho trovato ancora una soluzione (per Microsoft Teams). Ad occhio ci vorrebbe uno di quei sistema che guidano programmaticamente le interfacce utente delle applicazioni o forse meglio del browser. Bisognerebbe attendere in attesa su una pagina web e quando un certo blocco compare, attivarlo e entrare nella 'stanza'. Ci penso un po' (nel mio vecchio corso sul webscraping con Python forse c'è qualcosa da cui partire (ad esempio la parte su mechanize, anche se ovviamente la tecnologia oggi è andata molto avnti). Se avete un'idea scrivetemi.

[EDIT: In teams, nella versione via browser, in presenza di un meeting compare un blocco (incluso in un tag con classe item-wrap) con un tag calling-join-button premendo il quale si può entrare nel meeting. C'è dopo uno schermo intermedio di selezione. ]

Se invece si aspetta un evento live già in precedenza programmato (come succede su Youtube o Facebook) allora basta solo lasciare la finestra attiva e possibilmente si attiverà automaticamente al momento giusto, in alternativa va lanciato il programma al momento opportuno, ma in quel caso non potrà essere configurato OBS per registrare da una finestra specifica (che non è ancora aperta), ma potrà benissimo essere configurato lo schermo su cui la finestra (eventualmente a tutto schermo) apparirà.

Per il punto 2 invece si può automatizzare la soluzione con OBS che ho già mostrato.

Prima va installato il pacchetto aggiuntivo obs-websocket in modo da permettere ad OBS di essere guidato dalla rete.

Sarà poi necessario definire una nuova password (sotto uso "topolino") nel pannello Strumenti=/=Impostazioni del server di websocket. Sarà anche necessario configurare il programma in modo che sia pronto per la registrazione, definendo le giuste fonti di registrazione.

20220223-OBS-websocket.png
Figure 1: Impostazione della password per i websocket di OBS

A questo punto bisogna procurarsi l'obs-cli per guidare OBS dalla linea di comando scaricandolo da Gihub.

Ora con i comandi

% obs-cli recording start --password topolino
% obs-cli recording stop --password topolino

Si può rispettivamente attivare e disattivare la registrazione.

Per farlo ad orari precisi si può usare il comando unix at o mettere la programmazione in crontab.

La soluzione è ancora parziale. Se sai fare di meglio dimmelo.

Tags: workflow audio registrazioni automazione
Tutto quello che scrivo in questo blog è solo una traccia delle cose che sto facendo. Non ho purtroppo tempo per scendere nei dettagli o per verificare che tutto funzioni con tutte le possibili combinazioni di hardware, sistemi operativi o applicazioni. Se noti qualche errore, o se hai qualche suggerimento, se hai trovato un modo alternativo per fare le cose, o anche solo per chiedere qualche spiegazione puoi scrivermi a nottolino [ a ] exedre.org. Grazie.
Altri post
Creative Commons License
exedre.org by Emmanuele Somma is licensed under a Creative Commons Attribution-ShareAlike 3.0 Unported License.