首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >使用C# / DirectShow.Net / 3ivx在MP4中编码

使用C# / DirectShow.Net / 3ivx在MP4中编码
EN

Stack Overflow用户
提问于 2014-04-14 20:34:06
回答 1查看 1.3K关注 0票数 0

我希望在MP4中编码.wmv视频。

我使用这里提供的这个小软件:http://www.codeproject.com/Articles/11120/Media-files-conversion-using-C

我使用DirectShow.Net:http://sourceforge.net/projects/directshownet/和3ivx编解码器。

如何更改代码:

代码语言:javascript
运行
复制
    //
    // This method convert the input file to an wmv file
    //
    void Convert2Wmv(string fileName)
    {
        try
        {
            label1.Text = "Encodage";
            button1.Enabled = false;

            hr = me.SetNotifyWindow(this.Handle, WM_GRAPHNOTIFY, IntPtr.Zero);
            DsError.ThrowExceptionForHR(hr);

            // here we use the asf writer to create wmv files
            WMAsfWriter asf_filter = new WMAsfWriter();
            IFileSinkFilter fs = (IFileSinkFilter)asf_filter;

            hr = fs.SetFileName(fileName + ".wmv", null);
            DsError.ThrowExceptionForHR(hr);

            hr = gb.AddFilter((IBaseFilter)asf_filter, "WM Asf Writer");
            DsError.ThrowExceptionForHR(hr);

            hr = gb.RenderFile(fileName + fExt, null);
            DsError.ThrowExceptionForHR(hr);

            hr = mc.Run();
            DsError.ThrowExceptionForHR(hr);
        }
        catch (Exception ex)
        {
            MessageBox.Show("Error converting to wmv: " + ex.Message);
        }
    }

有MP4编码吗?我是C#/ .Net的初学者... =$

提前谢谢你。:3

EN

回答 1

Stack Overflow用户

发布于 2014-04-14 20:44:01

您可以使用FFmpeg (适用于Mac、Linux和Windows的免费命令行工具)将WMV编码为MP4。下面是一个语法示例:

代码语言:javascript
运行
复制
ffmpeg -i input.wmv -c:v libx264 -crf 23 -c:a libfaac -q:a 100 output.mp4
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/23060218

复制
相关文章

相似问题

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