[.NET] 請教process操作cmd使用ffmpeg

看板Visual_Basic作者 (cchug)時間5年前 (2019/10/11 00:27), 編輯推噓0(000)
留言0則, 0人參與, 最新討論串1/1
請輸入專案類型(網站專案或者應用程式專案):網站專案 各位高手好,小弟最近打算寫一個網站, 提供上傳影片後由後端操作cmd由ffmpeg處理, 生成.m3u8列表可供串流使用, 但在操作cmd這段遇到了困難, 我利用process操作cmd後,輸入ffmpeg指令 && exit, 然後回傳cmd的窗口內容,結果只有指令被輸入, 並沒有被執行,請問各位高手能指點一下迷津嗎? 程式碼: Dim fileName As String = "borderoflife" Dim file As String = "borderoflife.mp4" Dim appPath As String = "C:\allen0916\" Dim saveDir As String = "test2\" Dim savePath As String = appPath & saveDir Dim saveResult As String = savePath & file Dim Content_Type_A As String = "video/mp4" '生成M3U8文件 Dim m3u8Path As String = Path.Combine(savePath, fileName + ".m3u8") Dim para As String = String.Format("ffmpeg -i {0} -profile:v baseline -level 3.0 -s 640x360 -start_number 0 -hls_time 10 -hls_list_size 0 -f hls {1} ", saveResult, m3u8Path) Dim output As String = "none"'可以輸出output查看具體報錯原因 Dim p As Process = New Process() p.StartInfo.FileName = "cmd.exe" p.StartInfo.UseShellExecute = False '是否使用操作系統shell啓動 p.StartInfo.RedirectStandardInput = True '接受來自調用程序的輸入信息 p.StartInfo.RedirectStandardOutput = True '由調用程序獲取輸出信息 p.StartInfo.RedirectStandardError = True '重定向標準錯誤輸出 p.StartInfo.CreateNoWindow = False '不顯示程序窗口 p.Start() '啓動程序 p.StandardInput.WriteLine(para) '向cmd窗口發送輸入信息 p.StandardInput.WriteLine("exit") p.StandardInput.AutoFlush = True p.StandardInput.Close() '等待程序執行完退出進程 output = p.StandardOutput.ReadToEnd() '獲取cmd窗口的輸出信息 p.WaitForExit() p.Close() '檢測是否已生成M3U8文件 If System.IO.File.Exists(m3u8Path) <> True Then context.Response.Write(output) Else context.Response.Write("Success") End If 但是結果output輸出的內容只有: Microsoft Windows [版本 10.0.17763.107] (c) 2018 Microsoft Corporation. 著作權所有,並保留一切權利。 c:\windows\system32\inetsrv>ffmpeg -i C:\allen0916\test2\borderoflife.mp4 -profile:v baseline -level 3.0 -s 640x360 -start_number 0 -hls_time 10 -hls_list_size 0 -f hls C:\allen0916\test2\borderoflife.mp4.m3u8 c:\windows\system32\inetsrv>exit 很明顯,指令沒有被執行,請問各位高手能解釋一下嗎?謝謝。 -- ※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 118.171.239.206 (臺灣) ※ 文章網址: https://www.ptt.cc/bbs/Visual_Basic/M.1570724848.A.EA5.html
文章代碼(AID): #1Tdrlmwb (Visual_Basic)
文章代碼(AID): #1Tdrlmwb (Visual_Basic)