2011-09-16 178 views
0

我想要一個jsfl腳本將視頻導入到我的.fla項目中並自動將整個導出爲.swf是否可以在導入時禁用視頻嚮導視頻?我討厭每次都必須手動確認所有選項。視頻格式爲.flv,如果有任何區別CS5.5通過jsfl無視頻導入導入視頻

+0

如果您想要將視頻導入swf以供播放,爲何不使用FLVPlayback組件和一行代碼從FlashVars獲取flv/f4v/mov文件的路徑並將其傳遞給播放器?爲什麼您需要將視頻導入FLA? –

+0

喬治,聽起來好像我會在視頻中傳輸視頻,而且我希望將視頻包含在最終的.swf文件中,以儘量減少視頻開始播放後的任何錯誤和潛在加載時間。我試圖導入的剪輯只有3秒鐘長,所以它可以很好地工作,嵌入在.swf – CodedMonkey

回答

2

AFAIK您無法直接繞過FLV導入對話框(使用JSFL API)。

我試過使用Sikuli腳本自動化FLV導入嚮導。 該腳本可以使用未公開的FLfile.runCommandLine()從JSFL運行。

我使用的是OSX,因此我不確定下一部分是否也適用於Windows。 如果我運行sikuli +直接在腳本:

FLfile.runCommandLine("/Applications/Sikuli-IDE.app/Contents/MacOS/JavaApplicationStub /Users/george/Documents/sikuli/importFLV.skl"); 

Flash將等待它運行,然後繼續導入FLV這是一個問題。由於Import FLV對話框永遠不會出現,因此Sikuli腳本將超時。

不過,我可以運行這個命令:

FLfile.runCommandLine("open -a /Applications/Sikuli-IDE.app/Contents/MacOS/JavaApplicationStub /Users/george/Documents/sikuli/importFLV.skl"); 

,這似乎打開應用程序的窗口和異步運行腳本,這是偉大的。然後我運行導入。 的Sikuli腳本:

  1. 等待淡出(失焦)對話框
  2. 點擊得到集中
  3. 點擊嵌入FLV的SWF和時間表發揮選項
  4. 等待選擇正確選項的對話框
  5. 點擊繼續
  6. 等待下一個屏幕
  7. 點擊繼續
  8. 等待下一個屏幕
  9. 點擊完成

而且,我的機器上,該腳本總是工作時,我曾SikuliIDE開放(無特定腳本)和最小化。

完整的測試腳本導入的視頻看起來是這樣的:

var doc = fl.getDocumentDOM(); 
FLfile.runCommandLine("open -a /Applications/Sikuli-IDE.app/Contents/MacOS/JavaApplicationStub /Users/george/Documents/sikuli/importFLV.skl"); 
var path = FLfile.platformPathToURI('Users/george/Desktop/cuePointTest_1.flv'); 
doc.importFile(path); 

您可以找到運行here腳本的記錄。在運行JSFL腳本之後,剩餘的點擊由Sikuli處理。您也可以下載source scriptSikuli executable script作爲我的設置,但我想它會在您的設置上有所不同。 Sikuli易於使用:輸入命令,進入您的應用程序並按CMD/Ctrl + Shift + 2獲取快照並繼續。

如果這可以爲​​您的工作做好準備,那麼您可以修改sikuli腳本,等待一段時間來爲序列中的下一個視頻執行點擊操作,而Flash會加載一個新文檔。應該有其他解決方法來管理視頻列表,但如果此解決方案適用於您的設置,則這很有意義。

+0

我最終只是將視頻嵌入到.fla文件中。原來那些視頻將貫穿我的所有Flash視頻:D。你的回答太透徹了,雖然不接受:) – CodedMonkey

+0

非常酷,喬治。 –

+0

您是否在多臺機器/操作系統上測試過Sikuli腳本? –