你站正式進入全面動態 Emoji 時代,處於世界領先地位

谈笑风生 194 views 10 replies
admin
#1 ·

tl;dr;
modify Discourse container yaml's run block.

run:
  - exec: echo "Beginning of custom commands"
  - exec: sudo apt-get install zstd
  - exec: wget https://xjtu.app/uploads/blob/c0/c5/c0c5750785d93fadc478709a83d016df5a760d5e243965b4168126e3beff81b0.zst -O /var/www/discourse/public/images/emoji/noto.tar.zst
  - exec: tar xf /var/www/discourse/public/images/emoji/noto.tar.zst -C /var/www/discourse/public/images/emoji/
  - exec: mv /var/www/discourse/public/images/emoji/noto-animated-emojis-discourse-names-72x72-avif/* /var/www/discourse/public/images/emoji/noto/
  - exec: echo "End of custom commands"

經過管理員 2 晚上的努力,將 451 個 Goole Noto Animated Emojis 導入到你站,標誌著你站正式全面進入動態 Emoji 時代。

animated-emoji-picker|video

如何實現?

Discourse 的 emoji 文件都保存在 /var/www/discourse/public/images/emoji/twemoji/ 目錄下

Noto Animated Emojis 網站提供 Lottie/GIF/WebP 下載,但存在文件大小過大的問題。

例如 Pig 🐖 的 Webp 440 KiB, GIF 482 KiB(512x512),而常規靜態 Emoji(72x72)大小往往 $ \lessapprox $ 1 KiB,所以需要轉碼減少文件大小。

ffmpeg -i pig.gif -c:v libsvtav1 -s 72x72 pig-svtav1.avif

可以獲得 11KiB 的 AVIF 格式動圖。但 ffmpeg AV1 相關的編碼器都不支持不夠明度,獲得的圖片背景變成了白色。
pig-svtav1|72x72

諮詢了高人(Claude),可以用 avifenc 這個工具保留 GIF 的透明背景。

ffmpeg -i gifs/pig.gif -s 72x72 -vf "format=yuva444p" -f yuv4mpegpipe -strict -1 - | avifenc --stdin --fps 33.33 -q 40 -c rav1e -s 0 /tmp/pig-yuva.avif

經過試驗,僅 rav1e/libaom 支持透明度(yuva444p),rav1e 速度較快。-s 0設置速度為最慢以獲得更好的壓縮效果,但不明顯:17K vs 16K。

在 q=40 的質量參數下,圖片大小為 16KiB(相较于 ffmpeg svtav1 的方式体积略大)
pig-yuva|72x72

以下為所有壓縮後的 Animated Emoji 合集(AVIF 後綴被重命名為了 PNG)
noto-animated-emojis-discourse-names-72x72-avif.tar.zst|attachment (2.5 MB)

❤️🥳️😍️💯️pig2
15
admin
#2 · (edited)

あなたはそれが好きですか?

  • はい
  • いいえ
❤️pig2
2
#3 ·

没看到诶?在哪里啊

长恨此身非我有 何时忘却营营

❤️🐣️
2
admin
#4 ·
青年杰出贡献上交大門人 紫金港第一皮革<・)))><<

由於 /images/emoji route 下的 header 設置了 cache...

    # cache emojis
    location ~ /images/emoji/ {
      expires 1y;
      add_header Cache-Control public,immutable;
      add_header Access-Control-Allow-Origin *;
    }

...需要強制刷新(桌面瀏覽器快捷鍵:Ctrl+F5) / 清除緩存

❤️
1
#5 · (edited)

黑暗模式下,背景填充色为白色,有点难看(
IMG_5921|230x500

ぜーんぶ弾けなーい!

❤️plus1
6
admin
#6 ·
Soyo34325 Soyo34325

我的桌面&行動瀏覽器均未出現,標題圖片為透明背景 AVIF

#7 ·
anonymous_coward:

諮詢了高人(Claude)

admin 是用免费版本还是开会员还是调 api 呀🤔

此人不语,只是一味地在门里生产废料。

admin
#8 ·
兴庆宫第一迷路幽灵 post deleted by author

保密

#10 ·
IO IO

疑似是 Safari 的问题
image|690x431

奇怪的问题,我这里查看图片元素也是被填充了的,Chrome 木有任何问题

image|690x431

从 Safari 下载下来的图片是这样的:

image|690x415

ぜーんぶ弾けなーい!

❤️😍️plus1
6
#11 ·

/lgtm

❤️rolling_on_the_floor_laughing_kissing_heart
2
#12 ·

霍霍 这也能做