cwebp

Nome

cwebp: compacta um arquivo de imagem em um arquivo WebP.

Sinopse

cwebp [options] input_file -o output_file.webp

Descrição

cwebp compacta uma imagem usando o formato WebP. O formato de entrada pode ser PNG, JPEG, TIFF, WebP ou amostras Y'CbCr brutas. Observação: arquivos animados PNG e WebP não são compatíveis.

Opções

As opções básicas são:

-o string
Especifique o nome do arquivo WebP de saída. Se omitido, o cwebp realizará a compactação, mas apenas as estatísticas de relatórios. O uso de "-" como nome da saída irá direcionar a saída para 'stdout'.
-- string
Especifique explicitamente o arquivo de entrada. Essa opção é útil se o arquivo de entrada começar com &&39;-' por exemplo. Essa opção precisa aparecer last. Todas as outras opções posteriores serão ignoradas.
-h, -help
Um breve resumo de uso.
-H, -longhelp
Um resumo de todas as opções possíveis.
-version
Exibir o número da versão (como principal.minor.revision) e sair.
-lossless
Codifique a imagem sem perdas. Para imagens com área totalmente transparente, os valores de pixel invisíveis (R/G/B ou Y/U/V) serão preservados somente se a opção -exact for usada.
-near_lossless int
Especifique o nível de pré-processamento de imagens quase sem perdas. Essa opção ajusta os valores de pixel para ajudar a compactação, mas tem impacto mínimo na qualidade visual. Ele aciona automaticamente o modo de compactação sem perda. O intervalo é de 0 (pré-processamento máximo) a 100 (sem pré-processamento, o padrão). O valor típico é próximo de 60. Às vezes, a perda com -q 100 pode gerar melhores resultados.
-q float

Especifique o fator de compactação para canais RGB entre 0 e 100. O padrão é 75.

No caso de compactação com perda (padrão), um pequeno fator produz um arquivo pequeno com qualidade inferior. A melhor qualidade é alcançada com um valor de 100.

No caso de compactação sem perda (especificada pela opção -lossless), um pequeno fator permite uma velocidade de compactação mais rápida, mas produz um arquivo maior. A compactação máxima é realizada com um valor de 100.

-z int

Ative o modo de compactação lossless com o nível especificado entre 0 e 9, sendo que o 0 é o mais rápido, 9 é o mais lento. O Modo rápido produz um tamanho de arquivo maior que os mais lentos. Um bom padrão é -z 6. Essa opção é um atalho para algumas configurações predefinidas de qualidade e método. Se as opções -q ou -m forem usadas posteriormente, elas invalidarão o efeito dessa opção.

-alpha_q int

Especifique o fator de compactação para a compactação Alfa entre 0 e 100. A compactação sem perda do Alfa é realizada com um valor de 100, enquanto os valores mais baixos resultam em uma compactação com perda. o padrão é 100.

-preset string

Especifique um conjunto de parâmetros predefinidos para atender a um tipo específico de material de origem. Os valores possíveis são: default, photo, picture, drawing, icon, text.

Como -preset substitui os outros parâmetros' valores (exceto o -q), esta opção deve, de preferência, aparecer primeiro na ordem dos argumentos.

-m int

Especifique o método de compactação que será usado. Esse parâmetro controla a troca entre a velocidade de codificação e o tamanho e a qualidade do arquivo compactado. Os valores possíveis variam de 0 a 6. O valor padrão é 4. Quando valores mais altos são usados, o codificador passa mais tempo inspecionando outras possibilidades de codificação e decidendo o ganho de qualidade. Valores mais baixos podem resultar em um tempo de processamento mais rápido, às custas de um tamanho de arquivo maior e de qualidade de compactação mais baixa.

-crop x_position y_position width height

Corte a origem em um retângulo com o canto superior esquerdo em coordenadas (x_position, y_position) e tamanho width x height. Essa área de corte precisa estar totalmente dentro do retângulo de origem. Observação: o corte é aplicado antes de qualquer escalonamento.

-resize width height

Redimensione a origem para um retângulo com tamanho width x height. Se ambos (mas não ambos) os parâmetros de largura ou altura forem 0, o valor será calculado preservando a proporção. Observação: o escalonamento é aplicado após o corte.

-mt

Use várias linhas de execução para codificação, se possível.

-low_memory

Reduza o uso de memória da codificação com perda ao salvar quatro vezes o tamanho compactado (geralmente). Isso fará com que a codificação seja mais lenta e a saída um pouco diferente de tamanho e distorção. Essa sinalização só é eficaz para os métodos 3 e mais recentes e, por padrão, fica desativada. Deixar essa sinalização desativada terá alguns efeitos colaterais no bitstream: ela força determinados recursos de bitstream, como o número de partições (forçadas a 1). Observe que um relatório mais detalhado do tamanho do bitstream será impresso por cwebp ao usar essa opção.

Opções com perdas

Essas opções só são eficazes ao fazer codificação com perdas (o padrão, com ou sem Alfa).

-size int
Especifique um tamanho de destino (em bytes) para tentar alcançar a saída compactada. O compressor fará várias passagens de codificação parcial para se aproximar o máximo possível dessa meta. Se -size e -psnr forem usados, o valor de -size prevalecerá.
-psnr float
Especifique um destino PSNR (em dB) para tentar alcançar a saída compactada. O compressor fará vários cartões de codificação parcial para se aproximar o máximo possível dessa meta. Se -size e -psnr forem usados, o valor de -size prevalecerá.
-pass int
Defina um número máximo de cartões para usar durante a dicotomia usada pelas opções -size ou -psnr. O valor máximo é 10, e o padrão é 1. Se as opções -size ou -psnr forem usadas, mas -pass não for especificado, um valor padrão de '6' cartões será usado.
-af
Ativa o filtro automático. Esse algoritmo passará mais tempo otimizando a intensidade da filtragem para alcançar uma qualidade equilibrada.
-jpeg_like
Altere o mapeamento de parâmetros internos para corresponder melhor ao tamanho esperado da compactação JPEG. Essa sinalização geralmente produz um arquivo de saída de tamanho semelhante ao equivalente em JPEG (para a mesma configuração de -q), mas com menos distorção visual.

Opções avançadas:

-f int
Especifique o nível do filtro de desbloqueio entre 0 (sem filtragem) e 100 (filtragem máxima). Um valor de 0 desativará todos os filtros. Um valor maior aumenta a intensidade do processo de filtragem aplicado após a decodificação da imagem. Quanto maior o valor, mais suave será a imagem exibida. Os valores típicos costumam estar no intervalo de 20 a 50.
-sharpness int
Especifique a nitidez da filtragem (se usada). O intervalo é de 0 (mais preciso) a 7 (menos preciso). O padrão é 0.
-strong
Use a filtragem forte (se a filtragem estiver sendo usada graças à opção -f). A filtragem forte é ativada por padrão.
-nostrong
Desative o filtro forte (se ele estiver sendo usado graças à opção -f) e use um filtro simples.
-sharp_yuv
Use conversões RGB->YUV mais precisas e mais nítidas, se necessário. Esse processo é mais lento que a conversão padrão 'fast' RGB->YUV.
-sns int
Especifique a amplitude da modelagem de ruído espacial. O ajuste de ruído espacial (sns, na sigla em inglês) se refere a uma coleção geral de algoritmos integrados usados para decidir qual área da imagem precisa usar relativamente menos bits e para que outro lugar pode transferir melhor esses bits. O intervalo possível vai de 0 (o algoritmo está desativado) a 100 (o efeito máximo). O valor padrão é 50.
-segments int
Alterar o número de partições a serem usadas durante a segmentação do algoritmo dos sensores. Os segmentos devem estar no intervalo de 1 a 4. O valor padrão é 4. Essa opção não tem efeito para os métodos 3 e mais recentes, a menos que -low_memory seja usado.
-partition_limit int
Reduza a qualidade limitando o número de bits usados por alguns macroblocks. O intervalo é 0 (sem degradação, o padrão) como 100 (degradação completa). Os valores úteis geralmente ficam entre 30 e 70 para imagens moderadamente grandes. No formato VP8, a chamada partição de controle tem um limite de 512 mil e é usada para armazenar as seguintes informações: se o macroblock é ignorado, a que segmento ele pertence, se está codificado como intra 4x4 ou intra 16x16 e, por fim, os modos de previsão a serem usados para cada um dos subblocos. Para imagens muito grandes, 512k deixa espaço apenas para alguns bits por macrobloco 16x16. O mínimo absoluto é 4 bits por macrobloco. As informações de opção de pular, segmentar e modo podem usar quase todos esses quatro bits (embora o caso seja improvável), o que é um problema para imagens muito grandes. O fator partition_limit controla a frequência com que o modo mais caro (intra 4 x 4) será usado. Isso será útil caso o limite de 512 mil seja atingido e a seguinte mensagem seja exibida: Código de erro: 6 (PARTITION0_OVERFLOW: a partição 0 é muito grande para caber em 512 mil). Se o uso de -partition_limit não for suficiente para atender à restrição de 512 mil, é necessário usar menos segmentos para economizar mais bits de cabeçalho por macrobloco. Consulte a opção -segments.

