[go: up one dir, main page]

Skip to content

archana-agrawal/sorryJava

 
 

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

74 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

思路是参考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

About

给动图加字幕的sorry项目的java版本

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages

  • Java 85.9%
  • FreeMarker 9.7%
  • Dockerfile 4.4%