watch não funciona com “pkill ffmpeg; ffmpeg -i ”

0

Estou usando o ffmpeg para gravar o fluxo on-line. Quero gravar em pequenos pedaços com o processo de matar ffmpeg e começar de novo. Tentando fazer isso com o comando watch -n 40 "pkill ffmpeg; ffmpeg -i http://SiteName.com/playlist.m3u8 radioSTREAM.$(date +%d-%m-%g-%Hh%Mm%Ss).mp3" mas stucking. Como fazer dar certo ?

A questão adicional é como colocar toda esta construção no comando at ?

    
por user547325 02.06.2016 / 08:39

2 respostas

1

Uma solução mais elegante é usar o segmento muxer :

ffmpeg -i input -c copy -f segment -segment_time 40 output_%03d.mp3

Resulta em aproximadamente 40 segundos segmentos:

$ ls -m1
output_000.mp3
output_001.mp3
...
output_010.mp3

O exemplo evita a recodificação usando o modo copiar cópia e pressupõe que os formatos de entrada e saída sejam os mesmo (MP3 neste exemplo).

    
por LordNeckbeard 02.06.2016 / 21:45
0

Coloque-o em um shell script para que você tenha menos escape, você também pode executar esse shell script pelo comando at

Se você executar o script de shell da seguinte forma

bash -x ./script.sh 

Você verá quais valores as variáveis têm em cada ponto do script.

    
por Amias 02.06.2016 / 09:07