public OutputPackage ConvertToFLV(MemoryStream inputFile, string Filename) { string tempfile = Path.Combine(this.WorkingPath, System.Guid.NewGuid().ToString() + Path.GetExtension(Filename)); FileStream fs = File.Create(tempfile); inputFile.WriteTo(fs); fs.Flush(); fs.Close(); GC.Collect(); VideoFile vf = null; try { vf = new VideoFile(tempfile); } catch (Exception ex) { throw ex; } OutputPackage oo = ConvertToFLV(vf); try { File.Delete(tempfile); } catch (Exception) { } return(oo); }
public OutputPackage ConvertToFLV(string inputPath) { VideoFile vf = null; try { vf = new VideoFile(inputPath); } catch (Exception ex) { throw ex; } OutputPackage oo = ConvertToFLV(vf); return(oo); }
public OutputPackage ConvertToFLV(VideoFile input) { if (!input.infoGathered) { GetVideoInfo(input); } OutputPackage ou = new OutputPackage(); //set up the parameters for getting a previewimage string filename = System.Guid.NewGuid().ToString() + ".jpg"; int secs; //divide the duration in 3 to get a preview image in the middle of the clip //instead of a black image from the beginning. secs = (int)Math.Round(TimeSpan.FromTicks(input.Duration.Ticks / 3).TotalSeconds, 0); string finalpath = Path.Combine(this.WorkingPath, filename); string Params = string.Format("-i {0} {1} -vcodec mjpeg -ss {2} -vframes 1 -an -f rawvideo", input.Path, finalpath, secs); string output = RunProcess(Params); ou.RawOutput = output; if (File.Exists(finalpath)) { ou.PreviewImage = LoadImageFromFile(finalpath); try { File.Delete(finalpath); } catch (Exception) { } } else { //try running again at frame 1 to get something Params = string.Format("-i {0} {1} -vcodec mjpeg -ss {2} -vframes 1 -an -f rawvideo", input.Path, finalpath, 1); output = RunProcess(Params); ou.RawOutput = output; if (File.Exists(finalpath)) { ou.PreviewImage = LoadImageFromFile(finalpath); try { File.Delete(finalpath); } catch (Exception) { } } } finalpath = Path.Combine(this.WorkingPath, filename); filename = System.Guid.NewGuid().ToString() + ".flv"; Params = string.Format("-i {0} -y -ar 22050 -ab 64 -f flv {1}", input.Path, finalpath); output = RunProcess(Params); if (File.Exists(finalpath)) { ou.VideoStream = LoadMemoryStreamFromFile(finalpath); try { File.Delete(finalpath); } catch (Exception) { } } return(ou); }
public OutputPackage ConvertToFLV(VideoFile input) { if (!input.infoGathered) { GetVideoInfo(input); } OutputPackage ou = new OutputPackage(); //set up the parameters for getting a previewimage string filename = System.Guid.NewGuid().ToString() + ".jpg"; int secs; //divide the duration in 3 to get a preview image in the middle of the clip //instead of a black image from the beginning. secs = (int)Math.Round(TimeSpan.FromTicks(input.Duration.Ticks / 3).TotalSeconds, 0); string finalpath = Path.Combine(this.WorkingPath, filename); string Params = string.Format("-i {0} {1} -vcodec mjpeg -ss {2} -vframes 1 -an -f rawvideo", input.Path, finalpath, secs); string output = RunProcess(Params); ou.RawOutput = output; if (File.Exists(finalpath)) { ou.PreviewImage = LoadImageFromFile(finalpath); try { File.Delete(finalpath); } catch (Exception) { } } else { //try running again at frame 1 to get something Params = string.Format("-i {0} {1} -vcodec mjpeg -ss {2} -vframes 1 -an -f rawvideo", input.Path, finalpath, 1); output = RunProcess(Params); ou.RawOutput = output; if (File.Exists(finalpath)) { ou.PreviewImage = LoadImageFromFile(finalpath); try { File.Delete(finalpath); } catch (Exception) { } } } finalpath = Path.Combine(this.WorkingPath, filename); filename = System.Guid.NewGuid().ToString() + ".flv"; Params = string.Format("-i {0} -y -ar 22050 -ab 64 -f flv {1}", input.Path, finalpath); output = RunProcess(Params); if (File.Exists(finalpath)) { ou.VideoStream = LoadMemoryStreamFromFile(finalpath); try { File.Delete(finalpath); } catch (Exception) { } } return ou; }