locked
XAML如何截取视频中的图像? RRS feed

  • 问题

    1. 我在文件选取器里打开了一个视频文件,如何截取我指定的帧中的图像?
    2. 我有很多图像,如何将它们组合成一个视频?
    3. 如何将一个视频从一个指定的帧截成两个视频?

    2014年5月6日 5:15

全部回复

  • 你好,关于你的问题:

    1,如何截取指定帧的图像?

    请参考 Media Foundation Transform 相关内容去做视频截图,目前MediaElement没有自带的截图功能,需要实现的话,参考一下这个教程: Audio/Video Capture in Media Foundation

    2,很多图像如何生成视频?

    这个要看你有多少图像,如果图像很少,并且图像不是很大的话,完全可以生成一个gif来代替(可以参考Jesse的Blog: http://www.cnblogs.com/zjjcy/p/3277799.html)。如果要生成视频的话,还是需要用到Media Foundation的功能,其中有一个VideoGenerator的组件,你可以用来生成视频,具体的教程请参考: http://blogs.msdn.com/b/eternalcoding/archive/2013/03/06/developing-a-winrt-component-to-create-a-video-file-using-media-foundation.aspx

    3,如何把视频分成两段?

    这个我没有接触过,不过应该也可以用MFT来实现吧。

    --James


    <THE CONTENT IS PROVIDED "AS IS" WITHOUT WARRANTY OF ANY KIND, WHETHER EXPRESS OR IMPLIED>
    Thanks
    MSDN Community Support

    Please remember to "Mark as Answer" the responses that resolved your issue. It is a common way to recognize those who have helped you, and makes it easier for other visitors to find the resolution later.

    2014年5月7日 3:38
    版主
      • 我在文件选取器里打开了一个视频文件,如何截取我指定的帧中的图像?

    这个可以利用RenderTargetBitmap对象,参考http://msdn.microsoft.com/zh-cn/magazine/cc163455.aspx#S7

  • 我有很多图像,如何将它们组合成一个视频?
    • 如何将一个视频从一个指定的帧截成两个视频?

    参考http://www.codeproject.com/Articles/285964/WPF-Webcam-Control

    2014年5月7日 6:52
  • 你好 jiwen Wang,纠正一下,跟WPF不同,Windows Store App中的RenderTargetBitmap是不能截取MediaElement控件里面的图片的。

    Video content in a MediaElement or CaptureElement can't be captured using RenderTargetBitmap. That includes capturing frames from within video content.

    --James


    <THE CONTENT IS PROVIDED "AS IS" WITHOUT WARRANTY OF ANY KIND, WHETHER EXPRESS OR IMPLIED>
    Thanks
    MSDN Community Support

    Please remember to "Mark as Answer" the responses that resolved your issue. It is a common way to recognize those who have helped you, and makes it easier for other visitors to find the resolution later.


    2014年5月7日 6:56
    版主
  • 你好,Jamles,由于原来有一些别的事情,我暂时把你的回复评定为答案。但是现在我开始研究截取视频,但是没有看懂你给我的连接,所以取消了答案标记。

    1.

    http://msdn.microsoft.com/en-us/library/windows/desktop/dd317912(v=vs.85).aspx

    以上链接是你给我的教程。请问这个教程里的代码到底是干什么的?是不是预览摄像头并捕获的?因为我在定义的函数中没有看见对于打开的视频的形式参数。

    2.

    我希望通过文件选取器打开一个视频,并且截取我指定时间的图像,怎么实现?

    多谢!

    你也可以在这个帖子中回答:

    http://social.msdn.microsoft.com/Forums/zh-CN/4905f23e-c0a6-4964-bd4a-cd8553ca3d6e/mftc?forum=winstoreappzhcn

    2014年5月22日 7:25
  • 你好,你指的视频是摄像头么?我以为你说的是某一段视频(Video格式),所以给你的建议都是从视频中截图的资料。

    我会再研究一下怎么打开摄像头并捕获其中的图片。

    --James


    <THE CONTENT IS PROVIDED "AS IS" WITHOUT WARRANTY OF ANY KIND, WHETHER EXPRESS OR IMPLIED>
    Thanks
    MSDN Community Support

    Please remember to "Mark as Answer" the responses that resolved your issue. It is a common way to recognize those who have helped you, and makes it easier for other visitors to find the resolution later.

    2014年5月22日 7:50
    版主
  • 对不起,我们的沟通似乎有点障碍。我想使用文件打开视频,然后从视频中截取。

    例如:

    通过FileOpenPicker,让用户选择一个MP4文件(如果没有编码器可以换成别的文件类型),

    然后通过一个给定的数值,来确定截取视频的时间(例如1分钟10秒或第700帧),

    最后将图片保存到一个WriteableBitmap^里面。

    我看了你第一次给我的链接,但是我不知道从哪里选择文件。

    2014年5月22日 10:55
  • 你好,关于你的问题:

    1,如何截取指定帧的图像?

    需要实现的话,参考一下这个教程: Audio/Video Capture in Media Foundation

    2,很多图像如何生成视频?

    如果要生成视频的话,还是需要用到Media Foundation的功能,其中有一个VideoGenerator的组件,你可以用来生成视频,具体的教程请参考: http://blogs.msdn.com/b/eternalcoding/archive/2013/03/06/developing-a-winrt-component-to-create-a-video-file-using-media-foundation.aspx

    我引用的这两个链接中,有很多代码。能不能介绍一下这些代码的意义?

    2014年5月22日 11:26
  • 你好,你研究的怎么样了?
    2014年6月8日 2:25