C# 如何使用asp.net转换多比特率的视频

C# 如何使用asp.net转换多比特率的视频,c#,jquery,asp.net,video-streaming,video-processing,C#,Jquery,Asp.net,Video Streaming,Video Processing,我想用不同的比特率播放一个视频。就像我上传了一个1080P分辨率的视频一样,我想播放720P、480P、360P、240P、144P等分辨率的视频。 我希望此解决方案在asp.net中使用C# 像youtube一样,它提供了观看不同分辨率视频的功能 请帮我解决这个问题 我尝试了以下代码,但不起作用: using Softpae.Media; namespace ConsoleTest { class Program { static void Main(string[] args)

我想用不同的比特率播放一个视频。就像我上传了一个1080P分辨率的视频一样,我想播放720P、480P、360P、240P、144P等分辨率的视频。 我希望此解决方案在asp.net中使用C#

像youtube一样,它提供了观看不同分辨率视频的功能

请帮我解决这个问题

我尝试了以下代码,但不起作用:

using Softpae.Media;
namespace ConsoleTest
{
class Program
{
    static void Main(string[] args)
    {
        Job2Convert myJob = new Job2Convert();
        MediaServer ms = new MediaServer();
        myJob.pszSrcFile = "E:\\EhabVideoLibrary\\videos\\sinbad.mkv";
        myJob.pszDstFile = "E:\\EhabVideoLibrary\\videos\\sinbad.mp4";

        myJob.pszDstFormat = "mp4";
        myJob.pszAudioCodec = "aac";

        myJob.nAudioChannels = 2;
        myJob.nAudioBitrate = -1;
        myJob.nAudioRate = -1;

        myJob.pszVideoCodec = "h264";

        myJob.nVideoBitrate = -1;
        myJob.nVideoFrameRate = -1;
        myJob.nVideoFrameWidth = -1;
        myJob.nVideoFrameHeight = -1;   

        bool ret = ms.ConvertFile(myJob);            
    }
}

}您可以使用FFmpeg项目的FFplay。(ffmpeg.org)使用ffmpeg,几乎可以以您想要的分辨率对每个编解码器进行编码和转码。本文介绍了使用C语言的命令行应用程序的使用

我从未尝试过,但也有使用FFmpeg为.NET提供的库,如下所示:

  • ffmpegdotnet.codeplex.com
  • .sk/fflib
成功吧

下面是一个使用ffmpeg的示例代码(我在Win7 VM下对其进行了测试):

以及
FFmpegTask

using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using System.Diagnostics;
using System.IO;

namespace ConsoleApplication_FFmpegDemo
{
    public class FFmpegTask
    {
        public Process process = new Process();

        public FFmpegTask(string ffmpegPath, string arguments)
        {
            process.StartInfo.FileName = ffmpegPath;
            process.StartInfo.Arguments = arguments;
            process.StartInfo.RedirectStandardOutput = true;
            process.StartInfo.CreateNoWindow = false;
            process.StartInfo.UseShellExecute = false;
        }

        public bool Start()
        {
            return process.Start();
        }
    }
}

您可以使用FFmpeg项目的FFplay。(ffmpeg.org)使用ffmpeg,几乎可以以您想要的分辨率对每个编解码器进行编码和转码。本文介绍了使用C语言的命令行应用程序的使用

我从未尝试过,但也有使用FFmpeg为.NET提供的库,如下所示:

  • ffmpegdotnet.codeplex.com
  • .sk/fflib
成功吧

下面是一个使用ffmpeg的示例代码(我在Win7 VM下对其进行了测试):

以及
FFmpegTask

using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using System.Diagnostics;
using System.IO;

namespace ConsoleApplication_FFmpegDemo
{
    public class FFmpegTask
    {
        public Process process = new Process();

        public FFmpegTask(string ffmpegPath, string arguments)
        {
            process.StartInfo.FileName = ffmpegPath;
            process.StartInfo.Arguments = arguments;
            process.StartInfo.RedirectStandardOutput = true;
            process.StartInfo.CreateNoWindow = false;
            process.StartInfo.UseShellExecute = false;
        }

        public bool Start()
        {
            return process.Start();
        }
    }
}

谢谢你的回复。。。如果你能提供样品就更好了…谢谢你的回复。。。如果你能提供任何样品就更好了。。。