C#视频编辑器? [英] C# Video editor?

查看:495
本文介绍了C#视频编辑器?的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我想在C#中制作视频编辑器,但我不知道从哪里开始。

我应该使用哪些类?我将它编译成(MOV,MPEG4,ect)?我怎么读它们?

我看的最重要的东西是阅读它们。

解决方案

blockquote>

我想在C#中制作视频编辑器,但我不知道从哪里开始。


视频编辑器是一个非常复杂的应用程序,具有许多独立的子系统。您将需要资产管理,时间轴,播放器组件,视频和音频效果和过滤器,标题生成等,以及组合所有这些并将其呈现给用户的GUI。



在上述所有内容中,我建议您从构建视频播放器开始。有几个库可以帮助这个,我将推荐其中两个:




  • DirectShow(免费Microsoft, DirectX,Windows only)

  • QuickTime SDK(免费Apple,附带QuickTime,Windows和OS X)



注意,DirectShow将在C#中本地工作,但是QuickTime SDK是C,所以你需要将C#应用程序连接到QuickTime DLL中的C函数的粘合代码。



这两个库都有高级的播放器,只需要调用少量的设置,还有低级的API,可以提供你自己的播放器代码。对于视频编辑器,您需要有一个自定义播放器,因为您不仅将播放视频文件,而且还实时生成渲染的效果。因此,您应该在上述任一框架中使用低级API,并编写一个播放器,最初读取电影文件,获取帧,并将其传递给正确的解码器和渲染器。



一旦你有了这个工作,你可以转到其他任务,并使用视频播放器作为你的编辑器的基础。



祝你好运。


I want to make a video editor in C# but, I don't know where to start.
What classes should I use? What would I compile it into(MOV, MPEG4, ect)? How would I read them?
The most important thing I am looking at though is reading them.

解决方案

I want to make a video editor in C# but, I don't know where to start.

A video editor is a pretty complex application with many independent subsystems. You will need asset management, a timeline, a player component, video and audio effects and filters, title generation, etc., plus a GUI that combines all of these and presents them to the user.

Out of all the above I recommend that you start by building the video player. There are several libraries that can help with this, I'm going to recommend two of them:

  • DirectShow (free from Microsoft, comes with DirectX, Windows only)
  • QuickTime SDK (free from Apple, comes with QuickTime, Windows and OS X)

Note that DirectShow will work natively in C#, but the QuickTime SDK is in C, so you will need glue code that connects your C# app to the C functions in the QuickTime DLLs.

Both libraries have high-level players that require just a handful of calls to setup, and also low-level APIs that allow you to provide your own player code. For a video editor you will need to have a custom player, as you will not only be playing video files but also rendered effects that are generated in real time. So you should work with the low-level APIs in either one of the above frameworks and write a player that initially reads a movie file, obtains the frames, and passes them to the proper decoders and renderers.

Once you have this working you can move on to the other tasks and use the video player as the foundation of your editor.

Good luck.

这篇关于C#视频编辑器?的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