Browse Source

视频转码条件新增:当视频文件大小大于500M时执行转码任务

沈静伟 4 years ago
parent
commit
af574b1d33

+ 21 - 10
src/dsb/com/cnd3b/restcontroller/system/system/docManage.java

@@ -226,9 +226,13 @@ public class docManage extends Controller {
                     if (obsfilename.endsWith("mp4") || obsfilename.endsWith("MP4")) {
                         MpcFactory mpcFactory = new MpcFactory();
                         MediaMetaData data = mpcFactory.getMetaData(siteid, obsfilename);
-                        if (data != null && data.getBitrate() > 0 && data.getBitrate() / 1024 > 5000) {
-                            System.err.println("开始进行视频转码:" + siteid + "," + obsfilename);
-                            mpctaskid = mpcFactory.createMpcTask(siteid, obsfilename);
+                        if (data != null) {
+                            long bitrate = data.getBitrate();
+                            long size = data.getSize();
+                            if (bitrate / 1024 > 5000 || size / (1024 * 1024) > 500) {
+                                System.err.println("开始进行视频转码:" + siteid + "," + obsfilename);
+                                mpctaskid = mpcFactory.createMpcTask(siteid, obsfilename);
+                            }
                         }
                     } else if (obsfilename.endsWith("mov") || obsfilename.endsWith("MOV")) {
                         System.err.println("开始进行视频转码:" + siteid + "," + obsfilename);
@@ -273,7 +277,6 @@ public class docManage extends Controller {
                 return getErrReturnObject().setErrMsg("找不到对应的云存储文件").toString();
             }
 
-
             /**
              * 视频转码
              */
@@ -281,9 +284,13 @@ public class docManage extends Controller {
             if (obsfilename.endsWith("mp4") || obsfilename.endsWith("MP4")) {
                 MpcFactory mpcFactory = new MpcFactory();
                 MediaMetaData data = mpcFactory.getMetaData(siteid, obsfilename);
-                if (data != null && data.getBitrate() > 0 && data.getBitrate() / 1024 > 5000) {
-                    System.err.println("开始进行视频转码:" + siteid + "," + obsfilename);
-                    mpctaskid = mpcFactory.createMpcTask(siteid, obsfilename);
+                if (data != null) {
+                    long bitrate = data.getBitrate();
+                    long size = data.getSize();
+                    if (bitrate / 1024 > 5000 || size / (1024 * 1024) > 500) {
+                        System.err.println("开始进行视频转码:" + siteid + "," + obsfilename);
+                        mpctaskid = mpcFactory.createMpcTask(siteid, obsfilename);
+                    }
                 }
             } else if (obsfilename.endsWith("mov") || obsfilename.endsWith("MOV")) {
                 System.err.println("开始进行视频转码:" + siteid + "," + obsfilename);
@@ -407,9 +414,13 @@ public class docManage extends Controller {
                 if (obsfilename.endsWith("mp4") || obsfilename.endsWith("MP4")) {
                     MpcFactory mpcFactory = new MpcFactory();
                     MediaMetaData data = mpcFactory.getMetaData(siteid, obsfilename);
-                    if (data != null && data.getBitrate() > 0 && data.getBitrate() / 1024 > 5000) {
-                        System.err.println("开始进行视频转码:" + siteid + "," + obsfilename);
-                        mpctaskid = mpcFactory.createMpcTask(siteid, obsfilename);
+                    if (data != null) {
+                        long bitrate = data.getBitrate();
+                        long size = data.getSize();
+                        if (bitrate / 1024 > 5000 || size / (1024 * 1024) > 500) {
+                            System.err.println("开始进行视频转码:" + siteid + "," + obsfilename);
+                            mpctaskid = mpcFactory.createMpcTask(siteid, obsfilename);
+                        }
                     }
                 } else if (obsfilename.endsWith("mov") || obsfilename.endsWith("MOV")) {
                     System.err.println("开始进行视频转码:" + siteid + "," + obsfilename);

+ 8 - 7
src/dsb/com/cnd3b/utility/obs/mpc/MpcFactory.java

@@ -3,6 +3,7 @@ package com.cnd3b.utility.obs.mpc;
 import com.alibaba.fastjson.JSON;
 import com.alibaba.fastjson.JSONArray;
 import com.alibaba.fastjson.JSONObject;
+import com.cnd3b.common.parameter.parameter;
 import com.google.gson.Gson;
 import com.huawei.mpc.client.MpcClient;
 import com.huawei.mpc.client.MpcConfig;
@@ -20,13 +21,13 @@ public class MpcFactory {
 
     public MpcFactory() {
         mpcConfig = new MpcConfig();
-        mpcConfig.setEndPoint("mpc.cn-east-2.myhuaweicloud.com");// 设置转码节点地址
+
+        mpcConfig.setEndPoint(parameter.Bucket_endPoint());// 设置转码节点地址
         mpcConfig.setProjectId("0770870e5900265f2f60c00b589e3ff6");// 设置用户项目编号ProjectId
         //mpcConfig.setSk(parameter.Bucket_sk());// 设置sk
         //mpcConfig.setAk(parameter.Bucket_ak());// 设置ak
-
-        mpcConfig.setSk("9EUAXeFmxKjJ5x12lYVTzCCUuIQIjrO6VAyzGr9u");// 设置sk
-        mpcConfig.setAk("EKJMDXUVJLBGDRCVVVLP");// 设置ak
+        mpcConfig.setSk(parameter.Bucket_sk());// 设置sk
+        mpcConfig.setAk(parameter.Bucket_ak());// 设置ak
     }
 
 
@@ -220,9 +221,9 @@ public class MpcFactory {
                     if (taskId.equalsIgnoreCase(object.getString("task_id"))) {
                         MpcFile mpcFile = new MpcFile();
                         mpcFile.setTask_id(taskId);
-                        if((object.getJSONArray("output_file_name").isEmpty())){
+                        if ((object.getJSONArray("output_file_name").isEmpty())) {
                             return null;
-                        }else {
+                        } else {
                             mpcFile.setOutput_file_name(object.getJSONArray("output_file_name").getString(0));
                         }
                         JSONObject outputObject = object.getJSONObject("output");
@@ -270,7 +271,7 @@ public class MpcFactory {
                     JSONArray videoArray = metadataObject.getJSONArray("video");
                     Iterator it = videoArray.iterator();
                     while (it.hasNext()) {
-                        JSONObject videoObjcet =(JSONObject) it.next();
+                        JSONObject videoObjcet = (JSONObject) it.next();
                         mediaMetaData.setCodec(videoObjcet.getString("codec"));
                         mediaMetaData.setFrameRate(videoObjcet.getIntValue("frameRate"));
                         mediaMetaData.setWidth(videoObjcet.getIntValue("width"));