imagemagickμμ νμ΄νμμ μ½κ³ μΈ μ μμΌλ©° νμμ μ§μ ν μ μμ΅λλ€.
cat in.jpg | convert JPG:- -resize 50% PPM:- | jpeg-recompress --ppm -q medium - out.jpg
vips cli λꡬμμ /dev/stdin λλ /dev/stdoutμ μ¬μ©ν μ μμ§λ§ vipsμμ νμ΄νλ₯Ό μ¬μ©νμ¬ μνν μ μλ μμ μ μ ννλ νμΌ νμμ λνλ΄λ λ°©λ²μ΄ μλ κ² κ°μ΅λλ€.
VIPκ° μ λ ₯ λ° μΆλ ₯ μ΄λ―Έμ§μ λν΄ λ‘λ/μΈμ΄λ²λ₯Ό μ§μ /μ¬μ μν μ μλ€λ©΄ μ’μ κ²μ λλ€.
ꡬ문 μ:
cat in.jpg | vips resize -[load=jpeg] -[save=ppm] 0.5 | jpeg-recompress --ppm -q medium - out.jpg
μ΄κ²μ λν .v νμΌμ μ°κΈ° μν΄ λμ€ν¬ i/oλ₯Ό μ§λΆνμ§ μκ³ μ¬λ¬ vips cli μμ μ μ°κ²°ν μ μμ΅λλ€.
Hi Felix, μ΄κ²μ λν΄ μ‘°κΈ μ΄μΌκΈ°νμ΅λλ€. μ€νΈλ¦Όμ μ§μνλ μ€νμ μΈ λΆκΈ°λ μμ΅λλ€.
https://github.com/jcupitt/libvips/tree/load-from-stream
μ΄ C νλ‘κ·Έλ¨μ μ€νν μ μμ΅λλ€.
https://gist.github.com/jcupitt/ff21f5b8d1dd6ba54c6f
μ 체 μ΄λ―Έμ§λ₯Ό λ‘λν νμ μμ΄ μμΌμμ μΌλ ¨μ μ΄λ―Έμ§λ₯Ό μ½κ³ μ²λ¦¬ν λ€μ λ€λ₯Έ μμΌμΌλ‘ 보λ λλ€. λͺ©νλ AWS λ²ν·μ μ§μνλ κ²μ΄μ§λ§ μ½κ°μ μΆκ° μμ μΌλ‘ λͺ λ Ήμ€ νμ΄νμμλ μλν©λλ€.
μ΄ λ¬Έμ μ λν΄ κΈ΄ λνκ° μμμ΅λλ€.
https://github.com/lovell/sharp/issues/30
λλ μ μ ν¬κΈ°νλ€κ° λΉνΈλ‘νΈ(bitrotted)ν λ€μ λ§μ€ν°μ λ³ν©ν μ€λΉλ₯Ό νκ³ μΌλΆ λ¬Έμ λ₯Ό ν΄κ²°νλ €κ³ νμ΅λλ€. μμ§ μ‘°κΈ λ μμ μ΄ νμν©λλ€ :/
μ¬λ¬ μ΄λ―Έμ§λ₯Ό μ€νΈλ¦¬λ°νλ κ²μ λν΄ μ΄μΌκΈ°ν κ²μ μλμ§λ§ λ©μ§ κΈ°λ₯μ΄ λ κ²μ λλ€.
μ£Όμ μμ΄λμ΄λ νμΌ νμ₯μμμ μ μΆν μ μλ κ²½μ° λ‘λ λλ μΈμ΄λ²(λλ λλ΅ νμΌ νμ)λ₯Ό μ€μ ν μ μλ€λ κ²μ λλ€. κ²μμ΄ νμν νμΌ νμμ λν΄ λ λ§μ λ¬Έμ κ° μλ€κ³ νμ νμ§λ§ μλ₯Ό λ€λ©΄ λ€μκ³Ό κ°μ΅λλ€. jpeg, png, ppmμ μ μλν©λλ€. μ΄λ λμΌν νμΌ νμμ λ΄λ³΄λ΄κ±°λ λ‘λν μ μλ μ¬λ¬ ꡬνμ΄ μλ κ²½μ°μλ μ μ©ν©λλ€. μλ₯Ό λ€μ΄ PDFλ pdfload λλ magickloadλ‘ λ‘λν μ μμ΅λλ€.
/dev/stdinμ΄ μλνλ €λ©΄ μ€νΈλ¦¬λ° νλͺ©μ΄ νμνλ€κ³ μκ°ν©λλ€. μλ₯Ό λ€μ΄ λ€μμ μ€ν¨ν©λλ€.
$ cat k2.jpg | vips jpegload /dev/stdin x.jpg
VipsJpeg: Not a JPEG file: starts with 0x87 0xe5
...
νμΌ λ‘λλ μ λ ₯μ μ¬λ¬ λ² μ΄ μ μμ κ²μΌλ‘ μμν©λλ€. μ€νΈλ¦¬λ° νλͺ©μ μ΄λ₯Ό κ°λ₯νκ² νλ μ½κΈ° λ²νΌλ₯Ό μΆκ°ν©λλ€. μ€νΈλ¦Ό νλͺ©μ λ§μ μ΄λ―Έμ§λ 보λμ€μΌ λΏμ λλ€.
μ΄κ²μ 8.9μ μΆκ°λμμ΅λλ€. μλ₯Ό λ€μ΄ μΈ μ μμ΅λλ€.
aws s3 cp s3://mybucket/input.jpg - | \
vips thumbnail_source [descriptor=0] .jpg 128 | \
aws s3 cp - s3://mybucket/output.jpg
λ¦΄λ¦¬μ€ μ 보μλ λ€μκ³Ό κ°μ μΆκ° μ λ³΄κ° μμ΅λλ€.
https://libvips.github.io/libvips/2019/12/11/What 's-new-in-8.9.html
κ°μ₯ μ μ©ν λκΈ
μ΄κ²μ 8.9μ μΆκ°λμμ΅λλ€. μλ₯Ό λ€μ΄ μΈ μ μμ΅λλ€.
λ¦΄λ¦¬μ€ μ 보μλ λ€μκ³Ό κ°μ μΆκ° μ λ³΄κ° μμ΅λλ€.
https://libvips.github.io/libvips/2019/12/11/What 's-new-in-8.9.html