日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

ffmpeg 转换flv压缩大小_使用ffmpeg进行视频文件转换成FLV整理

發布時間:2025/3/15 编程问答 41 豆豆
生活随笔 收集整理的這篇文章主要介紹了 ffmpeg 转换flv压缩大小_使用ffmpeg进行视频文件转换成FLV整理 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

1、首先下載ffmpeg(附件即是)

2、將解壓得到的ffmpeg.exe和pthreadGC2.dll文件解壓到任何目錄(當然也可以是WebRoot中的目錄)

3、創建bat文件convertVideo.bat并添加以下內容:(參數說明見附錄一)

Txt代碼

%1\ffmpeg?-i?%2-y?-ab56-ar22050-b500-r15-s320*240%3

exit%1\ffmpeg -i %2 -y -ab 56 -ar 22050 -b 500 -r 15 -s 320*240 %3

exit

******************

%1為ffmpeg存放目錄

%2為需要轉換的文件路徑

%3為FLV文件輸出目錄

******************

同樣需要注意的是bat文件存放的路徑不能包含空格

也可以對視頻進行截取縮略圖哦:)

Txt代碼

【轉換文件格式的同時抓縮微圖】

ffmpeg?-i"test.avi"-y?-f?p_w_picpath2?-ss8-t0.001-s?350x240"test.jpg"

【對已有flv抓圖】

ffmpeg?-i"test.flv"-y?-f?p_w_picpath2?-ss8-t0.001-s?350x240"test.jpg"

****************

-ss后跟的時間單位為秒

****************【轉換文件格式的同時抓縮微圖】

ffmpeg -i "test.avi" -y -f p_w_picpath2 -ss 8 -t 0.001 -s 350x240 "test.jpg"

【對已有flv抓圖】

ffmpeg -i "test.flv" -y -f p_w_picpath2 -ss 8 -t 0.001 -s 350x240 "test.jpg"

****************

-ss后跟的時間單位為秒

****************

4、創建類

Java代碼

publicclassConvertVideo

{

privatestaticString?INPUT_PATH;

privatestaticString?OUTPUT_PATH;

privatestaticString?PROJECT_PATH;

privatestaticHashMap?fileType;

static

{

fileType?=newHashMap();

fileType.put("avi","true");

fileType.put("mpg","true");

fileType.put("wmv","true");

fileType.put("3gp","true");

fileType.put("mov","true");

fileType.put("mp4","true");

fileType.put("asf","true");

fileType.put("asx","true");

fileType.put("flv","true");

}

publicstaticvoidconvertToFLV(String?projectPath,?String?inputFile,?String?outputFile)

{

INPUT_PATH?=?inputFile;

OUTPUT_PATH?=?outputFile;

PROJECT_PATH?=?projectPath;

if(checkContentType())

processFLV();//?直接將文件轉為flv文件

}

privatestaticbooleancheckContentType()

{

String?type?=?INPUT_PATH.substring(INPUT_PATH.lastIndexOf(".")?+1,?INPUT_PATH.length()).toLowerCase();

//?ffmpeg能解析的格式:(asx,asf,mpg,wmv,3gp,mp4,mov,avi,flv等)

return"true".equals(fileType.get(type));

}

privatestaticvoidprocessFLV()

{

if(newFile(INPUT_PATH).isFile())

{

try

{

String?cmd?="cmd?/c?start?X:\\ffmpeg.bat?\""+?PROJECT_PATH?+"\"?\""+?INPUT_PATH?+"\"?\""+?OUTPUT_PATH?+"\"";

Runtime.getRuntime().exec(cmd);

}

catch(Exception?e)

{

e.printStackTrace();

}

}

}

}public class ConvertVideo

