Nome
cwebp
: compacta um arquivo de imagem em um arquivo WebP.
Sinopse
cwebp [options] input_file -o output_file.webp
Descrição
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 no formato 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
vai executar do navegador, mas só relatam estatísticas. Usando "-" porque o nome da saída vai direcionar a saída para "stdout". -- string
- Especificar explicitamente o arquivo de entrada. Essa opção é útil se a entrada
arquivo começa com um '-' por exemplo. Essa opção precisa aparecer
last
. Todas as outras opções posteriores serão ignoradas. -h, -help
- Um breve resumo do uso.
-H, -longhelp
- Um resumo de todas as opções possíveis.
-version
- Exiba o número da versão (como main.minor.revision) e saia.
-lossless
- Codifique a imagem sem perdas. Para imagens com área totalmente transparente,
os valores invisíveis de pixel (R/G/B ou Y/U/V) serão preservados somente se o
a opção
-exact
será usada. -near_lossless int
- Especificar o nível de pré-processamento de imagem quase sem perda. Essa opção ajusta
valores de pixel para ajudar na compressibilidade, mas tem impacto mínimo sobre o visual
de qualidade. Ele aciona o modo de compactação sem perda automaticamente.
O intervalo é de
0
(pré-processamento máximo) a100
(sem pré-processamento, o padrão). O valor normal é por volta de60
. Observe que com perdas com-q 100
pode, às vezes, gerar melhores resultados. -q float
Especifique o fator de compactação para canais RGB entre
0
e100
. O padrão é75
.No caso de compactação com perda (padrão), um fator pequeno produz uma com qualidade inferior. A melhor qualidade é alcançada usando um valor de
100
:Em caso de compactação sem perdas (especificada pela opção
-lossless
), um Fator pequeno possibilita uma velocidade de compactação mais rápida, mas produz um arquivo maior. A compactação máxima é alcançada usando um valor de100
.-z int
Ativa o modo de compactação
lossless
com o nível especificado entre 0 e 9, sendo 0 o mais rápido e 9 o mais lento. Modo rápido produz arquivos maiores do que os mais lentos. Um bom padrão é-z 6
. Na verdade, 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 serão o efeito dessa opção.-alpha_q int
Especifique o fator de compactação para a compactação alfa entre
0
e100
. A compactação sem perdas da versão Alfa é alcançada usando um valor de100
, enquanto valores mais baixos resultam em uma compactação com perda. o padrão é100
.-preset string
Especifique um conjunto de parâmetros predefinidos para se adequar a um tipo específico de material de origem. Os valores possíveis são:
default
,photo
,picture
,drawing
,icon
,text
.Como
-preset
substitui o dos outros parâmetros, (exceto o parâmetro-q
essa opção deverá aparecer primeiro, na ordem das .-m int
Especifique o método de compactação a ser usado. Esse parâmetro controla o comércio a diferença entre a velocidade de codificação e o tamanho e a qualidade do arquivo compactado. Os valores possíveis variam de
0
a6
. O valor padrão é4
. Quando maior são usados, o codificador passa mais tempo inspecionando as possibilidades de codificação e decidir sobre o ganho de qualidade. Um valor mais baixo pode resultam em um tempo de processamento mais rápido às custas de um tamanho de arquivo maior e compressão menor.-crop x_position y_position width height
Cortar a origem em um retângulo com o canto superior esquerdo nas coordenadas (
x_position
,y_position
) e o tamanhowidth
xheight
. Esse corte deve estar totalmente contida no retângulo de origem. Observação: o recorte é aplicado antes de qualquer escalonamento.-resize width height
Redimensione a origem para um retângulo com o tamanho
width
xheight
. Se (mas não ambos) dos parâmetros de largura ou altura for0
, o valor será calculado preservando a proporção. Observação: o escalonamento é aplicado depois recorte.-mt
Se possível, use várias linhas de execução para codificação.
-low_memory
Reduza o uso de memória da codificação com perda economizando quatro vezes o tempo tamanho (normalmente). Isso torna a codificação mais lenta e a saída ligeiramente diferentes em tamanho e distorção. Essa sinalização só é eficaz métodos 3 e posteriores e fica desativado por padrão. Se essa sinalização não for ativada, terá alguns efeitos colaterais no bitstream: ele força determinadas recursos como o número de partições (forçadas a
1
). Observe que uma entrada o relatório detalhado do tamanho de bitstream é mostrado porcwebp
ao usar este é a melhor opção.
Opções com perdas
Essas opções só são eficazes ao fazer uma codificação com perda (o padrão, com ou sem alfa).
-size int
- Especificar um tamanho de destino (em bytes) para tentar alcançar o
saída. O compressor fará várias passagens de codificação parcial no
para chegar o mais próximo possível dessa meta. Se
-size
e-psnr
forem usados, o valor-size
prevalecerá. -psnr float
- Especifique um PSNR desejado (em dB) para tentar alcançar a saída compactada.
O compressor fará várias passagens de codificação parcial para
o mais próximo possível dessa meta. Se
-size
e-psnr
forem usados, O valor de-size
prevalecerá. -pass int
- Definir um número máximo de passes a serem usados durante a dicotomia usada pelas opções
-size
ou-psnr
. O valor máximo é10
, e o padrão é1
. Opções "Se" Foram usados-size
ou-psnr
, mas-pass
não foi especificado. É um valor padrão de "6" serão usados. Se-pass
for especificado, mas nem-size
nem-psnr
, um PSNR desejado de 40 dB será usado. -af
- Ativa o filtro automático. Esse algoritmo vai passar mais tempo otimizando a intensidade da filtragem para alcançar uma qualidade equilibrada.
-jpeg_like
- Alterar o mapeamento de parâmetros internos para corresponder melhor ao tamanho esperado de
Compactação de JPEG. Essa sinalização geralmente produz um arquivo de saída de
tamanho semelhante ao seu equivalente em JPEG (para a mesma configuração de
-q
), mas com menos distorção visual.
Opções avançadas:
-f int
- Especificar a intensidade do filtro de desbloqueio, entre
0
(sem filtragem) e100
(filtragem máxima). O valor0
vai desativar qualquer filtro. Um valor mais alto aumentará a intensidade do processo de filtragem aplicado depois de decodificar a imagem. Quanto maior o valor, mais suave a imagem será exibido. Os valores típicos geralmente estão no intervalo de20
a50
. -sharpness int
- Especifique a nitidez do filtro (se usado). O intervalo é
0
(mais nítido) para7
(menos nítidos). O padrão é0
. -strong
- Use filtragem forte, se a filtragem estiver sendo usada graças ao recurso
-f
). A filtragem forte fica ativada por padrão. -nostrong
- Desative a filtragem forte, se a filtragem estiver sendo usada graças ao recurso
-f
opção) e use a filtragem simples. -sharp_yuv
- Use a conversão RGB->YUV mais precisa e nítida, se necessário. Observe que este é mais lento que o padrão "rápido" conversão RGB->YUV.
-sns int
- Especifique a amplitude da modelagem de ruído espacial. Modelagem de ruído espacial
(ou sns, na sigla em inglês) refere-se a uma coleção geral de algoritmos integrados
usado para decidir qual área da imagem deve usar relativamente menos bits,
e onde mais para melhor transferir esses bits. O intervalo possível vai de
0
(o algoritmo está desativado) para100
(o efeito máximo). O valor padrão é50
. -segments int
- Muda o número de partições a serem usadas durante a segmentação do sns
algoritmo. Os segmentos precisam estar no intervalo de
1
a4
. O valor padrão é4
. Essa opção não tem efeito para os métodos 3 e posteriores, a menos que-low_memory
seja usados. -partition_limit int
- Degradar a qualidade limitando o número de bits usados por alguns macroblocos.
O intervalo é de
0
(sem degradação, o padrão) até100
(degradação total). Os valores úteis geralmente ficam entre30
e70
para imagens moderadamente grandes. Em formato VP8, a chamada partição de controle tem um limite de 512k e é usada para armazenar as seguintes informações: se o macrobloco é pulado, a qual segmento pertence, se está codificado como intra 4x4 ou modo intra 16x16 e, por fim, os modos de previsão a serem usados para cada sub-blocos. Para uma imagem muito grande, 512k deixa espaço apenas para alguns bits por de tamanho 16x16. O mínimo absoluto é de 4 bits por macrobloco. Pular, informações de segmento e modo podem usar quase todos esses 4 bits (embora esse caso é improvável), o que é um problema para imagens muito grandes. A O fatorpartition_limit
controla a frequência com que o modo mais dispendioso (Intra 4x4). Isso é útil caso o limite de 512 mil seja atingido e a seguinte mensagem será exibida: Código do erro: 6 (PARTITION0_OVERFLOW: a partição 0 é muito grande para caber em 512k). Se estiver usando-partition_limit
não é suficiente para atender à restrição de 512k, é preciso usar menos segmentos para economizar mais bits de cabeçalho por macrobloco. Consulte a opção-segments
. Observe que as opções-m
e-q
também influenciam sobre as decisões do codificador e a capacidade de atingir esse limite.
Opções de registro
Essas opções controlam o nível de saída:
-v
- Mostre informações extras, como a hora da codificação.
-print_psnr
- Calcular e informar a proporção de pico de sinal-ruído (PSNR, na sigla em inglês) média.
-print_ssim
- Calcular e relatar o SSIM médio (métrica de similaridade estrutural; consulte) https://en.wikipedia.org/wiki/SSIM para mais detalhes).
-print_lsim
- Calcular e relatar a métrica de semelhança local (soma do menor erro entre os vizinhos de pixel posicionados).
-progress
- Progresso da codificação do relatório, em porcentagem.
-quiet
- Não imprima nada.
-short
- Imprimir apenas informações breves (tamanho do arquivo de saída e PSNR) para testes e propósitos diferentes.
-map int
- Gerar mapa ASCII adicional de informações de codificação. Possíveis valores de mapa
de
1
a6
. Isso serve apenas para ajudar na depuração.
Opções adicionais
As opções mais avançadas são:
-s width height
- Especificar que o arquivo de entrada consiste em amostras Y'CbCr brutas
seguindo a recomendação ITU-R BT.601, no formato linear 4:2:0. A
o plano de luma tem o tamanho de
width
xheight
. -pre int
- Especifique algumas etapas de pré-processamento. O uso do valor
2
vai acionar pontilhamento pseudoaleatório dependente da qualidade durante a conversão RGBA->YUVA (apenas compactação com perda). -alpha_filter string
- Especifique o método de filtragem preditiva para o plano Alfa. Um de
none
,fast
oubest
, em ordem crescente de complexidade e lentidão. O padrão éfast
. Internamente, a filtragem Alfa é realizada usando quatro previsões possíveis (nenhuma, horizontal, vertical, gradiente). Obest
testará um modo por vez e escolherá o que dá ao modo tamanho. O modofast
tentará formar um palpite a priori sem testando todos os modos. -alpha_method int
- Especifique o algoritmo usado para compactação Alfa:
0
ou1
. Algoritmo0
indica que não há compactação,1
usa o formato WebP sem perda para compactação. O padrão é1
. -exact
- Preserve os valores RGB na área transparente. O padrão é desativado, compressibilidade.
-blend_alpha int
- Esta opção combina o Canal Alfa (se houver) com a fonte usando
a cor de fundo especificada em hexadecimal como 0xrrggbb. Alfa
O canal é redefinido posteriormente para o valor opaco
255
. -noalpha
- Ao usar essa opção, o Canal Alfa será descartado.
-hint string
- Especifica a dica sobre o tipo de imagem de entrada. Os valores possíveis são:
photo
,picture
ougraph
. -metadata string
Uma lista separada por vírgulas de metadados a serem copiados da entrada para a saída se presente. Valores válidos:
all
,none
,exif
,icc
,xmp
. O padrão énone
.Nem todos os formatos de entrada oferecem suporte a todas as combinações.
-noasm
Desativar todas as otimizações de montagem.
Bugs
Informe todos os bugs ao Issue Tracker: https://issues.webmproject.org (em inglês).
Patches bem-vindos! Consulte esta página para começar: https://www.webmproject.org/code/contribute/submitting-patches/
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
cwebp
faz parte do libwebp
e foi criado pela equipe do WebP.
A árvore de origem mais recente está disponível em
https://chromium.googlesource.com/webm/libwebp/
Esta página de manual foi escrita para o projeto Debian (e pode ser usada por outros).