显示高清视频源
回答
我会推荐VLC或mplayer/mencoder(win32版本)。它们可以通过C#应用程序进行命令行驱动。 VLC支持任何DirectShow捕获设备,并具有大量先进的捕获,转码和发布选项。
另一个选项是ffmpeg,它可以作为命令行工具或binding to C#提供。
我个人建议在C#绑定中使用这些工具的命令行版本,因为所有这些程序都倾向于快速开发补丁和功能。相对于当前稳定版(更不用说SVN)构建任何这些程序,C#绑定完全可能会过时。另外你会在命令行格式中找到更多的文档,因为这通常是如何使用这些工具的。
最后可以通过建立自己的DirectShow Capture Filter来做到这一点。这个选项附带了我的BIG FAT WARNING,即使在使用像Capture Graph Builder这样的工具时,DirectShow也是一种非常复杂和有气质的野兽,需要很多经验才能正确执行。它还经常受到API的变化,Windows平台的差异以及较差的文档记录。沿着这条道路走自己的路。
首先我会看看现有的软件来做到这一点。例如,Windows Movie Maker可以显示和捕获高清摄像机的输出。 mplayer应该能够显示大多数捕捉卡/相机的实时信号(并且具有全屏选项)。还有其他更完整的系统,如ScopeBox,OnLocation,UltraScope或任何非线性编辑软件(Adobe Premiere,Final Cut Pro等)。这些都是针对视频制作的,但你并没有真正提到你为什么要显示或捕捉视频。
如果你想从头开始写点东西,DirectShow API应该是一个很好的起点。
我需要捕获的高清视频源(喜例如高清电视)
不能从HD-TV捕捉,因为它只是一个显示..
你可以从高清摄像机捕获,但你需要一个捕获卡--Blackmagic Design做了很多这些,最便宜的是它们〜$ 150 "Video Recorder",它可以通过组件捕获,它们的$ 200 "Intensity" card将通过HDMI捕获(和关于任何其他模拟连接)
然后,您应该能够使用DirectShow或QuickTime API从BlackMagic卡录制(support page regarding this)。对于其他采集卡也是如此(我只是提到BlackMagic,因为它们是更好的知名品牌之一)
有一点需要注意,如果您要捕获高清视频(1920x1080p),则需要处理很多数据。最新的电脑应该可以很好地处理它,但它仍然需要大量的CPU和IO速度。
另一件事,就像HDCP(高带宽数字内容保护)系统阻止这种情况一样,你无法从类似蓝光播放器的内容中捕获。
你的目标是什么?一个实时的电视信号,你想要抓取和使用,还是已经存储的东西? 如果您想要使用实时电视信号,将会很困难,因为有些电视频道不希望我们抓住它并使用HDCP作为信号保护或其他复制保护方法。 你应该知道这
- 1. 热点在多台显示器上播放高清视频
- 2. AVFoundation上传高清视频
- 3. Cocos2d,高清视网膜显示器iPad
- 4. 在iOS4中从库中采摘高清视频显示“压缩视频”,导致可怕的压缩视频
- 5. 将Youtube视频源显示为HTML5视频标签?
- 6. 捕获视频,而不显示实际的视频源
- 7. 显示视频
- 8. 高清FLV视频播放缓慢
- 9. 姜饼和ICS高清视频流
- 10. 视频未显示在视频视图
- 11. 录制高清视频,保存低质量视频
- 12. 高清图表清除后不显示
- 13. 在滚动屏幕时清楚地显示视频视图?
- 14. HTML视频显示
- 15. 显示视频st
- 16. 视频不显示
- 17. 显示YouTube视频
- 18. Iframe显示视频
- 19. openGL视频显示
- 20. 视频不显示?
- 21. 视频不显示!
- 22. 视频不显示Flash视频
- 23. 视频标签不显示视频
- 24. HTML视频标签显示Youtube视频
- 25. 视频组件不显示视频(显示白色屏幕)
- 26. 崇高的视频播放器源码
- 27. 全屏显示不显示视频
- 28. 录制的视频不会显示在视频上视频
- 29. 如何在Cocos2D中实现高清“视网膜显示”图形
- 30. swfobject.embedSWF不显示视频
我相信这是不与编程有关。 – 2009-05-30 03:38:03
安德鲁,你知道我的意思是C#吗? – 2009-05-30 12:13:17