水印位置默认在右上方,需要较好CPU支持(yes/no):"watermarkif[$watermark="yes"];thenread-p"输入你的水印图片存放绝对路径,例如/opt/image/watermark.jpg (格式支持jpg/png/bmp):"imageecho-e"${yellow}添加水印完成,程序将开始推流.${font}"# 循环whiletruedocd$folderforvideoin$(ls*.mp4)doffmpeg -re ...
使用Java调用FFmpeg进行推流 在Linux环境中,我们可以使用Java的ProcessBuilder来调用FFmpeg命令进行推流。下面是一个简单的示例代码,演示如何使用Java调用FFmpeg进行推流。 importjava.io.BufferedReader;importjava.io.IOException;importjava.io.InputStream;importjava.io.InputStreamReader;publicclassFFmpegPushStream{publicstat...
现在的想法是:不想因为ffmpeg推流结束后再重新开始推流的这个过程导致rtmp播放出现缓存等待,那就让ffmpeg持续运行输出数据。上面的ffmpeg命令行是通过获取输入流,再通过ffmpeg内部程序对输入流进行解封装、解码、重新编码、重新封装等操作(不知道有没有理解错误),然后进行输出,处理完毕后,程序就会结束,命令行运行完毕。那么...
killall ffmpeg killall cat 检查推流进程的脚本:check.sh #!/bin/bash proc="推流命令行"#进程名称 logfile="log.txt"whiletruedo:>$logfile #清空log文件 pid=`ps -aux | grep $proc | grep -v grep | awk '{ print $2 }'`#获取推流进程id filesize_early=`ls -l $logfile | awk '{ print $...