648540858
2022-08-09 eb177a67424c0f83ab02abe338dbc3cd0d49cd62
Merge pull request #570 from TristingChen/optimize--play-complete

优化--直播接口流程结束异步处理截图操作,提高接口响应速度和并发能力
1个文件已修改
8 ■■■■■ 已修改文件
src/main/java/com/genersoft/iot/vmp/service/impl/PlayServiceImpl.java 8 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/main/java/com/genersoft/iot/vmp/service/impl/PlayServiceImpl.java
@@ -11,8 +11,10 @@
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.beans.factory.annotation.Qualifier;
import org.springframework.http.HttpStatus;
import org.springframework.http.ResponseEntity;
import org.springframework.scheduling.concurrent.ThreadPoolTaskExecutor;
import org.springframework.stereotype.Service;
import org.springframework.web.context.request.async.DeferredResult;
@@ -104,6 +106,10 @@
    private ZLMHttpHookSubscribe subscribe;
    @Qualifier("taskExecutor")
    @Autowired
    private ThreadPoolTaskExecutor taskExecutor;
    @Override
@@ -135,6 +141,7 @@
        result.onCompletion(()->{
            // 点播结束时调用截图接口
            taskExecutor.execute(()->{
            // TODO 应该在上流时调用更好,结束也可能是错误结束
            String path =  "snap";
            String fileName =  deviceId + "_" + channelId + ".jpg";
@@ -151,6 +158,7 @@
                }
            }
        });
        });
        if (streamInfo != null) {
            String streamId = streamInfo.getStream();
            if (streamId == null) {