2014-03-05 68 views
0

我正在使用Zeranoes FFmpeg Builds for Windows,並且我可以在不安裝任何東西的情況下啓動ff-prompt。但是,如何通過Windows PowerShell啓動ff-prompt.bat?我已經嘗試了一些東西像Invoke-Expression或改變$env:Path但似乎沒有任何工作,因爲我得到的是消息如何使用Windows PowerShell啓動ffprobe

「C:\用戶\管理員> ECHO OFF

斌\ ffmpeg.exe找不到。「

甚至可以用PowerShell啓動ff-prompt嗎?每個建議/解決方案都是值得歡迎的。

我的目標是有工作的,問題是一個解決方案: http://spreadys.wordpress.com/2012/12/03/ffprobe-and-windows-powershell/

,但我想我所有的剪​​輯自動做到這一點,這就是爲什麼我需要開始ffprobe使用PowerShell。


ECHO OFF 
REM FF Prompt 1.1 
REM Open a command prompt to run ffmpeg/ffplay/ffprobe 
REM Copyright (C) 2013 Kyle Schwarz 

TITLE FF Prompt 

IF NOT EXIST bin\ffmpeg.exe (
    CLS 
    ECHO bin\ffmpeg.exe could not be found. 
    GOTO:error 
) 

CD bin || GOTO:error 
PROMPT $G 
CLS 
ffmpeg -version 
SET PATH=%CD%;%PATH% 
ECHO. 
ECHO For help run: ffmpeg -h 
ECHO For formats run: ffmpeg -formats ^| more 
ECHO For codecs run: ffmpeg -codecs ^| more 
ECHO. 
ECHO Current directory is now: "%CD%" 
ECHO The bin directory has been added to PATH 
ECHO. 

CMD /F:ON /Q /K 
GOTO:EOF 

:error 
    ECHO. 
    ECHO Press any key to exit. 
    PAUSE >nul 
    GOTO:EOF 

好吧,我想這時候東西有點不同:

$env:Path = ';C:\Users\Administrator\bin\' 
$title = "A_Day_for_Cake_and_Accidents" 
Start-Process ff-prompt.bat -ArgumentList "ffprobe -show_streams -select_streams v -print_format xml -count_frames C:\Users\Administrator\Desktop\dcp_bearbeitet\$title\$title.mov > C:\Users\Administrator\Desktop\dcp_bearbeitet\$title\totalframes.xml" 

這將創建一個名爲「totalframes.xml」,但沒有必要的信息文件,我得到的唯一的事情就是:

C:\用戶\管理員> ECHO OFF 的ffmpeg版本內置02月27 N-60959-g669043d 2014 22:01:58使用gcc 4.8.2(GCC) 配置:--enable-gpl --enable-version3 --disable -w32threads --enable-avisynth --enable-bzlib --enable-fontconfig --enable -frei0r --enable-gnutls --enable-iconv --enable-libass --enable-libbluray --enable-libcaca --enable-libfreetype --enable-libgsm --enable-libilbc --enable-libmodplug --enable -libmp3lame --enable-libopencore-amrnb --enable-libopencore-amrwb --enable-libopenjpeg --enable-libopus --enable-librtmp --enable-libschroedinger --enable-libsoxr --enable-libspeex --enable- libtheora --enable-libtwolame --enable-libvidstab --enable-libvo-aacenc --enable-libvo-amrwbenc --enable-libvorbis --enable-libvpx --enable-libwavpack --enable-libx264 --enable-libx265 --enable-libxavs --enable-libxvid --enable-zlib libavutil 52. 66.100/52. 66.100 libavcodec 55. 52.102/55. 52.102 libavformat 55. 33.100/55. 33.100 libavdevice 55. 10.100/10.100 55. libavfilter 4. 2.100/2.100 4 libswscale 2. 5.101/2 5.101 libswresample 0 18.100/0 18.100 libpostproc 52 3.100/3.100 52對於 幫助運行: ffmpeg -h 對於格式運行:ffmpeg -formats |更多 對於編解碼器運行:ffmpeg -codecs |現在越來越 當前目錄是:「C:\用戶\管理\ BIN」 bin目錄已被添加到PATH

