标签: brightcove

带有Brightcove的HTML5视频

我目前有一个有效的Brightcove智能播放器实现,默认使用Flash,不支持Flash的HTML5后备(读取:iOS).我想颠倒这一点:更喜欢HTML5视频,并使用Flash作为后备. 这是可能的,如果是的话,怎么样?Brightcove似乎完全忽略了提供HTML5选项的意义,因为它使用它作为后备而不是首选格式.

此外,尽管Brightcove在18个月前宣布了支持WebM和H.264的计划,但似乎HTML5播放器仍然只支持H.264.Firefox不能(也可能永远不会)支持专利(以及IMO,意识形态)原因的 H.264 .Firefox的使用范围太广,无法在寒冷中遗漏.有没有办法通过Brightcove向Firefox提供WebM HT​​ML5视频?

flash video html5 brightcove

8
推荐指数
2
解决办法
8905
查看次数

Brightcove 视频缩略图

假设我有视频 ID,我可以访问视频的静止图像吗?

我已经阅读了媒体 API 和缩略图 URL 和 videoStillURL 的读取函数,但不知道如何实现。

是否有使用给定 ID 的资产的静止图像的示例?

brightcove

6
推荐指数
1
解决办法
4053
查看次数

通过代理访问时,HttpURLConnection返回503错误

我正在为在Brightcove视频云上托管视频的网站创建视频站点地图.为了从网站获取所有视频信息,Brightcove建议从他们的以下表格的网址阅读回复

http://api.brightcove.com/services/library?token="+accountToken+"&page_size=1&command=find_all_videos&output=JSON&get_item_count=true
Run Code Online (Sandbox Code Playgroud)

url的输出是JSON,其中accountToken只是帐户的标识符.

当我在浏览器中使用Token点击上面的url时,它会给我正确的响应.

我写了下面的程序片段来读取该URL

URL jsonURL = new URL("http://api.brightcove.com/services/library?token="+accountToken+"&page_size=1&command=find_all_videos&output=JSON&get_item_count=true");
        HttpURLConnection connection = (HttpURLConnection) jsonURL.openConnection();
        connection.setRequestMethod("GET");
        connection.connect();
        BufferedReader reader = new BufferedReader(
                new InputStreamReader(connection.getInputStream()));
        String lineRead = "";
        while (reader.ready()) {
            lineRead = lineRead + reader.readLine();
        }
Run Code Online (Sandbox Code Playgroud)

由于我的浏览器使用代理,我添加了以下代码以包含代理设置

        System.setProperty("http.proxyHost", "my.proxyurl.com");
        System.setProperty("http.proxyPort", "80");
Run Code Online (Sandbox Code Playgroud)

不使用代理设置,它返回java.net.ConnectException: Connection refused: connect并使用代理它给我java.io.IOException: Server returned HTTP response code: 503

所以我的问题是,为什么它给我503(服务不可用)错误?从浏览器它的工作正常.

更新1: 这似乎是网络的一个问题.我ping了域名,它说"请求超时".但是通过HTTP工作.看起来像防火墙的问题.

java http-status-code-503 brightcove

5
推荐指数
1
解决办法
8208
查看次数

iOS Brightcove Player SDK - 设置初始时间

我正在使用适用于iOS的Brighcove SDK播放一些视频.播放视频的基本设置是(基于Brightcove指南):

@interface VideoPlayerViewController()
@property (strong, nonatomic) id <BCOVPlaybackController> videoController;
@end

@implementation VideoPlayerViewController

