CPU를 완전히 활용하고 비디오 변환 속도를 높이기 위해 8 개의 명령을 병렬로 실행하는 데 피곤했습니다.
ffmpeg -i input.mp4 -t 60 -f mp4 /mnt/a.mp4 > /dev/null 2>&1 &
ffmpeg -i input.mp4 -t 60 -f mp4 /mnt/b.mp4 > /dev/null 2>&1 &
ffmpeg -i input.mp4 -t 60 -f mp4 /mnt/c.mp4 > /dev/null 2>&1 &
ffmpeg -i input.mp4 -t 60 -f mp4 /mnt/d.mp4 > /dev/null 2>&1 &
ffmpeg -i input.mp4 -t 60 -f mp4 /mnt/e.mp4 > /dev/null 2>&1 &
ffmpeg -i input.mp4 -t 60 -f mp4 /mnt/f.mp4 > /dev/null 2>&1 &
ffmpeg -i input.mp4 -t 60 -f mp4 /mnt/g.mp4 > /dev/null 2>&1 &
ffmpeg -i input.mp4 -t 60 -f mp4 /mnt/h.mp4 > /dev/null 2>&1 &
그들 중 2 ~ 3 명이 멈췄다. 왜 이런 일이 발생합니까? 이것이 FFmpeg 제한입니까? 16 코어 및 4 코어 머신 EC2 c1.xlarge 및 cc2.8xlarge에서 이것을 시도했습니다. 같은 행동입니다. 나는 복잡한 명령과 간단한 명령을 시도했지만 여전히 2 또는 3이 중단되었습니다.
3
내 지식으로는 FFmpeg 자체로는 당신을 방해하지 않아야합니다. 쉘 문제 일 수 있습니까?
—
slhck
각 명령에 다른 입력이 있으면 어떻게합니까? 그들이 멈 추면 모두 멈추기 때문에 어떻게 독립적으로 만들 수 있습니까?
—
Samson
다중 프로세서 사용에 대한 매개 변수를 찾았습니까?
—
Dr.jacky
여기서 "중지"란 무슨 뜻입니까? bash는 일시 중지 된 것으로 표시합니까?
—
rogerdpack