OpenCast Live #0
Puntata pilota di OpenCast Live!
peertube.uno/videos/embed/0d23…
Scarica: Ogg/Vorbis - Mp3 - Mp4
Link alle notizie e agli argomenti:
- gnome.org/news/2020/05/patent-…
- wiki.debian.org/DebianEvents/i…
- https://www.davidrevoy.com/article777/libre-graphic-meeting-online-2020-livestream
- ils.org/linuxday2020
- wikimedia.it/sequestro-del-sit…
- kiwix.org/
- standardebooks.org/
- liberliber.it/benvenuto/
- framablog.org/2020/05/26/our-p…
Abbiamo registrato ognuno a casa propria in ottemperanza alla regolamentazione vigente in materia di contenimento dell'epidemia con:
- jitsi.org/jitsi-meet/
- obsproject.com/
- vari microfoni e ammenicoli vari
Ti sei perso il numero zero di #OpenCast Live? L'abbiamo registrato!
Tra 20 minuti in diretta live ! live.gl-como.it/view.html#gl-o…
Torna OpenCast, questa volta Live!
Dopo anni di silenzio torna OpenCast in versione video e live!
Grazie alla moderna tecnologia, martedì 26 maggio a partire dalle 21:00si potrà seguire in diretta e partecipare via chat!
Si parla di inux, open source, software libero e tecnologia in generale, sempre senza prendersi troppo sul serio.
Venite a trovarci!
live.gl-como.it/view.html#gl-o…

