Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/csharp/286.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/asp.net/33.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
在asp.net razor(C#)中使用ffmpeg_C#_Asp.net_.net_Video_Ffmpeg - Fatal编程技术网

在asp.net razor(C#)中使用ffmpeg

在asp.net razor(C#)中使用ffmpeg,c#,asp.net,.net,video,ffmpeg,C#,Asp.net,.net,Video,Ffmpeg,我知道互联网上到处都是这样的问题,但我相信我的情况不同,我有一个ASP.NET网页(Razor C#)和一个完整的视频共享网站,但我仍然不明白,如何在上传页面上使用ffmpeg将视频转换为mp4和webm,而不是将原始视频保存并添加到数据库中,我希望添加转换后的版本。这是我的上传页面代码: @{ WebSecurity.RequireAuthenticatedUser(); var db = Database.Open("PhotoGallery"); var fileName = ""

我知道互联网上到处都是这样的问题,但我相信我的情况不同,我有一个ASP.NET网页(Razor C#)和一个完整的视频共享网站,但我仍然不明白,如何在上传页面上使用ffmpeg将视频转换为mp4和webm,而不是将原始视频保存并添加到数据库中,我希望添加转换后的版本。这是我的上传页面代码:

    @{
WebSecurity.RequireAuthenticatedUser();
var db = Database.Open("PhotoGallery");
var fileName = "";
var uploader = WebSecurity.CurrentUserId;
var date = DateTime.Now.Date;
var extention = "";
if(IsPost){
 var numFiles = Request.Files.Count;
 if(numFiles <= 0){
     ModelState.AddError("fileUpload", "Please specify at least one photo to upload.");
 }
 else{
     var fileSavePath = "";
        var uploadedFile = Request.Files[0];
    fileName = Path.GetFileNameWithoutExtension(uploadedFile.FileName).Trim();
    extention = Path.GetExtension(uploadedFile.FileName).Trim();
    string ndom = Path.GetRandomFileName();
    var none = ndom.Remove(ndom.Length - 4);
    fileSavePath = Server.MapPath("~/Images/userpics/" +
      none + extention);
    uploadedFile.SaveAs(fileSavePath);
    var insertCommand = "INSERT INTO Videos (FileTitle, UploadDate, UserId, ext, Name) Values(@0, @1, @2, @3, @4)";
     db.Execute(insertCommand, fileName, date, uploader, extention, none + extention);
     Response.Redirect(Href("~/Photo/View", db.GetLastInsertId()));
     }
    }
    }
<h1>Upload Video</h1>

<form method="post" enctype="multipart/form-data">
@Html.ValidationSummary("Unable to upload:")
<fieldset class="no-legend">
    <legend>Upload Photo</legend>
    @FileUpload.GetHtml(addText: "Add more files", uploadText: "Upload", includeFormTag: false)
    <p class="form-actions">
        <input type="submit" value="Upload" title="Upload photo" />
    </p>
</fieldset>
</form>

<p class="message info">
The maximum file size is 50MB.
</p>
@{
WebSecurity.RequireAuthenticatedUser();
var db=Database.Open(“PhotoGallery”);
var fileName=“”;
var uploader=WebSecurity.CurrentUserId;
var date=DateTime.Now.date;
var扩展=”;
如果(IsPost){
var numFiles=Request.Files.Count;

如果(numFiles我认为您最好的选择是按原样上传,并让脱机应用程序或服务轮询您的表以获取新记录,然后进行转换。完成后,它将使用新文件名和指示已转换的标志更新表。 我有一个类似的项目,这就是我所做的


尝试动态转换这些可能不是一个好主意。如果同时上载/转换相当多,可能会导致服务器崩溃。

你知道我可以使用哪些应用程序吗?如果使用非web可执行的应用程序,你可以循环“排队”视频并弹出命令行进行转换,或者使用o这是几种可用包装中的一种。我一直在试图找到我的包装。不幸的是,我无法公开发布。