Opções de registro

Estas opções controlam o nível de saída:

-v
Exibir mais informações (especificamente o tempo de codificação).
-print_psnr
Calcule e informe a média de PSNR (proporção de sinal de sinal para ruído).
-print_ssim
Calcule e relate o SSIM médio (métrica de semelhança estrutural, consulte https://en.wikipedia.org/wiki/SSIM para mais detalhes).
-print_lsim
Calcular e informar a métrica de semelhança local (soma do menor erro entre os vizinhos de pixels colocalizados)
-progress
Informe o progresso da codificação em porcentagem.
-quiet
Não imprimir nada
.
-short
Somente exiba informações breves (tamanho do arquivo de saída e PSNR) para fins de teste.
-map int
Gere um mapa ASCII adicional das informações de codificação. Os valores possíveis de mapa variam de 1 a 6. Isso serve apenas para ajudar na depuração.

Opções adicionais

Veja as opções mais avançadas:

-s width height
Especifique se o arquivo de entrada realmente consiste em amostras brutas de Y'CbCr de acordo com a recomendação IAB-R BT.601, no formato linear 4:2:0. O plano de luma tem o tamanho width x height.
-pre int
Especifique algumas etapas de pré-processamento. O uso de um valor de 2 acionará o pseudoaleatório dependente de qualidade durante a conversão de RGBA->YUVA (somente compactação com perda).
-alpha_filter string
Especifique o método de filtragem preditiva para o plano Alfa. Uma destas opções: none, fast ou best, aumentando a complexidade e a ordem de lentidão. O padrão é fast. Internamente, a filtragem Alfa é realizada usando quatro previsões possíveis (nenhum, horizontal, vertical, gradiente). O modo best vai testar cada modo por vez e escolher o que tiver o tamanho menor. O modo fast apenas tentará formar uma suposição sem testar todos os modos.
-alpha_method int
Especifique o algoritmo usado para compactação Alfa: 0 ou 1. O algoritmo 0 indica nenhuma compactação, e 1 usa o formato sem perda do WebP para compactação. O padrão é 1.
-exact
Mantenha os valores de RGB em área transparente. O padrão é desativado para ajudar a compactação.
-blend_alpha int
Esta opção combina o canal Alfa (se presente) com a origem usando a cor de fundo especificada em hexadecimal como 0xrrggbb. O canal Alfa é redefinido para o valor opaco 255.
-noalpha
Ao usar essa opção, o canal Alfa será descartado.
-hint string
Especificar a dica sobre o tipo de imagem de entrada. Os valores possíveis são: photo, picture ou graph.
-metadata string

Uma lista de metadados separada por vírgulas para copiar da entrada para a saída, se presente. Valores válidos: all, none, exif, icc, xmp. O padrão é none.

Cada formato de entrada pode não ser compatível com todas as combinações.

-noasm

Desativar todas as otimizações de montagem.

Bugs

Exemplos

cwebp -q 50 -lossless picture.png -o picture_lossless.webp
cwebp -q 70 picture_with_alpha.png -o picture_with_alpha.webp
cwebp -sns 70 -f 50 -size 60000 picture.png -o picture.webp
cwebp -o picture.webp -- ---picture.png

Autores

O cwebp faz parte do libwebp e foi escrito pela equipe do WebP. A árvore de origem mais recente está disponível em https://chromium.googlesource.com/webm/libwebp/.

Esta página manual foi escrita para o projeto Debian e pode ser usada por outras pessoas.