web-dev-qa-db-fra.com

Synchronisation audio et vidéo automatique lors de la diffusion en continu

Lorsque je diffuse mon ordinateur sur Twitch.tv en utilisant avconv, l’audio et la vidéo ne sont pas synchronisés. Parfois, il est déjà désynchronisé au démarrage du flux et parfois, ils se séparent peu à peu après un certain temps. C'est le script que j'utilise pour le streaming:

#!/bin/bash
INRES="1920x1080" # input resolution
OUTRES="1280x720"
OFFSET="0,0"
FPS="30" # target FPS
MAXRATE="3000k"
BUFSIZE="3000k"
AUDIOBITRATE="192k"
QUAL="medium" # one of the many FFMPEG preset
STREAM_KEY=$(cat ~/.Twitch_key)
URL="rtmp://live.Twitch.tv/app/$STREAM_KEY"
SHOW_REGION="0"

avconv -v quiet -f x11grab -show_region $SHOW_REGION -s "$INRES" -r "$FPS" -i :0.0+$OFFSET \
-f alsa -ac 2 -b:a "$AUDIOBITRATE" -i Pulse -c:v libx264 -crf 30 -preset "$QUAL" \
-s "$OUTRES" -vol 11200 -c:a libmp3lame -ar 44100 -pix_fmt yuv420p -maxrate "$MAXRATE" -bufsize "$BUFSIZE" \
-f flv "$URL"

exit $?
3
c_korn

Lorsque ssr génère:

Warning: Audio input is more than 5% too fast, video and audio will be out of sync.

ou

Warning: Audio input is more than 5% too slow, video and audio will be out of sync.

Faire ceci:

Éditez /etc/Pulse/daemon.conf, assurez-vous qu’il contient les lignes suivantes (en ajoutant ou en supprimant les commentaires):

default-sample-rate = 44100
alternate-sample-rate = 44100

Il y a un bogue en amont qui est marqué comme corrigé mais le correctif n'est pas dans le référentiel d'Ubuntu. Le bogues simplescreenrecorder qui contient cette solution de contournement.

2
c_korn