¿Cómo elimino el canal alfa de archivos BPG antiguos para que los vea el nuevo libbpg?

¿Cómo elimino el canal alfa de archivos BPG antiguos para que los vea el nuevo libbpg?

Tengo un par de imágenes antiguas codificadas en BPG. Como se usó PNG como formato de entrada, obtuvieron un canal alfa (vacío), por lo que no se puede decodificar con el nuevo libbpg:

versión 0.9.4:

  • Codificación del plano alfa modificada para permitir la visualización progresiva y la codificación de transmisión. Este cambio es incompatible, por lo que las imágenes que contengan alfa de versiones anteriores del formato no se pueden decodificar.

No necesito este canal alfa. ¿Cómo los convierto sin pérdidas al nuevo formato BPG?

Respuesta1

Utilice mi herramienta para eliminarles el canal alfa:https://gist.github.com/vi/9297cd5bf80f0b34e8a2

Elimina el canal alfa de los archivos BPG antiguos, haciéndolos decodificables con decodificadores BPG más nuevos.

$ bpgdec -i test.bpg
size=1606x1263 color_space=YCbCr alpha=1 premul=0 format=4:2:0 limited_range=0 bit_depth=8 animation=0
$ bpgdec test.bpg
Could not decode image

$ bpg93_remove_alpha.pl < test.bpg > test.noa.bpg
magic: 425047FB
PixelFormat: 1  alpha: 1  bitdepth: 8
ColorSpace: 0  ExtPresent: 0  Alpha2: 0 LimitedRange: 0 ReservedZero: 0
Width: 1606  Height: 1263
Picture data length: 81969
Alpha data length: 239

$ bpgdec -i test.noa.bpg 
size=1606x1263 color_space=YCbCr format=4:2:0 limited_range=0 bit_depth=8 animation=0
$ bpgdec test.noa.bpg
$

información relacionada