public NodeFrameFromYoutube(String url, OptionsStruct opt, IPipe Output, NodeToken token) : base(null, Output) { this.opt = opt; this.token = token; InitFrameSize(); ffmpeg = new DFffmpeg(GenerateArgsFFmpeg(opt)); youtube = new DFYoutube(GenerateArgsYoutube(url)); }
public int GetWidthFromUrl(String url) { DFYoutube youtube = new DFYoutube(url); youtube.StarByte(); String s = ""; String temp; while (true) { youtube.Wait(100); temp = youtube.ReadString(); if (temp != "") { s += temp; continue; } else { temp = youtube.ErrorString(); if (temp != "") { s += temp; continue; } else if ((s.Length > 0) & (!youtube.IsRunning)) { break; } } } youtube.Terminate(); int p = s.IndexOf("(best)"); if (p <= 0) { throw new Exception("WIDTH SEARCH ERROR"); } int r, l; r = 0; while (((l = s.IndexOf(",", r + 1)) != -1) & (l < p)) { r = l; } l = r + 2; r = s.IndexOf(" ", l); s = s.Substring(l, r - l - 1); return(int.Parse(s)); }