Vivos en Peertube usando FFmpeg

Cuando hacia el 4232 quería transmitir en vivo, pero de me dificultaba sobre todo porque OBS consumía mucho procesador y mi red no era muy buena.
Así que me arme unos scripts para transmitir en Icecast usando formato MJPEG y de vez en cuando en esta página podía verse la transmisión de lo que hacía en mi computadora.

Ahora con la nueva serie que estoy pre produciendo intente hacer lo mismo, pero usando Peertube y OBS, pero aun así cuando uso Blender, el OBS ocupa tantos recursos como el Blender.

Así que volví a la idea de los scripts, copiando un poco la configuración que usa jitsi para transmitir los vivos.


# direccion y token privado
RTMP="rtmp://fediverse.tv:1935/live/..."
[ ! "$1" == "" ] && RTMP=$1
# pulse o alsa
AUDIOH=pulse
AUDIOP=1
# tamaño del pantalla a capturar
RESOLUCION=1920x1080
# Mouse: oculto 0, visible 1
MOUSE=1
# pantalla a capturar, puede agregarse el tamaño :0.0+100+500
X=":0.0"
ffmpeg -y -v info -f x11grab -draw_mouse $MOUSE -r 30 -s $RESOLUCION \
-thread_queue_size 4096 \
-i $X \
-f $AUDIOH -i $AUDIOP \
-acodec aac -strict -2 -ar 44100 \
-b:a 128k -af aresample=async=1 \
-c:v libx264 -preset veryfast -maxrate 2976k -bufsize 5952k \
-pix_fmt yuv420p -r 30 -crf 25 -g 60 -tune zerolatency \
-f flv $RTMP

Esto transmite el X11 (toda la pantalla) y toma el sonido de Pulse Audio.

También podemos agregar nuestro logo agregando una línea como:

-vf "movie=logo.png [wm]; [in][wm] overlay=main_w-overlay_w-10:10"

o nuestra webcam con una línea como:

-f v4l2 -framerate 30 -video_size 320x240 -i /dev/video0

Lo sé, no es tan práctico como OBS, pero por el bien de los recursos de mi pobre máquina mereció el esfuerzo…

Descargar el programa

Publicado en Tutoriales y etiquetado , , , , .

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *

*

code