Como removo o canal alfa de arquivos BPG antigos para serem visualizados pelo novo libbpg?

Como removo o canal alfa de arquivos BPG antigos para serem visualizados pelo novo libbpg?

Eu tenho algumas fotos antigas codificadas em BPG. Como PNG foi usado como formato de entrada, eles obtiveram um canal alfa (vazio), portanto não podem ser decodificados pela libbpg mais recente:

versão 0.9.4:

  • Codificação de plano alfa modificada para permitir exibição progressiva e codificação de streaming. Esta alteração é incompatível, portanto imagens contendo alfa de versões anteriores do formato não podem ser decodificadas.

Não preciso deste canal alfa. Como faço para convertê-los sem perdas para o novo formato BPG?

Responder1

Use minha ferramenta para remover o canal alfa deles:https://gist.github.com/vi/9297cd5bf80f0b34e8a2

Ele remove o canal alfa de arquivos BPG antigos, tornando-os decodificáveis ​​por decodificadores BPG mais recentes.

$ 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
$

informação relacionada