De acordo com uma postagem no fórum do ImageMagick , usar -type truecolor
pode ser o correto maneira de forçar a imagem para 24 bits:
convert "$1" -type truecolor "$1.bmp"
Estou escrevendo um script Bash para ARSS para facilitar o uso. O programa converte imagens em sons e vice-versa, mas só aceita imagens BMP de 24 bits, que só consegui produzir usando o GIMP até agora.
Estou procurando uma maneira de converter qualquer imagem em um arquivo BMP adequado para que o ARSS possa processá-la. Eu tentei o convert
do ImageMagic, mas não conseguirei a profundidade de cor de 24 bt.
Aqui está meu script:
#!/bin/bash
# where is ARSS binary?
ARSS="/unfa/Applications/ARSS/arss-0.2.3-linux-binary/arss"
convert "$1" -depth 24 "$1.bmp"
$ARSS --quiet "$1.bmp" "$1.wav" --sample-rate 48000 --format-param 32 --sine --min-freq 20 --max-freq 20000 --pps 250
Aqui está a saída:
$ ./warss.sh 01.png
The Analysis & Resynthesis Sound Spectrograph 0.2.3
Input file : 01.png.bmp
Output file : 01.png.wav
Wrong BMP format, BMP images must be in 24-bit colour
Como você pode ver, tentei usar convert "$1" -depth 24 "$1.bmp"
para obter uma imagem BMP de 24 bits, mas isso não funciona como eu esperava.
Para referência, recebo um arquivo adequado ao exportar com o GIMP:
E o ARSS processa esse arquivo BMP bem.
Eu não posso usar isso da linha de comando, no entanto, e usar a GUI do GIMP sempre desafia o propósito do que estou tentando alcançar. Eu vi que há uma maneira de usar o GIMP no modo sem cabeça, alimentando-o com comandos, mas não sei se preciso disso.
Talvez haja algo simples que eu não saiba?
De acordo com uma postagem no fórum do ImageMagick , usar -type truecolor
pode ser o correto maneira de forçar a imagem para 24 bits:
convert "$1" -type truecolor "$1.bmp"