Tengo un montón de archivos de vídeo (FLV y MOV), algunos con canales alfa y otros sin ellos.
¿Cómo puedo saber eficazmente los que tienen un canal alfa?
Tengo un montón de archivos de vídeo (FLV y MOV), algunos con canales alfa y otros sin ellos.
¿Cómo puedo saber eficazmente los que tienen un canal alfa?
Exiftool debería reportar todos los clips con canales alfa como de 32 bits:
exiftool -bitdepth /path/to/your/movie.mov
Por supuesto, puede especificar comodines al llamar a exiftool:
exiftool -bitdepth *.mov
Inspector de medios también puede hacerlo si prefiere una aplicación con interfaz gráfica.
¿Qué ocurre si un clip es de 32 bits, pero no tiene canal alfa? (¿O es imposible? No sé mucho de vídeo...)
Un vídeo no puede tener una profundidad de 32 bits sin tener un canal alfa. La profundidad de una imagen es la suma de la profundidad de sus canales. Las profundidades son siempre potencias enteras de 2. Si un vídeo tiene tres canales no hay solución para "3 * 2^n = 32" con un n entero => no hay imagen (y por tanto no hay vídeo) con tres canales y 32bit de profundidad total. Teniendo un canal alfa ("4 * 2^n = 32") n tiene una solución (n = 3, es decir 8 bits por canal)
Otra forma es utilizar ffprobe
. He aquí un ejemplo adaptado de esta respuesta para mostrarlo para cada archivo .mov en el directorio actual:
for f in *.mov; do
pixfmt=$(ffprobe -v 0 -select_streams v:0 -show_entries stream=pix_fmt -of compact=p=0:nk=1 "$f")
alpha=$(ffprobe -v 0 -show_entries pixel_format=name:flags=alpha -of compact=p=0 | grep "$pixfmt|" | grep -oP "(?<=alpha=)\d")
if (( alpha )); then
echo "With alpha: $f"
else
echo "no : $f"
fi
done
Consulte la respuesta original para saber cómo funciona.
AppleAyuda es una comunidad de usuarios de los productos de Apple en la que puedes resolver tus problemas y dudas.
Puedes consultar las preguntas de otros usuarios, hacer tus propias preguntas o resolver las de los demás.