我们可以将视频文件转换为所有这些格式(swf,3gp,mp4,flv,ogv)吗?

时间:2014-04-25 07:18:57

标签: asp.net video converter

考虑user1上传swf文件, user2上传一个flv, 用户3上传mp4文件, 用户4上传3gp文件,

并且为了显示跨浏览器,我们需要这种格式的上述文件(swf,3gp,mp4,flv,ogv) 一旦用户在 asp.net

中上传他/她的文件,怎么办呢?

谢谢@ Florestan06 我只是测试这段代码

    protected void Button1_Click(object sender, EventArgs e)
{
    string AppPath = Request.PhysicalApplicationPath;
    //This is the path of your application
    string inputPath = AppPath + "ffmpeg\\" + "tizer.mp4";
    //Source Video Path
    string outputPath = AppPath + "outputFolder\\" + "myVideoOutput.flv";
    //Destination Video Path
    string fileargs = " -i \"" + inputPath + "\" \"" + outputPath + "\"";
    //Command Line
    System.Diagnostics.Process proc = new System.Diagnostics.Process();
    proc.StartInfo.FileName = AppPath + "ffmpeg\\ffmpeg.exe";
    //Path of FFMPEG
    proc.StartInfo.Arguments = fileargs;
    proc.StartInfo.UseShellExecute = false;
    proc.StartInfo.CreateNoWindow = false;
    proc.StartInfo.RedirectStandardOutput = false;
    proc.Start();
}

它将tizer.mp4转换为flv,但现在它的大小为0字节。你有什么想法吗?

1 个答案:

答案 0 :(得分:0)

我建议您在服务器上安装ffmpeg,然后拨打ffmpeg commands through .NET。这样,您可以处理输入文件到所需输出的不同转码。这当然是上传完成后。

虽然我不确定为什么你需要同时拥有SWF和FLV - FLV应该足够基于闪存的环境?有关详细信息,请查看here

编辑它将tizer.mp4转换为flv,但现在它的大小为0字节。你有什么想法吗?

首先,您需要了解ffmpeg的基础知识,以便转码为您要定位的不同输出。您可以启动here并深入了解ffmpeg documentation。首先确保您的命令在终端/命令提示符中有效。

一旦这样可以,我建议你对.Net / ffmpeg脚本的输出进行详细说明,试图捕获/记录该过程的任何主要步骤。我只是指出了如何从.Net执行和外部程序的示例。我猜你可以在Stackoverflow或MSDN社区找到其他例子,如果这个例子没有按预期的那样工作。

输出0字节输出文件或者建议您的ffmpeg命令无效,或者您的脚本执行ffmpeg时出现问题。