1
wysnylc 2020 年 8 月 5 日
最近我也在搞媒体处理格式转换,但是用阿里的 api
自己做性价比低而且扩展麻烦,阿里的还挺便宜的 |
2
yuhangch 2020 年 8 月 5 日
之前也碰到了类似的问题,第一次运行正常,第二次卡住,后来,我是手动把缓冲区读出来解决的,也想听大佬聊聊究竟什么原因
|
4
john5 2020 年 8 月 5 日
用 ProcessBuilder 组装 command,每次任务重新开个线程。
|
5
fivesmallq 2020 年 8 月 5 日
|
6
aguesuka 2020 年 8 月 6 日 via Android
做过 java 调 ffmpeg 项目,把输出流和错误流重定向一个流,然后不停读就可以了。
|
7
evilrat OP @d460686680 开一个新的线程为什么可以呢?每次请求接口,不都是一个新的线程么,去调用 ffmpeg 不都会新建一个系统级的进程么。两个请求,就是两个线程,两个线程分别调用 ffmpeg 新建系统进程,怎么就会互相影响呢?
|
8
evilrat OP @aguesuka 我启动应用后,第一次调用是可以正常返回的,而且代码里调用了 process.waitFor(),也就是线程会等待 ffmpeg 进程结束才会继续往下走,接口正常返回,说明没有发生输出流错误流阻塞的问题。第二个请求怎么就不行了呢。。。还请指点
|
9
evilrat OP @fivesmallq 我是不懂为什么新建线程去调用 ffmpeg 就可以。。。我理解的每次调用接口都是一个新的线程,独立的线程分别去调 ffmpeg,会建立各自的系统级进程吧,为啥会互相影响呢?
|