Screencast ao vivo no Linux

4

Eu estava tendo alguma dificuldade em executar um Screencast ao vivo no Linux. Eu encontrei o jtvlc e tentei usar isso, mas sempre que eu uso o fluxo sai em branco ou atrasado com latência extremamente alta. Eu tenho uma conexão rápida à Internet e um computador rápido, mas eu estou taxando demais?

Alguma idéia do que eu poderia estar fazendo de errado?

# 1. Get an account on http://www.justin.tv/
# 2. Copy streaming key from: http://www.justin.tv/broadcast/adv_other
# 2. Install VLC: http://www.videolan.org/vlc/
# 3. Get Win/Mac/Lin Stream Client: \
# http://apiwiki.justin.tv/mediawiki/index.php/Linux_Broadcasting_API
# 4. Adjust the vlc parameters to your liking and run VLC like this

#!/bin/bash
cvlc screen:// --input-slave=pulse:// \
    --screen-width 1920 \
    --screen-height 1080 \
    --screen-fps 5 \
    -v input_stream \
    --sout='#duplicate{ dst="transcode{ scale=1, venc=x264{ keyint=60 }, vcodec=h264, vb=600, acodec=mp4a, ab=32, channels=2, samplerate=22050 } :rtp{dst=127.0.0.1,port=1234,sdp=file:///tmp/vlc.sdp} "}' \
    --sout-transcode-threads=4 & sleep 2

# 5. Run JTVLC to stream like this:
./jtvlc/jtvlc omnipotententity censored /tmp/vlc.sdp

# Notes:
#- If you want to see what you're about to stream add 'dst=display, '
# before 'dst="transcode['
# More about the VLC parameters: http://wiki.videolan.org/Documentation:Modules/screen

Atualização:

Corrigi o meu problema ... na maior parte. Eu estava tentando colocar muita informação no meu upstream. Desde então, reduzi minha resolução e usei a opção crf para x264.

Agora meu script é assim:

# 1. Get an account on http://www.justin.tv/
# 2. Copy streaming key from: http://www.justin.tv/broadcast/adv_other
# 2. Install VLC: http://www.videolan.org/vlc/
# 3. Get Win/Mac/Lin Stream Client: \
# http://apiwiki.justin.tv/mediawiki/index.php/Linux_Broadcasting_API
# 4. Adjust the vlc parameters to your liking and run VLC like this

#!/bin/bash
cvlc screen:// --input-slave=pulse:// \
    --screen-width 1920 \
    --screen-height 1080 \
    --screen-fps 5 \
    -v input_stream \
    --sout='#duplicate{ dst="transcode{ scale=1, width=1280, height=720, venc=x264{ keyint=60, crf=35 }, vcodec=h264, acodec=mp4a, ab=32, channels=2, samplerate=22050 } :rtp{dst=127.0.0.1,port=1234,sdp=file:///tmp/vlc.sdp} "}' \
    --sout-transcode-threads=4 & sleep 2

# 5. Run JTVLC to stream like this:
./jtvlc/jtvlc omnipotententity redacted /tmp/vlc.sdp

# Notes:
#- If you want to see what you're about to stream add 'dst=display, '
# before 'dst="transcode['
# More about the VLC parameters: http://wiki.videolan.org/Documentation:Modules/screen

Dito isto, ainda tenho alguns problemas. Às vezes, quando eu mudo o material na tela, ele não consegue codificar corretamente. O que é estranho, porque o screencasting através do Skype 4.0 funciona muito bem. Portanto, ainda há algumas dificuldades para resolver.

Estou deixando a recompensa aberta e estou ativamente tentando as coisas mencionadas. Eu ainda vou atribuir a recompensa, mesmo que eu tenha auto-resolvido.

    
por OmnipotentEntity 15.06.2012 / 09:15

3 respostas

3

Este é provavelmente um tiro no escuro, mas tenho a sensação de que

--screen-fps 5 \

deve ser o problema. tente alterar 5 para um valor maior como 50 e veja o que acontece.

    
por 19.06.2012 / 23:09
0

Outro produto que você pode experimentar:

WebcamStudio para GNU / Linux

    
por 18.06.2012 / 07:35
0

Tente isso ...!

# 1. Get an account on http://www.justin.tv/
# 2. Copy streaming key from: http://www.justin.tv/broadcast/adv_other
# 2. Install VLC: http://www.videolan.org/vlc/
# 3. Get Win/Mac/Lin Stream Client: \
#    http://apiwiki.justin.tv/mediawiki/index.php/Linux_Broadcasting_API
# 4. Adjust the vlc parameters to your liking and run VLC like this

#!/bin/bash
cvlc screen:// \
    --screen-width 1576 \
    --screen-height 886 \
    --screen-fps 5 \
    --screen-caching 200 \
    --screen-top 75 \
    -v input_stream \
    --sout='#duplicate{ dst="transcode{ scale=1, width=630, height=354, venc=x264{ keyint=60 }, codec=h264, vb=600, acodec=mp4a, ab=32, channels=2, samplerate=22050 } :rtp{dst=127.0.0.1,port=1234,sdp=file:///tmp/vlc.sdp} "}' \
    --sout-transcode-threads=2 &

# 5. Run JTVLC to stream like this:
jtvlc justintvusername streamkey /tmp/vlc.sdp

# Notes:
#- If you want to see what you're about to stream add 'dst=display, '
# before 'dst="transcode['
# More about the VLC parameters: http://wiki.videolan.org/Documentation:Modules/screen

Se isso não funcionar, você pode tentar Live Desktop Streaming via DLNA no GNU / Linux .

    
por 18.06.2012 / 09:38