2012-08-14 120 views
0

我想从wmv转换到mp4。 首先我需要实现我的IMFTransform来做到这一点? 我是否需要将视频转换为MFVideoFormat_I420?媒体基础编码器MF_E_TRANSCODE_NO_MATCHING_ENCODER

据我所知,如果你正确地创建拓扑,这应该自动处理。 所以我创造了

http://msdn.microsoft.com/en-us/library/windows/desktop/ff819476%28v=vs.85%29.aspx

我的个人资料显示,但我得到一个MF_E_TRANSCODE_NO_MATCHING_ENCODER。 我有Windows 7所以,我应该有编码器。

也有人知道该教程的源代码在哪里。它不在SDK样本下。

谢谢。

回答

0

你不显示代码 - 没有人知道什么是错的。

看看这个代码转换示例,它带有源代码,并且完全符合您的要求:从ASF转码为MP4。

http://blogs.msdn.com/b/mf/archive/2009/12/02/mfsimpleencode.aspx

MFSimpleEncode.exe - 这是一个命令行工具,从转码一个媒体格式文件 到另一个。如果您编写自己的转码应用程序,则提供源代码以使用 作为参考。此工具 使用媒体基金会转码API,这是在 Windows 7中

例子介绍:

  1. 转码ASF到MPEG-4:

    MFSimpleencode.exe -i Input.wmv -o output.mp4 -p TranscodeProfileMPEG4.xml

+0

感谢您的回复。你是对的。我会发布代码。 但该示例使用MFCreateTranscodeTopology。这也适用于我,但我需要创建我自己的拓扑。由于该函数需要源对象,outFile的路径,配置文件(AAC和H264)参数和创建拓扑。 我需要编写自定义接收器,因为我不想将输出写入文件。 – 2012-08-18 00:18:50

+0

@EvrenBingøl我也面临同样的问题。我不转换一个文件到另一个。在我的情况下,我正在读取h264相机和wrting在文件中。我得到同样的错误MFCreateTranscodeTopology()。 – 2013-01-07 12:51:11