首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >C#寻找一个库来帮助生成显示文本的视频

C#寻找一个库来帮助生成显示文本的视频
EN

Software Recommendation用户
提问于 2019-10-22 00:58:30
回答 1查看 93关注 0票数 1

我想用C#制作一个具有以下功能的软件:

  • 有一个multiLine文本框,用户可以在其中输入N行字符串。
  • 该软件输出持续N秒的MP4视频。
  • 每秒钟视频都有根据用户输入行显示的文本。

有什么图书馆能帮上忙吗?

视频生成。以文本为中心,背景保持为黑色.

EN

回答 1

Software Recommendation用户

回答已采纳

发布于 2019-10-28 19:48:37

有一个C#演示,它在LEADTOOLS多媒体SDK中做了非常类似的事情。(免责声明:我是该工具包供应商的雇员)。

SDK有一个免费的评估,包括演示,你可以在这里下载

安装SDK后,您可以在此文件夹中找到演示的源代码:

LEADTOOLS文件夹\Examples\Multimedia\ltmm\Dotnet\CS\GenerateAVI

由于演示程序生成AVI而不是MP4,并且将文本写在蓝色背景上而不是黑色上,因此您需要修改4种函数中的6行代码,以使其符合您规定的要求。以下是所需的所有修改:

在MainForm_Load()

代码语言:javascript
复制
//original code: _tbFile.Text = System.Environment.GetFolderPath(Environment.SpecialFolder.Personal) + @"\count.avi"; 
_tbFile.Text = System.Environment.GetFolderPath(Environment.SpecialFolder.Personal) + @"\text.mp4";

在_btnGenerate_Click()

代码语言:javascript
复制
//original code: double AvgTimePerFrame = (10000000 / 15);
double fps = 1.0; //1 frame per second
double AvgTimePerFrame = (10000000 / fps);
...
//original code: convertCtrl.VideoCompressors.MCmpMJpeg.Selected = true;
convertCtrl.TargetFormat = TargetFormatType.ISO;
convertCtrl.VideoCompressors.H264.Selected = true;
...
//original code: DrawCenteredText(i.ToString());
string s = "This is string number " + i.ToString();
DrawCenteredText(s);

在FillImage()

代码语言:javascript
复制
//original code: _blueBrush = new SolidBrush(Color.Blue);
_blueBrush = new SolidBrush(Color.Black);

在DrawCenteredText()

代码语言:javascript
复制
//original code:  using(Font f = new Font("Arial", 100))
//font was large since text was only a number
//make font smaller to fit larger text
using (Font f = new Font("Arial", 12))

该工具包在评估过程中提供了免费的技术支持,因此,如果您在执行代码时遇到问题,您可以通过电子邮件向我们的支持团队发送详细信息。

票数 1
EN
页面原文内容由Software Recommendation提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://softwarerecs.stackexchange.com/questions/70069

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档