{

private static String INPUT_PATH;

private static String OUTPUT_PATH;

private static String PROJECT_PATH;

private static HashMap fileType;

static

{

fileType = new HashMap();

fileType.put("avi", "true");

fileType.put("mpg", "true");

fileType.put("wmv", "true");

fileType.put("3gp", "true");

fileType.put("mov", "true");

fileType.put("mp4", "true");

fileType.put("asf", "true");

fileType.put("asx", "true");

fileType.put("flv", "true");

}

public static void convertToFLV(String projectPath, String inputFile, String outputFile)

{

INPUT_PATH = inputFile;

OUTPUT_PATH = outputFile;

PROJECT_PATH = projectPath;

if (checkContentType())

processFLV();// 直接將文件轉為flv文件

}

private static boolean checkContentType()

{

String type = INPUT_PATH.substring(INPUT_PATH.lastIndexOf(".") + 1, INPUT_PATH.length()).toLowerCase();

// ffmpeg能解析的格式:(asx,asf,mpg,wmv,3gp,mp4,mov,avi,flv等)

return "true".equals(fileType.get(type));

}

private static void processFLV()

{

if (new File(INPUT_PATH).isFile())

{

try

{

String cmd = "cmd /c start X:\\ffmpeg.bat \"" + PROJECT_PATH + "\" \"" + INPUT_PATH + "\" \"" + OUTPUT_PATH +"\"";

Runtime.getRuntime().exec(cmd);

}

catch (Exception e)

{

e.printStackTrace();

}

}

}

}

5、測試代碼

Java代碼

publicstaticvoidmain(String[]?args)

{

ConvertVideo.convertToFLV("X:\\convertVideo","X:\\a.wmv","X:\\a.flv");

}public static void main(String[] args)

{

ConvertVideo.convertToFLV("X:\\convertVideo", "X:\\a.wmv", "X:\\a.flv");

}

6、附一個下載來的flv播放器吧(附件中下載)

Js代碼

varswf_width="100%";

varswf_height="100%";

varfiles='nba.flv';

varconfig='0:自動播放|1:連續播放|100:默認音量|0:控制欄位置|2:控制欄顯示|0x000033:主體顏色|60:主體透明度|0x66ff00:光暈顏色|0xffffff:圖標顏色|0xffffff:文字顏色|:logo文字|:logo地址|:結束swf地址';

vartexts='NBA精彩進球TOP10';

document.write('');

document.write('');

document.write('');

document.write('');

document.write('');

document.write('');

document.write('"?wmode="opaque"?FlashVars="vcastr_file='+files+'&vcastr_title='+texts+'&vcastr_config='+config+'"?menu="false"?quality="high"?width="'+swf_width+'"?height="'+swf_height+'"?type="application/x-shockwave-flash"?pluginspage="http://www.macromedia.com/go/getflashplayer"?/>');

document.write('');var swf_width="100%";

var swf_height="100%";

var files='nba.flv';

var config='0:自動播放|1:連續播放|100:默認音量|0:控制欄位置|2:控制欄顯示|0x000033:主體顏色|60:主體透明度|0x66ff00:光暈顏色|0xffffff:圖標顏色|0xffffff:文字顏色|:logo文字|:logo地址|:結束swf地址';

var texts='NBA精彩進球TOP10';

document.write('');

document.write('');

document.write('');

document.write('');

document.write('');

document.write('');

document.write('" wmode="opaque" FlashVars="vcastr_file='+files+'&vcastr_title='+texts+'&vcastr_config='+config+'" menu="false" quality="high" width="'+swf_width+'" height="'+swf_height+'" type="application/x-shockwave-flash" pluginspage="http://www.macromedia.com/go/getflashplayer" />');

document.write('');

【補充說明】如果遇到ffmpeg所涉及以外的視頻格式,可以使用其他轉換工具先轉換,例如mencoder。

附錄一(ffmpeg參數說明):

【參數】

【說明】

【示例】

-i "路徑"

指定需要轉換的文件路徑

-i "C:\nba.wmv"

-y

覆蓋輸出文件,即如果nba.xxx文件已經存在的話,直接覆蓋

控制畫面參數

-bitexac

使用標準比特率

-vcodec xvid

使用xvid壓縮

-s

指定分辨率大小

-s 320*240

-r

幀速率(非標準數值會導致音畫不同步【標準值為15或29.97】)

-r 15

-b

指定壓縮比特率

-b 1500

-qmin

設定最小質量

-qmin 10

-qmax

與-qmin相反,可以與-qmin同時使用

-qmax 30

-sameq

使用與源視頻相同的質量

控制聲音參數

-acodec aac

設定聲音編碼

-ac

設定聲道數:1為單聲道,2為立體聲

-ac 2

-ar

設定聲音采樣率(8000,11025,22050)

-ar 22050

-ab

設定聲音比特率(-ac設為立體聲時要以一半比特率來設置,比如192kbps的就設成96)

-ab 96

-vol

設定音量大小,比如設定200就會比原來的音量大2倍

-vol 200

總結

以上是生活随笔為你收集整理的ffmpeg 转换flv压缩大小_使用ffmpeg进行视频文件转换成FLV整理的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。