作者hugct (cchug)
看板Visual_Basic
标题[.NET] 请教process操作cmd使用ffmpeg
时间Fri Oct 11 00:27:26 2019
请输入专案类型(网站专案或者应用程式专案):网站专案
各位高手好,小弟最近打算写一个网站,
提供上传影片後由後端操作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://webptt.com/cn.aspx?n=bbs/Visual_Basic/M.1570724848.A.EA5.html