Как удалить альфа-канал из старых файлов BPG для просмотра новой libbpg?

У меня есть пара старых картинок в BPG-кодировке. Поскольку PNG использовался в качестве входного формата, они получили (пустой) альфа-канал, поэтому не могут быть декодированы более новой libbpg:

версия 0.9.4:

  • измененное кодирование Альфа-плоскости для прогрессивного отображения и
    потоковое кодирование. Это изменение несовместимо, поэтому изображения
    содержать Альфа из предыдущих версий формата нельзя
    декодированный.

Мне не нужна эта Альфа канал. Как конвертировать их в новый формат BPG без потерь?

24
задан Vi.
10.02.2023 17:49 Количество просмотров материала 3086
Распечатать страницу

1 ответ

использовать мой инструмент, чтобы удалить альфа-канал, из них: https://gist.github.com/vi/9297cd5bf80f0b34e8a2

удаляет альфа-канал из старых BPG-файлов, делая их декодируемыми новыми BPG-декодерами.

$ 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
$
0
отвечен Vi. 2023-02-12 01:37

Постоянная ссылка на данную страницу: [ Скопировать ссылку | Сгенерировать QR-код ]

Ваш ответ

Опубликуйте как Гость или авторизуйтесь

Имя
Вверх