首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >WinForms -嵌入CNN Live Video URL

WinForms -嵌入CNN Live Video URL
EN

Stack Overflow用户
提问于 2011-07-02 04:39:29
回答 3查看 2.2K关注 0票数 1

我有一个CNN WinForms应用程序,一个客户要求在其中集成一个CNN流媒体视频播放器。美国有线电视新闻网使用位于http://www.cnn.com/video/live/live.html?stream=stream1的flash播放器

但是,如果我嵌入一个WebBrowser对象并将其指向URL,网站想要在我的WebBrowser控件之外触发一个弹出窗口。如果我禁用它(使用NewWindow事件处理程序),它会抛出一条javascript警告消息。如果我允许,它会在我的应用程序外部打开一个新的IE实例,里面有CNN视频。

我唯一的想法是重新创建HTML并覆盖flash对象(http://z.cdn.turner.com/cnn/.element/apps/CNNLive/2.1.6.2/assets/scripts/liveplayersettings.js)的javascript设置,以便关闭弹出标志。

有没有人想过如何在应用程序中显示站点的同时完成显示?

EN

回答 3

Stack Overflow用户

回答已采纳

发布于 2011-07-26 22:18:38

最终破解了CNN使用的Javascript,不知道它能持续多久,但这是实现我想要的最快的方法,而没有其他解决方案的所有额外开销。

代码语言:javascript
复制
    protected void webBrowser_ProgressChanged(object sender, WebBrowserProgressChangedEventArgs e)
    {
        if (webBrowser.ReadyState == WebBrowserReadyState.Complete && DefaultPage == BrowserPage.CNN)
        {
            HtmlElement head = webBrowser.Document.GetElementsByTagName("head")[0];
            HtmlElement scriptElement = webBrowser.Document.CreateElement("script");
            IHTMLScriptElement element = (IHTMLScriptElement)scriptElement.DomElement;
            string popupBlocker = "if(typeof settings != 'undefined') { settings.FORCE_POPUP = false; }";
            element.text = popupBlocker;
            head.AppendChild(scriptElement);
        }
    }
票数 1
EN

Stack Overflow用户

发布于 2011-07-02 05:40:33

如果您安装了最新的ffdshow,Windows media player将播放flash文件。您可以将url传递给它,然后让嵌入式windows媒体播放器播放它。

VLC也会做到这一点,无论你喜欢哪一个。不过,Windows媒体播放器的api可能要简单一点。

票数 0
EN

Stack Overflow用户

发布于 2011-07-02 05:54:57

我建议下载并使用Microsoft Expression Encoder SDK。它可以捕获来自其他网站的实时馈送:http://msdn.microsoft.com/en-us/library/gg602440(v=expression.40).aspx

您可以向下滚动到“使用Live Broadcasting项目”一节,它解释了如何从web上捕获实时视频源。

如果Expression SDK对你不起作用,那么我只能建议你对他们的Javascript进行反向工程,并编写某种HttpWebRequest和HttpWebResponse类型的应用程序来获取数据并在你的程序中自己流式传输。

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

https://stackoverflow.com/questions/6553002

复制
相关文章

相似问题

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