win7下寫批次檔(內有ffmpeg指令)

各位先進好:
小妹在win7下執行ffmpeg 影音轉圖片的工作
同樣的程序要重複好幾次,所以想寫個批次檔讓系統自己跑
檔案內容如下:

ffmpeg -i m16.mp4 (...中間參數省略...)-r 30 -y m16/d.png
ffmpeg -i m17.mp4 (...中間參數省略...)-r 30 -y m17/d.png
ffmpeg -i m18.mp4 (...中間參數省略...)-r 30 -y m18/d.png

為什麼不寫迴圈?因為迴圈指令再寫上去會超過127個字
反正我檔案10幾個,我想說複製貼上即可

-r 30 : 每秒讀出30張frames
-y m16/d.png : 輸出照片名稱 00001.png、00002.png....存在m16資料夾
同樣的command line我輸入在cmd裡面就可以照我要的執行
但是寫在筆記本裡存成.bat檔執行,它就輸出一張frame,而且名稱是:批次檔名5d.png
不知道中間花生了什麼邪術
希望有高手可指點一下
2013-11-01 17:07 發佈
Anny19 wrote:
%05d.png

在 CMD 中 %0 %1 %2 ... %9 是批次參數擴充變數
%0 會被取代為批次檔案名稱
Anny19 wrote:
它就輸出一張frame,而且名稱是:批次檔名5d.png

如果要表示 '%' 這個字元,必須寫作 "%%"
ffmpeg.exe -i movie.mkv -f image2 -vf fps=fps=30 out%%05d.png

b.bat
--------------------------------
@echo off & cd/d "%~dp0"
echo %%1: %1
echo %%2: %2
echo %%~1: %~1
echo %%~dp1: %~dp1
echo %%~n1: %~n1
echo %%~x1: %~x1
echo %%~nx1: %~nx1
--------------------------------

a.bat
--------------------------------
@echo off & cd/d "%~dp0"
call b.bat "E:\video\movie.mkv" "E:\video\anime.mkv"
pause
--------------------------------

a.bat 結果
--------------------------------
%1: "E:\video\movie.mkv"
%2: "E:\video\anime.mkv"
%~1: E:\video\movie.mkv
%~dp1: E:\video\
%~n1: movie
%~x1: .mkv
%~nx1: movie.mkv
請按任意鍵繼續 . . .
--------------------------------

http://ckk007.pixnet.net/blog/post/42731004
內文搜尋
X
評分
評分
複製連結
Mobile01提醒您
您目前瀏覽的是行動版網頁
是否切換到電腦版網頁呢?