Codex

Youtube rejeita silenciosamente várias coisas como:

  • Stream sem som
  • Alguns containers
  • Alguns codecs
  • Certas opções dos codecs

Algumas vezes o youtube te diz o porquê, outras vezes não.

Por que usar ffmpeg?

CLI, rápido, faz o que diz, diz o que faz e só !

A maioria dos outros streamers usa o libffmpeg, so why not?!

Curto CLI antes sempre! Depois é que vou ver as opçoes em aplicativos mais visuais.

Tu pode fazer scripts, fazer as coisas do seu jeito e você fica sempre perto da raiz das coisas.

Trechos de páginas sobre o assunto:

1) The codecs and container: YouTube will only accept certain video and audio codecs and certain streaming containers. What is exactly acceptable seems to be evolving but in my case and FLV container with H264 video and AAC audio worked great.

2) Audio: YouTube will not accept a live stream that does not have audio present. In my case, I was using a screencapture directshow driver, along with a similar audio grabber and it turned out that unless I actually had some audio playing (e.g. music or something), the capture driver was not producing a valid audio stream and thus YouTube was rejecting the broadcast.

Linha que funfa !

ffmpeg -y -f v4l2 -i /dev/video0 -f jack -i sound -flags +global_header -acodec libfaac -ac 1 -ar 44100 -ab 64k -s 854x480 -deinterlace -vcodec libx264 -pix_fmt yuv420p -g 25 -vb 500k -profile:v baseline -preset:v superfast -r 30 -f flv "rtmp://a.rtmp.youtube.com/live2/ID"

outra linha que funfa:

ffmpeg -re -i ${PATHTOFILE} -vcodec libx264 -preset veryfast -maxrate 1984k -bufsize 3968k -vf "format=yuv420p" -g 60 -acodec libmp3lame -b:a 96k -ar 44100 -f flv -s 1920x1080 rtmp://a.rtmp.youtube.com/live2/${STREAMID}

Tentei por dias, fazer stream de um feed de celular mjpeg, não conseguia enviar o stream pro youtube live só por causa do fdp não ter som...

Cheguei a fazer poesia com as opções do cli.

ÓDEO !!! >:(

E enquanto escrevo, irei tentar mais uma vez, empurrando um video de psy trance como live event.

linha usada:

ffmpeg -v verbose -i "$FILE" -vcodec libx264 -coder 1 -vf "format=yuv420p" -maxrate 440k -bufsize 512k -acodec libmp3lame -ar 44100 -b:a 128k -bufsize 512k -f flv "$STREAMDEST/$STREAMKEY"

Funcionou !!! :DDDDDDDD

youtube live and ipcams

Funcionou, com o ipcam de celular aqui, tem um software no googleplay que nossavale muito a pena E funciona.

youtube live and cell phones

Como disse acima, funciona sim, mas tem que passar o audio e o video em dois arquivos/urls separadas e dai sim tunar esse streams e enviar pro youtube live/ youtube event.

youtube live with ffmpeg

Funciona legal, é como disse nas outras três seções acima.

Em suma, funciona legal, você pode monitorar qualquer coisa com um cell usado, pela internet ou até mesmo delegar a vigilância à terceiros.

A vantagem é que se faltar luz, você ainda pode contar com a bateria do cell.

Se você desabilitar vários serviços, vai economizar a bateria, que pode durar mais tempo, quem sabe até um dia ou mais sem nenhuma fonte de energia A/C .

O aplicativo do Google Play ainda oferece opções de foto com foco pela API rest, foto com flash, stream mjpeg configurável, stream de audio opus ou stream de audio em acc.

Vc mistura o stream mjpeg com acc, no ffmpeg e voilà!

Acho que nenhuma das linhas de cli acima estão perfeitas, mas funcionam.

Usando a opção -v verbose, você consegue aprender mais sobre a linha de comando e entende que o ffmpeg mesmo corrige algumas coisas sozinho e então você pode ir melhorando sua linha.

Acredito que a brevidade e incompletude, podem ajudar num primeiro entendimento sobre a utilidade e uso.

Eis como fazer o mix de mjpeg e acc:

ffmpeg -v verbose -f mjpeg -i "$STREAMVIDEO" -deinterlace -f acc -i "$STREAMAUDIO" -vcodec libx264 -coder 1 -vf "format=yuv420p" -maxrate 440k -acodec libmp3lame -ar 11025 -b:a 56k -f flv "$STREAMDEST/$STREAMKEY"

É tão legal de fazer isso funcionar...

Até !