Skip to content
给动图加字幕的sorry项目的java版本
Java FreeMarker Dockerfile
Branch: master
Clone or download
Latest commit 2324f68 Oct 25, 2019
Permalink
Type Name Latest commit message Commit time
Failed to load latest commit information.
src update dockerFile Oct 16, 2019
template add docker file Oct 16, 2019
.gitattributes Update .gitattributes Mar 22, 2018
.gitignore update dockerFile Oct 16, 2019
Dockerfile Update Dockerfile Oct 17, 2019
LICENSE Create LICENSE Oct 25, 2019
README.md Update README.md Oct 25, 2019
mvnw init Mar 11, 2018
mvnw.cmd init Mar 11, 2018
pom.xml add docker file Oct 16, 2019
sorry-min.gif add demo gif Oct 25, 2019

README.md

思路是参考sorry,原作是ruby写的,我就撸了个java 轮子,加了一点新功能,可以生成小一点的图片

优化点:

  • 重构首页,方便移动端和PC端访问
  • 首页素材全部CDN,加快加载速度
  • 增加精简模式,可以生成几百k的用来做表情
  • 将文件剥离出程序,可以动态切换

Demo点击查看

sorryJava

sorry的java版本 操作演示

安装步骤

docker (推荐)

首先安装 docker,不会的安装请自行百度

clone代码

git clone https://github.com/li24361/sorryJava.git

后,进入到sorry-java目录下执行

docker build -t sorry-java:v1.4 .
docker run --rm -itd --name sorryjava -e QCLOUD_ENABLE=false  -p 8888:8888 sorry-java:v1.4

访问 http://localhost;8888

centos

如果没有自己的服务器,可以去腾讯云 里面个人可以免费申请7天的服务器,如果你是学生,会有更大的惊喜。现在双十一搞活动,88一年,很划算。 选用云服务器后,安装的时候选择7,然后按照下面步骤配好centos环境。

基础环境需要安装java

centOS7下ffmpeg安装

yum install epel-release -y
rpm --import http://li.nux.ro/download/nux/RPM-GPG-KEY-nux.ro
rpm -Uvh http://li.nux.ro/download/nux/dextop/el7/x86_64/nux-dextop-release-0-5.el7.nux.noarch.rpm
yum install ffmpeg ffmpeg-devel -y

centOS7安装字体,生成中文字幕需要,否则生成时候会报错

yum groupinstall "fonts"

在服务器上建立文件夹/opt/site/cache/sorry 下载template.mp4template.ftl放进去

以上都是必须的

可以直接下载sorry-java-1.2.0.jar 然后服务器上运行 nohup java -jar sorry-java-1.2.0.jar &

访问 http://ip:8888

windows

windows下执行压制的时候,如果ass的路径是带有盘符的,会报错,可以改成读取相对路径 自己研究代码的时候,windows下面需要安装jdk&maven&git&ffmpeg

记得将ffmpeg 配置到Path下 添加E:\ffmpeg\bin; 这里要换成你的路径

修改application.properties,换成自己电脑的文件夹,例如D:/

cache.template.tempPath=/opt/site/cache/

在自己的文件夹下建立sorry文件夹 下载template.mp4template.ftl放进去

拉取源码

git clone https://github.com/li24361/sorryJava.git

导入ide

打包并运行

mvn package -DskipTests
java -jar sorry-java-1.2.0.jar

访问 http://ip:8888

macos

通过brew安装ffmpeg

brew install ffmpeg

在mac系统终端命令行里直接执行ffmpeg没有问题,但用java调用就生成gif报错。 原因是ffmpeg在linux的shell命令行下当然能执行(如果ffmpeg在/usr/bin下),但java调用的时候并不是shell模式,所以不能直接执行

解决办法: 请用完整的ffmpeg路径,另外需要使用shell命令执行。代码示例如下:

Process exec = Runtime.getRuntime().exec(new String[]{"sh", "-c", cmd}); exec.waitFor();

以上cmd变量第一个字符(参数)必须是ffmpeg的系统安装路径,

获得此路径: which ffmpeg

有问题欢迎提issue

You can’t perform that action at this time.