在获取某音直播流的时候,不能只靠监控直播间给的流,先判断流是否可以使用,如果不能使用,就停止录制。
流错误返回 数据有 Server returned 404 Not Found
正确就开始录制下载。
//下面写法
public bool 判断流是否有效(string p流地址)
{
bool result = true;
string 返回值 = CommFunc.FFmpegSenCommand(" -i " + p流地址);
if (返回值.Contains("Server returned 404 Not Found"))
{
result = false;
}
return result;
}
public static string FFmpegSenCommand(string pCommand)
{
using (System.Diagnostics.Process ffmpeg = new System.Diagnostics.Process())
{
StreamReader errorreader;
ffmpeg.StartInfo.UseShellExecute = false;
ffmpeg.StartInfo.WindowStyle = System.Diagnostics.ProcessWindowStyle.Hidden;
ffmpeg.StartInfo.RedirectStandardError = true;
ffmpeg.StartInfo.FileName = CommFunc.Get_ffmpegPash();
ffmpeg.StartInfo.Arguments = pCommand;
ffmpeg.StartInfo.CreateNoWindow = true;// 不显示程序窗口
ffmpeg.StartInfo.StandardErrorEncoding = Encoding.UTF8;
ffmpeg.Start();
errorreader = ffmpeg.StandardError;
ffmpeg.WaitForExit();
return errorreader.ReadToEnd();
}
}