最近很火「sorry隨心所欲gif」的node版

最近很火的sorry在線製做gif的node版本,創意來自Xuty的ruby原版,本文檔亦有參考原文檔。html

node-sorry倉庫java

線上演示地址node

有問題歡迎提issue,喜歡項目的請star,謝謝!python

圖片

項目說明

  • 服務端採用 koa + fluent-ffmpeg,生成字幕和gif存在cache目錄
  • api用RESTful規範
  • 頁面採用ejs渲染,構建腳本build.js,生成頁面和資源在dist目錄
  • 項目配置在config.js中(部署請刪掉或替換統計代碼)

源碼結構

├── package
├── package.lock
├── common                  # 工具類
├── server                  # node源碼
├── view                    # 頁面源碼
├── template                # gif模板
├── config.js               # 配置
├── build.js                # 頁面構建腳本
├── README.md
└── cache                   # gif和字幕緩存

其餘版本

API

製做GIF:git

POST {host}/api/{template_name}/
{
    subtitle:['好啊',.....]
}

# 返回GIF的hash
-> 200 
{
  status: 200,
  data: 'c2f4069ed207dc38e0f2d9359a2fa6b7'
}

獲取GIF:github

GET {host}/api/{template_name}/{gif_hash}

目前支持的template_name有:npm

- sorry
- wangjingze

部署指南

安裝

npm i

@ffmpeg-installer/ffmpeg有可能裝不上,多裝npm i幾回小程序

構建頁面

npm run build

部署

本地開發用npm run serversegmentfault

線上部署用推薦使用pm2管理,先安裝npm i pm2 -g,再pm2 start server/index.js啓動項目便可微信小程序

製做字幕模板template.ass

首先使用aegisub爲模板視頻建立字幕,保存爲template.ass(aegisub教程能夠看這個 https://tieba.baidu.com/p/136...
圖片

而後把文本替換成模板字符串 <%= sentences[n] %>
圖片

相關文章
相關標籤/搜索