Estou assumindo que você está no Windows; Por que não usar o comando "iniciar" com uma prioridade menor que a normal, por exemplo, /LOW
. Ele ainda usará 100% da CPU quando puder, mas somente se nada mais quiser.
Tenho uma tarefa para gravar vídeos de lapso de tempo de várias câmeras IP (por exemplo, câmera1.mp4, câmera2.mp4, câmera # .mp4, etc.). Atualmente, estou executando instâncias ffmpeg.exe separadas simultaneamente em uma VM do MS Azure (C2D, 7 GB de RAM). Cada ffmpeg.exe é responsável por concatenar a imagem recém-tirada (a cada 1 minuto) da câmera com o arquivo .mp4 existente, portanto, criando a câmera final # .mp4.
Embora, eu usei truques como limitar o ffmpeg.exe para usar 1 núcleo do CPU apenas entre 4 disponíveis, mas ele ainda está sufocando a CPU para 100% quase sempre.
Qualquer ideia para melhorar esta situação, por favor sugira? (pode ser: alguém fez algo semelhante usando uma única instância de ffmpeg.exe, fazendo tarefas de concatenação enfileiradas em cada câmera?)
OU qualquer outra ideia / sugestão de ajuda, por favor, para corrigir o problema.
Estou assumindo que você está no Windows; Por que não usar o comando "iniciar" com uma prioridade menor que a normal, por exemplo, /LOW
. Ele ainda usará 100% da CPU quando puder, mas somente se nada mais quiser.
Tags video ffmpeg cpu c# concatenation