📄 queueentity.java
字号:
case 0: parameter.put("me" ,"dia");break; case 1: parameter.put("me", "hex");break; case 2: parameter.put("me", "umh");break; case 3: parameter.put("me", "esa");break; } parameter.put("me_range" , values.get("MERange") ); parameter.put("keyint_min" , values.get("MinGOPSize") ); parameter.put("ip_factor" , values.get("IPFactor") ); parameter.put("pb_factor" , values.get("PBFactor") ); parameter.put("chroma_qp_offset" , values.get("ChromaQPOffset") ); parameter.put("vbv_init" , values.get("VBVInitialBuffer") ); parameter.put("ratetol" , values.get("BitrateVariance") ); parameter.put("qcomp" , values.get("QuantCompression") ); parameter.put("b_bias" , values.get("BframeBias") ); parameter.put("cabac" , values.get("Cabac") ); parameter.put("weight_b" , values.get("WeightedBPrediction") ); parameter.put("b_adapt" , values.get("AdaptiveBframes") ); parameter.put("brdo" , values.get("BRDO") ); parameter.put("bime" , values.get("biME") ); parameter.put("chroma_me" , values.get("ChromaME") ); parameter.put("p8x8" , values.get("P8x8mv") ); parameter.put("b8x8" , values.get("B8x8mv") ); parameter.put("i4x4" , values.get("I4x4mv") ); parameter.put("i8x8" , values.get("I8x8mv") ); parameter.put("p4x4" , values.get("P4x4mv") ); parameter.put("b_pyramid" , values.get("BFramePyramid") ); parameter.put("deadzone_inter" , values.get("DeadZoneInter") ); parameter.put("deadzone_intra" , values.get("DeadZoneIntra") ); /*----------------------processing the string------------------------*/ String finalstr = parameter.toString() , regex = "(?<=\\D)\\b=true"; finalstr = finalstr.substring(1, finalstr.length()-1); finalstr = finalstr.replaceAll(regex, ""); //change the par=true into par regex="\\s\\w*=false,"; finalstr = finalstr.replaceAll(regex, "");//remove all false item regex="(?<=p4x4)=true"; finalstr = finalstr.replaceAll(regex, "partitions=p4x4 ");//if find p4x4=true replace it with partitions=p4x4 regex="i8x8=true"; finalstr = finalstr.replaceAll(regex, "8x8dct");//if find i8x8=true replace it with 8x8dct regex="[ipb]\\dx\\d=true"; finalstr = finalstr.replaceFirst(regex, "partitions=p8x8,b8x8,i8x8,i4x4 ");//if find p8x8 etc replace it and remove others finalstr = finalstr.replaceAll(regex, ""); regex="\\s*,\\s*(?![\\d\\w])\\s*"; finalstr = finalstr.replaceAll(regex, ":"); regex="\\b:+\\b"; finalstr = finalstr.replaceAll(regex, ":"); finalstr = finalstr.trim(); if(finalstr.indexOf(':', (finalstr.length()-3) ) != -1) { finalstr = finalstr.substring(0, finalstr.indexOf(':', (finalstr.length()-3))); } String firpas = ""; String[] temptrans= finalstr.trim().split(":"); for (int i = 0 ; i < temptrans.length ; i++) { if (temptrans[i].startsWith("me")) { firpas=firpas.concat(":" + temptrans[i]); } else if (temptrans[i].startsWith("me_range")) { firpas=firpas.concat(":" + temptrans[i]); } else if (temptrans[i].startsWith("brdo")) { firpas=firpas.concat(":" + temptrans[i]); } else if (temptrans[i].startsWith("ratetol")) { firpas=firpas.concat(":" + temptrans[i]); } else if (temptrans[i].startsWith("bitrate")) { firpas=firpas.concat(":" + temptrans[i]); } else if (temptrans[i].startsWith("partitions")) { firpas=firpas.concat(":" + temptrans[i]); } else if (temptrans[i].startsWith("qp_min")) { firpas=firpas.concat(":" + temptrans[i]); } else if (temptrans[i].startsWith("qp_step")) { firpas=firpas.concat(":" + temptrans[i]); } else if (temptrans[i].startsWith("qp_max")) { firpas=firpas.concat(":" + temptrans[i]); } else if (temptrans[i].startsWith("bframes")) { firpas=firpas.concat(":" + temptrans[i]); } else if (temptrans[i].startsWith("direct")) { firpas=firpas.concat(":" + temptrans[i]); } } firpas="pass=1:turbo"+firpas ; /*-------------------------------------------------------------------*/ /* video parameter end */ /* connect parameter */ String audioparameter = "lavc -lavcopts acodec=ac3:abitrate=96", wholeparameter = ""; wholeparameter = "mencoder " + this.inadd + " -o /dev/null " + "-oac copy " + " -ovc x264 -x264encopts " + firpas + " && " + "mencoder " + this.inadd + " -o " + this.outadd + " -oac " + audioparameter + " -ovc " + "x264 -x264encopts" + finalstr ; return wholeparameter; } /** * transform the parameter string into FFMpeg format * @return ovc options parameter of mencoder */ public String toFFMpegParameter(){ throw new java.lang.IllegalStateException("Not implemented yet"); } /** * set the next point of this queue entity * @param next */ public void setNext(QueueEntity next) { this.next = next; } /** * return the next point of this entity * @return */ public QueueEntity getNext() { return this.next; } /** * get the identity of this entity * @return */ public String getIdentity () { return this.Identity; } public String getInputAdd() { return this.inadd; } public String getOutputAdd() { return this.outadd; } /** * set the identity string of this entity the identity only identitied by the * parameter value and the input address */ private void setIdentity () { this.Identity = java.lang.String.valueOf (this.values.hashCode()) + java.lang.String.valueOf (this.inadd.hashCode() ); } }
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -