[PHP版]製作視訊字幕 等其他 GIF 轉載
阿新 • • 發佈:2020-08-15
[PHP版]線上製作sorry 為所欲為
等其他8種的gif
GitHUb:php-sorry-gif
Demo:gifs.ga
下載:https://github.com/PrintNow/php-sorry-gif/releases
2018-04-05
- 新增上傳到
搜狗圖片
並生成外鏈,如果需要,請修改config.php
2018-04-04
- 新增
在座的各位都是垃圾
模板
2018-04-03
- 修復字幕過小問題,我把 Fontsize 改成了 38 ,在我的站點:gifs.ga,這個大小剛剛好,如果發現在你的伺服器中生成的字幕過大,請修改
templates/<template_name>/template.ass
- 真的修復了 GIF 小圖片 無法生成問題...
新增 GIF 模板非常簡單,只需要將剪輯好的視訊和配置好的字幕檔案(.ass 格式)放到templates/<template_name>/
,然後在templates/index.php
加個陣列即可(具體請看:新增 GIF 模板)。
說明
思路參考sorry,。
目前已有:
GIF 生成核心:ffmpeg
常用特效程式碼
出現在句子中的特效程式碼會對其後的字元產生影響
咕咕{\i1}{\fs40}咕咕咕{\r}咕
\n 折行 \h 空格 {\i1} 斜體 {\i0} 取消斜體 {\b1} 粗體 {\b0} 取消粗體 {\u1} 下劃線 {\u0} 取消下劃線 {\fs60} 調整字號 {\fad(100,200)} 100ms淡入,200ms淡出 {\r} 重置所有特效
目錄結構
├── cache # .gif、.ass(圖片生成後自動刪除) 快取路徑
├── templates # 模板目錄
│ └──<template name> # 視訊、字幕 模板
│ └──index.php # 模板索引
├── README.md # 說明檔案
├── api.php # 圖片生成核心、API
└── index.php # 網站首頁
準備
1. 安裝ffmpeg
依賴命令
我是參照網上的一些教程寫的,寫的可能並不全面,你可以去 Goolge、Baidu。配置時,一定要加上--enable-libass
選項
Ubuntu 下安裝ffmpeg
#需要用到x264庫
sudo apt-get install libx264-dev
#安裝依賴庫
sudo apt-get install libfaac-dev
sudo apt-get install libmp3lame-dev
sudo apt-get install libtheora-dev
sudo apt-get install libvorbis-dev
sudo apt-get install libxvidcore-dev
sudo apt-get install libxext-dev
sudo apt-get install libxfixes-dev
#下載原始碼
wget https://ffmpeg.org/releases/ffmpeg-3.4.2.tar.bz2
tar -xf ffmpeg-3.4.2.tar.bz2
cd ffmpeg-3.4.2
#配置 ffmpeg
./configure --enable-gpl --enable-version3 --enable-nonfree --enable-postproc --enable-pthreads --enable-libfaac --enable-libmp3lame --enable-libtheora --enable-libx264 --enable-libxvid --enable-x11grab --enable-libvorbis --enable-libass
#編譯安裝
make && make install
#安裝完成後執行
ffmpeg -version
#看是否安裝成功
#本安裝命令參考:http://www.cnblogs.com/arccosxy/p/3440210.html
Ubuntu
安裝中文字型
注意:如果你安裝了可以不用安裝;其他系統安裝中文字型請自行 Google、Baidu
CentOS 7 下安裝ffmpeg
yum -y install bzip2 yasm libass libass-devel
wget https://ffmpeg.org/releases/ffmpeg-3.4.2.tar.bz2
tar -xf ffmpeg-3.4.2.tar.bz2
cd ffmpeg-3.4.2
./configure --enable-libass
make && make install
#安裝完成後執行
ffmpeg -version
#看是否安裝成功
#本安裝命令摘自:https://github.com/q809198545/node-sorry
特別注意:此時生成的gif文字會亂碼,因為 CentOS 7 缺少中文字型安裝字型
使用
因為配置 PHP 環境比較複雜,所以你是初識 PHP 的話,建議使用這個Node.JS版本的,相對來說比較簡單。
- 開啟 PHP
system
函式(一般是禁用了的),可以參照這篇文章php開啟exec等函式 - 將原始碼上傳到網站根目錄
- 敬請享用!
- DEMO:點我
新增 GIF 模板
新增模板需要加入以下檔案
templates/<template_name>/template.mp4 # 視訊模板
templates/<template_name>/template-small.mp4 # [相容微信小尺寸]視訊模板
templates/<template_name>/template.ass # 字幕模板
和修改templates/index.php
檔案,有註釋
templates/index.php # 模板索引
製作字幕模板 template.ass
首先使用aegisub為模板視訊建立字幕,儲存為template.ass
(aegisub 教程可以看這個https://tieba.baidu.com/p/1360405931)
然後把文字替換成模板字串 <?=[n]=?>
LICENSE
The MIT License (MIT). Please seeLICENSEfor more information.