Torna OpenCast in versione Live!
Martedì 26 maggio a partire dalle 21:00 saremo live all'indirizzo live.gl-como.it/view.html#gl-o… , con la possibilità di interagire via chat!
Opencast è il podcast del GL-Como che tratta di open source, software libero e tecnologia in generale.
Fabrix.xm reshared this.
Installare Jitsi
Nell'ultimo articolo abbiamo visto come installare un server per fare dirette video per fare dirette uno a molti con feedback tramite chat testuale.
In gruppi più piccoli però è più comodo e immediato fare videochiamate in cui tutti possano intervenire con audiovideo: per fare questo usando software libero possiamo usare jitsi meet, una piattaforma che fa uso dello standard WebRTC.
In questo modo, chi vuole partecipare alla videochiamata non deve fare altro che collegarsi al server con un qualsiasi browser moderno e creare una stanza o unirsi ad una stanza esistente, senza bisogno di nessun tipo di registrazione.
Se questo modello di videochiamata interessa, ma si è pigri, si può andare su iorestoacasa.work/ e sfruttare le istanze jitsi messe a disposizione da volontari per il periodo di emergenza. Dato però che non siamo pigri, possiamo continuare a leggere questo articolo per vedere come installare una propria istanza.
Installazione
Requisiti
L'installazione di jitsi dovrà avvenire su un server con buona disponibilità di banda; per videochiamate tra piccoli gruppi (~10 persone) può bastare un qualsiasi VPS economico, mentre se si pensa di offrire un servizio pubblico conviene rispettare i requisiti indicati suiorestoacasa.work/voglio-contr… .
Server web, certificati, ecc.
Innanzitutto, è necessario installare un server web a scelta tra apache e nginx: noi abbiamo scelto nginx (per poterlo usare anche come server di streaming, seguendo l'articolo di Fabrixxm).
Usare il proprio metodo preferito per ottenere dei certificati ssl; jitsi si aspetta di trovarli nei file /etc/ssl/jitsi.example.org.key per la chiave e /etc/ssl/jitsi.example.org.crt per il certificato pubblico (completo di certificato intermedio).
Controllare poi che /etc/hosts abbia il FQDN configurato su localhost e aggiungerci una voce Dev-VideoConf-Jitsi per prevenire dei problemi di connessione SCTP:
127.0.1.1 jitsi.example.org jitsi
127.0.0.1 localhost Dev-VideoConf-Jitsi
::1 localhost ip6-localhost ip6-loopback
Jitsi
Purtroppo jitsi non è disponibile in Debian, ma gli sviluppatori forniscono un repository con dei pacchetti .deb aggiornati: aggiungere tale repository in /etc/apt/sources.list.d/jitsi.list:
deb download.jitsi.org stable/
e abilitare la relativa chiave di firma:
# wget -qO - download.jitsi.org/jitsi-key.g… | apt-key add
Aggiornare apt ed installare jitsi:
# apt update
# apt install jitsi-meet
Verranno poste le seguenti domande:
The hostname of the current installation:rispondere con l'FQDN della macchina <server>.<dominio>SSL certificate for the Jitsi Meet instancerispondere “I want to use my own certificate”Full local server path to the SSL key file:rispondere /etc/ssl/jitsi.example.org.keyFull local server path to the SSL certificate file:rispondere /etc/ssl/jitsi.example.org.crt
(attenzione, per questi ultimi due abbiamo avuto problemi nell'usare valori diversi dal default e abbiamo preferito copiare i file nella posizione attesa piuttosto che cercare di risolverli.)
Se il server che si sta usando usa nat (come fanno alcuni fornitori di VPS per fornire indirizzi pubblici riassegnabili a macchine diverse), aggiungere le seguenti righe a/etc/jitsi/videobridge/sip-communicator.properties:
org.ice4j.ice.harvest.NAT_HARVESTER_LOCAL_ADDRESS=<iplocale>
org.ice4j.ice.harvest.NAT_HARVESTER_PUBLIC_ADDRESS=<ip pubblico>
(ad esempio <ip locale> sarà qualcosa come 192.168.42.23)
E riavviare il servizio videobridge2:
# service videobridge2 restart
Conclusioni
Il nostro server è pronto, a questo punto basta aprirejitsi.example.org/v2015/feeds/… con un qualunque browser con supporto webrtc, creare una stanza, passare l'indirizzo ai propri amici e parlare a piacere.
Non è però tutto qui: in articoli successivi vedremo come usare jitsi come fonte per streaming o registrazioni, per avere uno strumento semplice per organizzare conferenze da remoto o realizzare progetti creativi.
Dirette video con NGINX e OBS Studio
In questi giorni di reclusione forzata, si fa affidamento a internet per portare avanti le nostre vite: telelavoro, videoconferenze, scuola online.
In questo piccolo articolo, vediamo come configurare un nostro server per fare dirette online, in alternativa a Youtube, Facebook, etc etc.
Cosa serve
- un server, magari una VPS, con una buona disponibilità di banda
- conoscenze base di linux, bash, ssh, e cose così
- colla vinilica
- forbici con la punta arrotondata
Protocolli e software
Il protocollo più usato per le dirette video è RTMP
Per funzionare, una sorgente invia un flusso di dati a un server che si occupa di rigirare il flusso ai vari client che lo richiedono.
Questo è il motivo per cui serve avere banda disponibile. Una diretta con 10 spettatori occuperà 10 x banda necessaria per il video in uscita più quella in ingresso per la sorgente.
È possibile far funzionare il server su un RaspberryPI a casa? Puo' essere, ma non potrete avere molti spettatori, a seconda della vostra connessione a internet.
Come sorgente useremo OBS Studio, come server NGINX, che è più conosciuto come server web, ma esiste un modulo che supporta rtmp.
Come client potremmo usare VLC, o altri player che supportano RTMP, ma vogliamo che la diretta sia visibile da una pagina web.
Fortunatamente NGINX supporta anche HLS, un protocollo di stream video basato su http, che permette di visualizzare la diretta in un browser, grazie a librerie javascript come video.js.
NGINX lo faremo girare su un server con Debian 10 "buster".
In questo articolo presumiamo che non ci sia già un server web in esecuzione (tipo Apache o altri)
Installiamo e configuriamo il server
installiamo nginx e il modulo rtmp
# apt install nginx libnginx-mod-rtmp
Il modulo rtmp ha una sua configurazione da mettere nel file /etc/nginx.conf. Per facilitarci la vita, creaiamo una cartella che conterrà la configurazione per rtmp
# mkdir -p /etc/nginx/rtmp.d
e nel file /etc/nginx.conf aggiungiamo
rtmp {
include /etc/nginx/rtmp.d/*;
}
Aggiungiamo la configurazione di rtmp. NGINX si occuperà di creare i segmenti video e la playlist m3u8 necessari per il protocollo HLS, dobbiamo dirgli dove. Glieli faremo salvare in /tmp/hls.
Creiamo il file /etc/nginx/rtmp.d/hls
server {
listen 1935;
ping 30s;
notify_method get;
application live {
live on;
# sample HLS
hls on;
hls_path /tmp/hls;
hls_sync 100ms;
hls_fragment 3;
hls_playlist_length 60;
allow play all;
}
}
NGINX sarà in ascolto per lo stream rtmp sulla porta 1935, la porta di default del protocollo.
Ora configuriamo la parte web.
Sostituiamo il contenuto del file /etc/nginx/sites-available/default con:
server {
listen 80;
listen [::]:80;
server_name ilmioserver.it;
root /var/www/html;
location / {
index index.html;
}
location /hls {
# Disable cache
add_header Cache-Control no-cache;
# CORS setup
add_header 'Access-Control-Allow-Origin' '*' always;
add_header 'Access-Control-Expose-Headers' 'Content-Length';
# allow CORS preflight requests
if ($request_method = 'OPTIONS') {
add_header 'Access-Control-Allow-Origin' '*';
add_header 'Access-Control-Max-Age' 1728000;
add_header 'Content-Type' 'text/plain charset=UTF-8';
add_header 'Content-Length' 0;
return 204;
}
types {
application/vnd.apple.mpegurl m3u8;
video/mp2t ts;
}
root /tmp;
}
# rtmp stat
location /stats {
rtmp_stat all;
rtmp_stat_stylesheet stat.xsl;
}
# rtmp control
location /control {
rtmp_control all;
}
}
Con questo file configuriamo:
- la radice del nostro web server, da dove verrà servita la pagina agli spettatori, che sarà salvata in
/var/www/html - il percorso (
/hls) da cui saranno serviti i file video, presi da/tmp/hls. È lo stesso percorso impostato nella configurazione della parte rtmp. - due percorsi di 'supporto', compresa una pagina di statistiche sugli stream.
Verifichiamo che la configurazione non contenga errori di sintassi:
# nginx -t
nginx: the configuration file /etc/nginx/nginx.conf syntax is ok
nginx: configuration file /etc/nginx/nginx.conf test is successful
Ottimo. Ricarichiamo la configurazione.
# systemctl reload nginx
La pagina di visualizzazione
Creiamo il file /var/www/html/index.html
<!DOCTYPE html>
<html lang="en">
<head>
<link href="https://vjs.zencdn.net/7.1/video-js.min.css" rel="stylesheet">
<script src="https://vjs.zencdn.net/7.1/video.min.js"></script>
</head>
<body>
<video id="player" class="video-js vjs-default-skin" controls >
<source src="/hls/mystream.m3u8" type="application/x-mpegURL" />
</video>
<script>
var options, video;
options = {
autoplay: true,
muted: true
};
video = videojs('player', options);
</script>
</body>
</html>
notiamo l'indirizzo della sorgente video: src="/hls/mystream.m3u8": mystreamsarà l'identificativo della diretta da utilizzare nella configurazione di OBS.
Per finire, aggiungiamo il foglio di stile per le statistiche. Usiamo quello di esempio installato col pacchetto:
# gunzip /usr/share/doc/libnginx-mod-rtmp/examples/stat.xsl.gz -c > /var/www/html/stat.xsl
le statistiche saranno raggiungibili su http://miodominio.it/stats.
In onda
Installiamo OBS Studio.
Al primo avvio, eseguiamo la configurazione guidata.
Scegliamo 'Ottimizza per le dirette'
Segliamo una risoluzione e un framerate (FPS). Io ho scelto 1280x720 a 30 FPS.
Ora configuriamo il servizio di streaming. Scegliamo "Personalizzato...".
Come server inseriamo rtmp://miodominio.it/live/
Come 'Codice delle dirette' mettiamo mystream. Nota: è lo stesso nome utilizzato per la sorgente video nella pagina html, mystream.m3u8
Viene eseguito un test che ottimizza le impostazioni.
A questo punto aggiungiamo delle fonti in OBS e pigiamo su "Avvia la diretta". Vi rimando alla documentazione di OBS per la cofigurazione di scene e fonti.
La diretta sarà visibile con un browser su http://miodominio.it/ o con un lettore video, come VLC, aprendo l'indirizzo http://miodominio.it/hls/mystream.m3u8
Interattività
Questo sistema permette di avere una diretta video "uno a molti" tipo televisione. Ma questo è internet, è interattivo! Vogliamo poter ricevere domande e commenti dai nostri spettatori mentre siamo in diretta.
I servizi proprietari di streaming mettono a disposizione una chat a corredo del video. È una buona idea, facciamolo anche noi!
Ovviamente non ci metteremo a scrivere un sistema di chat, ma useremo uno dei più usati e storici sistemi su internet: IRC.
In particolare, inseriremo un client IRC web nella pagina, configurato per collegarsi a un canale predefinito. Da qui gli utenti potranno interagire tra loro e con noi (che terremo un client IRC aperto durante la diretta).
Utiliziamo KiwiIRC come client IRC web. La documentazione ci dice che il formato dell'url per indicare il canale da utilizzare è https://kiwiirc.com/nextclient/#irc://irc.freenode.net/#<nome del canale>. (ci colleghiamo alla rete irc di freenode)
Aggiungiamo quindi il seguente pezzo di codice html nella pagina index.html, appena sotto il tag </video>
<iframe width="100%" height="600"
src="https://kiwiirc.com/nextclient/#irc://irc.freenode.net/#ilmiocanale"></iframe>
(ricordiamoci di mettere il nome del canale corretto)
Conclusioni
Abbiamo creato da zero un semplice servizio di streaming live interattivo.
Da qui è possibile modificare il sistema per supportare più live in contemporanea: basta creare una pagina con il corretto nome dello stream come sorgente video e il corretto canale irc per la chat.
Una nota sulla sicurezza: il server RTMP è in ascolto su internet senza alcun sistema di autenticazione. Chiunque puo' avviare uno stream.
Una soluzione puo' essere mettere il server RTMP in ascolto solo su localhost, modificando il file /etc/nginx/rtmp.d/hls
server {
listen localhost:1935;
[...]
e utilizzare un tunnel ssh per collegarsi:
$ ssh -L 1935:localhost:1935 utente@miodominio.it
In questo caso, OBS dovrà collegarsi a rtmp://localhost/live
Esistono altre possibilità per autenticare la connessione RTMP, ma le indagheremo in un prossimo articolo.
Paolo Pedaletti likes this.
Paolo Pedaletti reshared this.
We had a very nice experience (keeping the video stream at minimum), and friends abroad were able to join us!
I only missed the pizza together 😄
like this
But Jami was very unreliable for me
yes. also for me.
I was told Jitsi was bought by a company and other messengers should be preferred.
Never heard of.
Anyway, Jitsi Meet it's fully opensource and self-hostable. Don't see any problem..
Found:
jitsi.org/news/we-have-a-new-h…
8×8 announced it has acquired the Jitsi team and our technology from Atlassian
"from Atlassian" looks like an improvement, to me.
Again, all the source code is available :)
Paolo Pedaletti likes this.
@Gruppo Linux Como @LIFO anche Debian ha donato alla campagna che citavo durante il #LinuxDay
like this
mostly yes: it is using an A20 SoC, for which support is almost complete: linux-sunxi.org/Linux_mainlini…
(it is missing e.g. HDMI audio, but HDMI video does work)
The ones I have around all run standard debian, from the official installer (not a precooked image), and that must be able to run from the upstream kernel.
∿ und̷e̷l̷ě̷t̷e̷d̷ reshared this.
The same petition, in German:
openpetition.eu/it/petition/on…
The TooItalian;Didn'tRead is that the province of Bolzano has decided to stop paying to develop FUSS, a Debian based system¹ that has been used since 2005 in the italian language schools of the province and move towards a microsoft-based solution.
¹ not just a distribution, the project also includes tools for both classroom management and teaching.
like this
Primo incontro Rizoma
tempo libero.
I partiti non ti attirano, parlano di problemi di 20 anni fa proponendo soluzioni di 50 anni
prima.
Se sommi tutto il tempo che passi sui social ( Instagram, WhatsApp, Facebook ), a guardare,
leggere e scrivere cose che dimenticherai dopo tre giorni, e pensi che avresti potuto impiegarlo
meglio organizzando una rivoluzione, allora sei nelle vicinanze del Rizoma.
Il rizoma non è unico, ce ne sono molti ma sono difficili da trovare perché sono radici
sotterranee. Spesso pensi di non averne bisogno, hai cose più urgenti da fare. Per esempio
sopravvivere.
Oltre alla sopravvivenza, per chi può, c'è l'azione. Rizoma è una unità minima dell'azione, una
organizzazione senza struttura, in comunicazione con le altre organizzazioni in un ecosistema.
Hai dei desideri? A chi li affidi?
Nel Rizoma puoi attivarti per realizzarli assieme a con chi respira assieme a te. Usando la
tecnologia a tuo vantaggio, per produrre valore sociale nella comunità senza diventare una
appendice della macchina e una merce in vendita.
Andremo a formare una delle componenti dell'ecosistema di organizzazioni, una soluzione
frammentaria ai desideri di appartenenza a comunità aperte, accoglienti e solidali.
Le caratteristiche minime saranno l'assenza di delega, il confronto dialettico, l'apertura a
molteplici identità, l'interesse per le tematiche legate alla tecnologia e alla trasformazione
sociale.
Ci vediamo a Spin Time Labs alle h 10:00 sala X - Domenica 13 ottobre 2019.
Via S. Croce in Gerusalemme, 55, Roma.
Programma:
Domenica 13 Ottobre.
H 10:00 Benvenuto di Spin Time Labs - Introduzione a Rizoma
H 11:00 Discussione delle proposte costituenti.
H 12:00 Proposte di azione dai partecipanti.
H 13:30 Pranzo sociale 15€
H 14:30 Il social network federato come ambiente per l'ecosistema di organizzazioni.
H 16:00 Crowdfounding e bandi per finanziare le infrastrutture emancipative. La campagna
#facciamoluce come esempio di ecosistema.
H 18:00 Saluti - workshop social federati (Friendica e Matrix). Scambio contatti.
friendica.feneas.org/profile/r… rizoma@tuta.io
#fediverso #politica #roma #friendica #rizoma #facciamoluce #spintimelabs
!Rizoma !Gruppo Linux Como
Fabio likes this.
Jacopo Girardi likes this.
Nuovo gruppo rizoma di attivisti orizzontali.
friendica.feneas.org/profile/r…
Vi in vitiamo ad iscrivervi..
Matteo kep likes this.
attend
Jacopo Girardi likes this.
Un po' di musica
Form Opencast Alpha, the playlist of Jamendo traks used in the podcast episodes.
Playlist - OpenCast Alpha - Jamendo
La playlist con le tracce che sono passate su OpenCast Alphahttp://www.gl-como.it/category/opencast/
like this
SeranTux reshared this.
like this
/read isn't a profile that you could add as contact. Try a link to a profile, like for example people.kernel.org/monsieuricon… or people.kernel.org/gregkh/ or so.
Fabio likes this.
Chiwy M.F.T. likes this.
like this
Gruppo Linux Como
in reply to Gruppo Linux Como • •