所以基本上控制檯彈出,寫這個標準文本,不會用我的命令,其中我在-Argument-List中說過。我不知道爲什麼它忽略了我的大部分命令,除了將所有內容寫入XML文件。

+0

爲什麼需要使用PowerShell啓動批處理文件? – alroc

+0

您應該可以像調用任何其他應用程序或腳本一樣調用批處理文件。只需提供名稱(如果不在'$ Env:PATH'中,則使用路徑)。通常情況下,你永遠不需要使用'Invoke-Expression'。這個錯誤消息提示了一個寫得不好的批處理文件,但它不能從其他目錄運行,而不是從它自己的目錄運行。 – Joey

+0

bat文件的內容是什麼,你將'$ ENV:path'設置爲? – arco444

回答

0

根據我在SVN存放庫中發現的ff-prompt.bat和你的不同評論,你應該在C:\Users\Administrator\ffmpeg目錄下啓動這個.bat文件。

+0

發生了一些事情,但不是我所期望的。 PowerShell不再要求exe,我看到一個小窗口彈出一秒,然後消失。我的ff-prompt所在的路徑如下所示:'C:\ Users \ Administrator'我的bin文件夾位於相同的路徑中。我想我錯過了一些東西,因爲如果它在一秒鐘後關閉,我不能使用ff-prompt。我的第一次嘗試是這樣的:'$ env:Path ='; C:\ Users \ Administrator \ bin \'' '啓動過程ff-prompt.bat' – sebastian

0

您可以從PowerShell啓動ff-prompt.bat,如下所示。首先,將工作目錄設置爲包含ff-prompt.bat例如C:\用戶\管理員\ ffmpeg的。其次,鍵入以下內容並按回車鍵:.\ff-prompt.bat。我使用從Zeranoe下載的文件集對此進行了測試,並打開了CMD會話並顯示如下:

 
ffmpeg version N-61143-g64e4bd7 
built on Mar 7 2014 00:01:08 with gcc 4.8.2 (GCC) 
configuration: --enable-gpl --enable-version3 --disable-w32threads --enable-avisynth --enable-bzlib --enable-fontconfig 
--enable-frei0r --enable-gnutls --enable-iconv --enable-libass --enable-libbluray --enable-libcaca --enable-libfreetype 
--enable-libgsm --enable-libilbc --enable-libmodplug --enable-libmp3lame --enable-libopencore-amrnb --enable-libopencore 
-amrwb --enable-libopenjpeg --enable-libopus --enable-librtmp --enable-libschroedinger --enable-libsoxr --enable-libspee 
x --enable-libtheora --enable-libtwolame --enable-libvidstab --enable-libvo-aacenc --enable-libvo-amrwbenc --enable-libv 
orbis --enable-libvpx --enable-libwavpack --enable-libx264 --enable-libx265 --enable-libxavs --enable-libxvid --enable-z 
lib 
libavutil  52. 66.101/52. 66.101 
libavcodec  55. 52.102/55. 52.102 
libavformat 55. 33.101/55. 33.101 
libavdevice 55. 11.100/55. 11.100 
libavfilter  4. 3.100/4. 3.100 
libswscale  2. 5.101/2. 5.101 
libswresample 0. 18.100/0. 18.100 
libpostproc 52. 3.100/52. 3.100 

For help run: ffmpeg -h 
For formats run: ffmpeg -formats | more 
For codecs run: ffmpeg -codecs | more 

Current directory is now: "C:\Users\Andy\Downloads\ffmpeg-20140307-git-64e4bd7-win32-static\ffmpeg-20140307-git-64e4bd7- 
win32-static\bin" 
The bin directory has been added to PATH 

> 
+0

上述答案將重新使用PowerShell控制檯窗口爲CMD提示。如果你想在一個單獨的窗口中啓動CMD,使用'start-process。\ ff-prompt.bat' – andyb

相關問題