public override void Start() { ffmpeg.StarByte(); String s; //debug // int i = 0; byte[] temp; while (true) { if (token.token) { break; } while ((s = ffmpeg.ErrorString()) != "") { // Console.WriteLine(s); } if (ffmpeg.IsRunning) { temp = ffmpeg.Read(); if (temp == null) { continue; } } else { temp = ffmpeg.Read(); if (temp == null) { break; } } //debug // i += temp.Length; Output.Add(temp); } //debug Output.Complete(); ffmpeg.Terminate(); }
public int GetWidthFromPath(String path) { DFffmpeg ffmpeg = new DFffmpeg(GenerateArgs(path)); ffmpeg.StarByte(); String s = ""; String temp; while (true) { ffmpeg.Wait(100); temp = ffmpeg.ErrorString(); if (temp != "") { s += temp; continue; } else if ((s.Length > 0) & (!ffmpeg.IsRunning)) { break; } } ffmpeg.Terminate(); int l = s.IndexOf("Stream #"); l = s.IndexOf("yuv", l); l = s.IndexOf("x", l) + 1; int r = s.IndexOf(",", l); s = s.Substring(l, r - l); r = s.IndexOf(" "); if (r > 0) { s = s.Substring(0, r); } return(int.Parse(s)); }