liusuyi
2024-10-10 38f29e38fcc668171dc05c53d40a36b895c86102
ard-work/src/main/java/com/ruoyi/media/service/impl/MediaServiceImpl.java
@@ -62,13 +62,12 @@
            String webrtcUrl = "http://" + mediamtxHost + ":8889/" + name;
            Conf conf = new Conf();
            String rootPath = System.getProperty("user.dir").replaceAll("\\\\", "/") + "/server/mediamtx/";
            if (isCode.equals("1")) {
                conf.setSource("publisher");
                //默认软解码
                String cmd = "ffmpeg -rtsp_transport tcp -i " + sourceUrl + " -vcodec libx264 -preset:v ultrafast -r 25 -keyint_min 25 -g 60 -sc_threshold 0 -threads 6  -b:v 2048k -acodec opus  -strict -2 -f rtsp rtsp://localhost:$RTSP_PORT/$MTX_PATH";
                if (mode.equals("0")) {//硬解码
                    cmd = rootPath + "ffmpeg -hwaccel cuvid -c:v hevc_cuvid  -rtsp_transport tcp  -i " + sourceUrl + " -c:v h264_nvenc  -r 25 -g 60 -sc_threshold 0 -threads 6  -b:v 2048k -bf 0 -acodec opus  -strict -2 -f rtsp rtsp://localhost:$RTSP_PORT/$MTX_PATH";
                    cmd = "ffmpeg -hwaccel cuvid -c:v hevc_cuvid  -rtsp_transport tcp  -i " + sourceUrl + " -c:v h264_nvenc  -r 25 -g 60 -sc_threshold 0 -threads 6  -b:v 2048k -bf 0 -acodec opus  -strict -2 -f rtsp rtsp://localhost:$RTSP_PORT/$MTX_PATH";
                }
                conf.setRunOnDemand(cmd);
                conf.setRunOnDemandRestart(true);
@@ -104,9 +103,7 @@
            String rtspUrl = "rtsp://" + mediamtxHost + ":8554/" + name;
            String rtmpUrl = "rtmp://" + mediamtxHost + ":1935/" + name;
            String webrtcUrl = "http://" + mediamtxHost + ":8889/" + name;
            Conf conf = new Conf();
            String rootPath = System.getProperty("user.dir").replaceAll("\\\\", "/") + "/lib/mediamtx/";
            if (isCode.equals("1")) {
                conf.setSource("publisher");
                //默认软解码
@@ -331,7 +328,7 @@
    @Override
    public TableDataInfo getPullWebrtcStreamList(Integer pageNum, Integer pageSize) {
        TableDataInfo tableDataInfo = new TableDataInfo();
        WebrtcSessions WebrtcSessions = mediaClient.webrtcsessions(pageNum-1, pageSize);
        WebrtcSessions WebrtcSessions = mediaClient.webrtcsessions(pageNum - 1, pageSize);
        List<WebrtcSession> webrtcsessions = WebrtcSessions.getItems();
        webrtcsessions.stream().forEach(
                webrtcSession -> {
@@ -355,7 +352,7 @@
    @Override
    public TableDataInfo getPullRtmpStreamList(Integer pageNum, Integer pageSize) {
        TableDataInfo tableDataInfo = new TableDataInfo();
        RtmpSessions rtmpSessions = mediaClient.rtmpsessions(pageNum-1, pageSize);
        RtmpSessions rtmpSessions = mediaClient.rtmpsessions(pageNum - 1, pageSize);
        List<RtmpSession> webrtcsessions = rtmpSessions.getItems();
        webrtcsessions.stream().forEach(
                webrtcSession -> {
@@ -379,7 +376,7 @@
    @Override
    public TableDataInfo getPullRtspStreamList(Integer pageNum, Integer pageSize) {
        TableDataInfo tableDataInfo = new TableDataInfo();
        RtspSessions rtspSessions = mediaClient.rtspsessions(pageNum-1, pageSize);
        RtspSessions rtspSessions = mediaClient.rtspsessions(pageNum - 1, pageSize);
        List<RtspSession> webrtcsessions = rtspSessions.getItems();
        webrtcsessions.stream().forEach(
                webrtcSession -> {