-(void)viewDidLoad {

// create an array of videos
NSArray *videos = @[
                    [self videoWithURL:[NSURL URLWithString:@"http://cf9c36303a9981e3e8cc-31a5eb2af178214dc2ca6ce50f208bb5.r97.cf1.rackcdn.com/bigger_badminton_600.mp4"]],
                    [self videoWithURL:[NSURL URLWithString:@"http://devimages.apple.com/iphone/samples/bipbop/bipbopall.m3u8"]]
                    ];


// add the playback controller
self.controller = [[BCOVPlayerSDKManager sharedManager] createPlaybackControllerWithViewStrategy:[self viewStrategy]];
self.controller.view.frame = self.view.bounds;
// create a playback controller delegate
self.controller.delegate = self;

self.controller.view.autoresizingMask = UIViewAutoresizingFlexibleHeight|UIViewAutoresizingFlexibleWidth;
// add the controller view as a subview of the SVPViewController's view
[self.view addSubview:self.controller.view];

// turn on auto-advance
self.controller.autoAdvance = YES;
// …
Run Code Online (Sandbox Code Playgroud)

video sdk ios brightcove

5
推荐指数
1
解决办法
966
查看次数

将参数传递给Sitecore中的Razor View渲染

我正试图在传递动态视频ID的同时渲染出brightcove媒体播放器.brightcoveData.Id是一个有效的guid,但我似乎无法正确传递参数,以便Rendering理解它.我从此组件中收到错误消息"未选择媒体项".

var embedMedia = new System.Collections.Specialized.NameValueCollection();
            embedMedia.Add("playerId", "E7766078969C3AB892DD158E0E7230B9");
            embedMedia.Add("width", "400");
            embedMedia.Add("height", "300");

            @Html.Sitecore().Rendering("/sitecore/layout/Renderings/Media Framework/Embed Media", new
                               {
                                   DataSource = brightcoveData.Id,
                                   Parameters = embedMedia
                               })
Run Code Online (Sandbox Code Playgroud)

任何帮助,将不胜感激.谢谢.

.net sitecore razor brightcove

5
推荐指数
1
解决办法
5186
查看次数

带有brightcove的videojs在React组件中使用require.ensure给出错误

我正在尝试在反应组件中使用require.ensure:

componentDidMount() {
    require.ensure([], () => {
        require('public/jscripts/brightcove/index.js');
    });
}
Run Code Online (Sandbox Code Playgroud)

但不断收到错误: Cannot set property 'default' of undefined

它发生在brightcove videojs脚本中的这一点:

// At this point, `window.videojs` will be the earliest-defined copy of this
// version of videojs.
var videojs = window.videojs;

// https://github.com/videojs/video.js/issues/2698
videojs['default'] = videojs;
Run Code Online (Sandbox Code Playgroud)

有谁知道为什么会发生这种情况?

完整的脚本在这里顺便说一句,我把它保存为本地文件,因此路径public/jscripts/brightcove/index.js:https://players.brightcove.net/1752604059001/B1xXFuBodW_default/index.js

node.js requirejs brightcove video.js reactjs

5
推荐指数
0
解决办法
224
查看次数

浏览器是否缓存 blob src?

我正在使用 videoJS 播放 Brightcove 上托管的视频。我只需给它一个 videoId ,它就会自动获取 src ,我猜它会被转换成类似 的 blob src src="blob:https://crap.crap"

但是,似乎当我删除该<video>组件然后将其放回去时,视频会从源中重新获取,并且我不确定浏览器是否缓存了它。有谁知道是否可以手动缓存blobsrc?

编辑:它通过此协议进行流式传输

html javascript src brightcove video.js

5
推荐指数
0
解决办法
4139
查看次数

如何挂钩由Brightcove托管视频结束触发的事件?

当用户点击带有播放按钮的图像时,我有以下代码来显示Brightcove播放器:

$(document).ready(function() {
    $('#performanceVideo').hide();
    $('#banner_text_wrap').click(function(e) {
        e.preventDefault();
        $('banner-image').hide().fadeOut(slow);
        $('#performanceVideo').show().fadeIn(slow).css({'float':'left','margin-top':'-251px'});
    });
});
Run Code Online (Sandbox Code Playgroud)

我希望在视频结束时将图像淡入淡出.如何使用jQuery挂钩视频结束事件?阅读文档我认为我需要包含addEventListener在代码中,但我是一个JavaScript新手,所以任何帮助表示赞赏.

javascript video jquery appcloud brightcove

2
推荐指数
1
解决办法
1059
查看次数

如何识别第 3 方 iframe 中的 Ajax 更新

当页面加载时,它包含一个第 3 方 iframe(读取:文件上传器)。我选择一个文件,单击“开始上传”按钮,上传完成后,我会收到一条“谢谢 - 上传完成”消息。

  • 没有 Ajax 响应(据我所知)。

  • 第三方确实允许我指定消息。我还可以在该消息中添加...。

上传完成后,我需要使用我从一开始就知道的 upload_file_id 更新隐藏输入。如果“上传完成”消息/时刻/事件,我想捕获/使用什么。但页面的动态性对我来说有点新鲜,我需要一些支持。

提前致谢。

javascript ajax jquery brightcove

2
推荐指数
1
解决办法
1706
查看次数

在Angular中集成Brightcove播放器

我必须将Brightcove播放器集成在一个角度模态窗口中.

这是我通常会放入的目标代码,例如,用于显示视频的jQuery模式:

    <object id="" class="BrightcoveExperience">
      <param name="playerID" value="2132538346001" />
      <param name="playerKey" value="key_here" />
      <param name="dynamicStreaming" value="true" /> 
      <param name="@videoPlayer" value="screencast.brightcove_id" />
      <param name="bgcolor" value="#ffffff" />
      <param name="width" value="480" />
      <param name="height" value="360" />
      <param name="isVid" value="true" />
      <param name="isUI" value="true" />
      <param name="wmode" value="transparent" />
      <param name="seamlessTabbing" value="false" />
    </object>
    <script type="text/javascript">brightcove.createExperiences();</script>
Run Code Online (Sandbox Code Playgroud)

请注意在最后一行调用Brightcove函数,并在对象内调用{{screencast.brightcove_id}}(编辑:now screencast.brightcove_id,没有大括号)引用.我尝试将此代码放在Angular中,并在Angular之前引用Brightcove.js(或之后,它没有什么区别),但它不起作用.它抛出一个错误:

Cannot read property 'nodeName' of undefined
at hb (https://ajax.googleapis.com/ajax/libs/angularjs/1.1.5/angular.min.js:124:197)
Run Code Online (Sandbox Code Playgroud)

这显然不是Angular的做事方式,但我无法找到有关在Angular中集成其他Javascript工具的信息.你怎么做呢?

编辑:使用screencast.brightcove_id代替{{screencast.brightcove_id}}摆脱了错误消息.然而,角度绑定的替换不会发生,并且发送brightcove以寻找具有id"screencast.brightcove_id"的视频.手动插入正确的ID插件工作,但我需要角度来填充该字段.

Plunkr:http://plnkr.co/edit/H78jIrvx2EsxSSVijZMh?p =preview

javascript brightcove angularjs

1
推荐指数
1
解决办法
2051
查看次数

Brightcove视频一旦出现在页面加载,然后立即在IE浏览器中消失?

我正在使用brightcove视频,它在firefox和chrome中运行良好,但在IE中它出现一次在页面加载然后立即消失,意味着视频没有显示在浏览器中.

这背后的原因是什么?

<script type="text/javascript">
var player;
var modVP;

function myTemplateLoaded(experienceID) {
    player = brightcove.api.getExperience(experienceID);
    modVP = player.getModule(brightcove.api.modules.APIModules.VIDEO_PLAYER);

    $('.stillimage').stop().fadeOut(150);
    $('.BrightcoveExperience').stop().fadeOut();

}

$('.video_resource_container .video_rotator .slideshow ul li:first').addClass('active-vd');

$('.video_resource_container .video_rotator .slideshow ul li input').click(function () {
    $('.video_resource_container .video_rotator .slideshow ul li').removeClass('active-vd');
    $(this).parent().addClass('active-vd');
});

function onTemplateReady(evt) {

}

function onMediaComplete(videoid, title, desc) {
    $('.video_title').empty();
    $('.video_title').html(title);
    $('.video_para').empty();
    $('.video_para').html(desc);
    modVP.loadVideoByID(videoid);        
}

</script>
Run Code Online (Sandbox Code Playgroud)

sitecore brightcove

1
推荐指数
1
解决办法
209
查看次数

HTML5 视频标签可以播放 m3u 文件吗?

我正在使用 HTML5 视频标签实现视频播放器。我收到的视频资产由Brightcove托管和交付,它是一个m3u文件。是否可以通过 HTML5 视频标签播放此视频?

我认为来自 Brighcove 服务器的生成的 m3u 文件被设置为支持自适应比特率流。我尝试使用主文件(包含每个再现的详细信息)和每个单独的再现文件的 m3u 文件。

但是我的视频标签没有任何反应。控制台中没有任何错误,虽然我认为会有。我正在使用 Chrome,我在其他地方读过它支持 m3u 播放?

在您的回答中,请注意我对 HTML5 播放完全陌生——尤其是 m3u 文件。

这是我的示例代码:

<video controls autoplay="true">
   <source src="http://brightcove.com/example/master.m3u?videoid=1234">
</video>
Run Code Online (Sandbox Code Playgroud)

生成的 m3u 文件的内容如下所示(敏感数据已删除):

#EXTM3U
#EXT-X-STREAM-INF:PROGRAM-ID=1,BANDWIDTH=716000,RESOLUTION=336x184
https://brightcove.com/services/rendition.m3u8?assetId=123456
#EXT-X-STREAM-INF:PROGRAM-ID=1,BANDWIDTH=1325000,RESOLUTION=504x276
https://brightcove.com/services/rendition.m3u8?assetId=123456
#EXT-X-STREAM-INF:PROGRAM-ID=1,BANDWIDTH=1797000,RESOLUTION=720x394
https://brightcove.com/services/rendition.m3u8?assetId=123456
Run Code Online (Sandbox Code Playgroud)

然后每个再现的内容看起来像这样:

#EXTM3U
#EXT-X-TARGETDURATION:10
#EXT-X-MEDIA-SEQUENCE:0
#EXT-X-KEY:METHOD=AES-128,URI="https://brightcove.com/services/keyfile?assetId=123456
#EXTINF:11,

#EXT-X-KEY:METHOD=AES-128,URI="https://brightcove.com/services/keyfile?assetId=123456
#EXTINF:11,

#EXT-X-KEY:METHOD=AES-128,URI="https://brightcove.com/services/keyfile?assetId=123456
#EXTINF:11,

etc...
Run Code Online (Sandbox Code Playgroud)

html javascript video html5-video brightcove

1
推荐指数
1
解决办法
6842
查看次数