如何用C#实现把普通视频格式(如MP4)转换成h264格式(上传的过程中转换)

我做了一个上传的视频的功能,要在手机上边下载播放,看了一些视频说要将普通视频转换成h264格式才行,求大神指点如何用C#讲视频转换成h264格式,或者其他什么方案实现手机... 我做了一个上传的视频的功能,要在手机上边下载播放,看了一些视频说要将普通视频转换成h264格式才行,求大神指点如何用C# 讲视频转换成h264格式,或者其他什么方案实现手机边下载边播放的功能 展开
 我来答
陌上的那颗新桑
推荐于2016-06-24 · TA获得超过406个赞
知道小有建树答主
回答量:465
采纳率:100%
帮助的人:379万
展开全部
一般情况下,是不大可能连上传连转换的。

除非你自己制作客户端和服务端。
C# 并没有自己的方法去转换。你可以调用一些库来实现。

不过,如果是网页上传的,比较麻烦。。。只能在上传以后,在后台转换。
可以编写个服务端,定时将它转换为你指定的格式。

最快的方法是直接调用 FMPEG 来转换。
更多追问追答
追问
高手,能具体说一下如何用ffmpeg来实现吗?网上都是命令行不知道怎么写入后台,就是上传之后拿到视频再用代码通过ffmpeg来转换
追答
我以前是这样作的:

1、编写一个WINDOWS 服务(你可以用 C# 或是 C++,其他也可以,不写 服务的话,直接用 WIN FORM 也行,但要实时运行)
2、在上传的时候,将待转换的视频保存进数据库或是一个 XML 中。
3、服务(WIN FORM)检查相应的 XML 或数据库,如果有待转换的就开始转换或加入队列以后转换。
4、关于转换,你可以在服务(WIN FORM)里直接调用 FFMPEG 来直接转换啊。不过建议使用多线程。关于如果调用外部程序,建议你百度一下。

如果你对视频解码很了解,直接调用码库,更简单。
-------------------------

如果你懒得写服务或 WIN FORM ,可以直接使用 ASP.NET 调用,不过你得将进程池或是IIS站点的权限设置为最高,但这样不安全,而且,还有可能引起进程池异常。

如果你想要视频流模式,建议直接转成 FLV 格式的 H264 编码,然后装个 FMS ,这样会快些。
本回答被提问者和网友采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
冬天之雪_
2013-09-21 · TA获得超过424个赞
知道小有建树答主
回答量:1304
采纳率:100%
帮助的人:611万
展开全部
使用流媒体服务器,但是具体的实现,去找点资料吧
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 1条折叠回答
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式