eguid / FFCH4J

FFCH4J项目全称:FFmpeg命令处理器(原用名FFmpegComandHandler4java,FFmpeg命令行运行管理器)。不仅仅只是跨平台的ffmpeg命令执行、停止、查询功能的处理器,还是跨平台的命令行操作处理器
http://blog.csdn.net/eguid_1/article/details/52968220
Apache License 2.0
507 stars 225 forks source link

摄像头断网问题 #21

Open Druid115 opened 4 years ago

Druid115 commented 4 years ago

您好,我搭建了一个推流服务器,并部署了您的代码,能够成功运行。但当摄像头断电断网时,ErrorStream 没有任何输出,代码会阻塞在readLine 处,无法将任务提交到保活处理器。我使用的ffmpeg版本是2.8.15,请问您遇到过这个问题吗?有什么解决方案吗?

eguid commented 4 years ago

目前代码中判断状态的方式只有根据错误状态这一种方式,但是这种方式是有局限性的,比如:没有错误输出时是没办法保活的。 因为设计之初就因为预料到了会出现一些定制化需要以及难以预估的特殊处理,所以这块预留了充分的自定义权限。你可以在阻塞的输出线程中ping源视频地址和目标地址,然后根据结果判断是否把这个任务交给保活处理器进行重启就可以解决这个问题。

Druid115 commented 4 years ago

感谢您的建议。