Este é um problema surpreendentemente sutil. Demorei bastante e muitos passes para resolver todos os casos de canto. Eu coloquei minha solução online aqui .
Meu caso de uso específico está gerando *.mp4
arquivos para reprodução em um iPad Air 2 usando o macOS, mas as ferramentas usadas geralmente estão disponíveis no Linux, e a solução é facilmente adaptada a outros tipos de dispositivos.
Aqui estão algumas das minhas anotações sobre como fazer essa adaptação, na página inicial do projeto:
O projeto consiste em três scripts de shell Bash que geram ffmpeg
, ffprobe
, mediainfo
e atomicparsley
para converter arquivos de qualquer tipo suportados por esses programas em arquivos H.264 * .mp4 adequados para reprodução em um dispositivo de classe iPad Air 2.
Os scripts contêm alguns macOS isms, portanto, os scripts precisarão de algum ajuste para uso no Linux ou para uso no Windows, no Cygwin , MSYS ou WSL :
-
O programa rmtrash
age como rm
exceto que os arquivos são movidos para a pasta Lixeira do usuário. Muitas ferramentas semelhantes existem para outros sistemas, ou você poderia simplesmente substituir esta linha em ipad-h264
por uma chamada rm
ou algum outro tipo de comando "sair do caminho".
-
O open
call é um mecanismo macOS para abrir um arquivo usando o programa GUI associado a ele. Eu tenho arquivos *.mp4
associados a Subler aqui porque o próximo passo após remuxar ou transcodificação é olhar as tags, aplicar a capa, No Cygwin, você pode obter o mesmo efeito com cygstart
. Eu suponho que há uma maneira de obter um efeito semelhante no Linux. Como alternativa, você poderia simplesmente codificar a próxima etapa no lugar do meu comando open
.
Você pode baixar o software do repositório usando os links da seção Downloads da página inicial.