1、由于项目既需要USB串口通讯,又要用ffmpeg推流,所以选择64位操作系统:
2、官方烧写工具下载地址
3、烧写工具下载完成后,
选择最底下的
然后再选择下载的系统镜像
4、选择TF卡
5、Write!
6、烧录完成后,在boot里添加SSH空文件
7、使用XShell连接
8、测试ffmpeg命令
ffmpeg
正常状态如下图所示:
参考rtsp转推rtmp命令如下:
ffmpeg -i "rtsp://192.168.144.108:554/stream=0" -vcodec copy -acodec copy -f flv "rtmp://localhost/oflaDemo/hello"
9.开启SSH远程root
(1)修改root密码
sudo passwd root
(2)解锁root用户
sudo passwd -u root
(3)修改配置文件
sudo nano /etc/ssh/sshd_config
修改内容
PermitRootLogin prohibit-password --> PermitRootLogin yes
(4)重启(必须)
10、安装jdk11
sudo apt install default-jdk
说明:
1、由于pi4j的1.4版本才支持64位操作系统,且必须jdk11才能正常使用
2、安装jdk11时JRE_HOME需要与JDK_HOME一致
3、jdk11不自带jre,需要自己生成,命令如下(可能不需要)
jlink --module-path jmods --add-modules java.desktop --output jre
编辑配置文件:
sudo nano /etc/profile
在文件底部追加如下内容
export JAVA_HOME=/home/pi/jdk11
export JRE_HOME=/home/pi/jdk11
export CATALINA_HOME=/cloud/tomcat9
export CLASSPATH=.:$JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib/tools.jar
export PATH=$JAVA_HOME/bin:$CATALINA_HOME/bin:$PATH
最后执行如下命令使之生效
source /etc/profile
11、安装tomcat9
(1)catalina.sh添加如下内容,可以用idea来远程部署(注意修改ip地址):
export CATALINA_OPTS="-Dcom.sun.management.jmxremote \
-Dcom.sun.management.jmxremote.port=1099 \
-Dcom.sun.management.jmxremote.ssl=false \
-Dcom.sun.management.jmxremote.authenticate=false \
-Djava.rmi.server.hostname=192.168.50.85"
export JAVA_OPTS="-Dcom.sun.management.jmxremote \
-Dcom.sun.management.jmxremote.port=1099 \
-Dcom.sun.management.jmxremote.ssl=false \
-Dcom.sun.management.jmxremote.authenticate=false \
-Dcom.sun.management.jmxremote.rmi.port=1099"
(2)解决启动慢的问题:catalina.sh文件中搜索这句话
JAVA_OPTS="$JAVA_OPTS -Djava.protocol.handler.pkgs=org.apache.catalina.webresources"
双引号内追加
-Djava.security.egd=file:/dev/urandom
即
JAVA_OPTS="$JAVA_OPTS -Djava.protocol.handler.pkgs=org.apache.catalina.webresources -Djava.security.egd=file:/dev/urandom"
(2)setclasspath.sh添加如下内容:
export JAVA_HOME=/home/pi/jdk11
export JRE_HOME=/home/pi/jdk11
(3)创建自启动服务
sudo nano /etc/init.d/tomcat
脚本内容如下:
#!/bin/bash
### BEGIN INIT INFO
# Provides: Auto_Start_Test
# Required-Start: $remote_fs
# Required-Stop: $remote_fs
# Default-Start: 2 3 4 5
# Default-Stop: 0 1 6