首页
学习
活动
专区
工具
TVP
发布
社区首页 >问答首页 >HTML5视频元素在Tizen中非常慢(三星智能电视开发)

HTML5视频元素在Tizen中非常慢(三星智能电视开发)
EN

Stack Overflow用户
提问于 2019-05-15 09:35:42
回答 1查看 1.7K关注 0票数 1

我最近开始在Tizen环境和软件开发工具包中编程,我正在尝试创建一个(三星)智能电视应用程序,它接受mp4媒体链接并以视频播放器的形式显示这些链接,问题是每当我使用html5视频标记时,应用程序需要很长时间(2-4分钟)才能加载,而且很多时间甚至根本不加载。

代码已经在JsFiddle和本地进行了测试,在那里运行得很好,但是每当我试图在Tizen项目(在三星电视模拟器中运行)的index.html中执行相同的代码时,它就会显示出我刚才解释的行为(非常慢/崩溃)。

下面是我尝试过的一些例子:

代码语言:javascript
复制
<html>
    <head>
        <link href="https://vjs.zencdn.net/7.5.4/video-js.css" rel="stylesheet">
    </head>

    <body>
        <video id='my-video' class='video-js' controls preload='auto' 
        width='640' height='264'
        poster="download.jpg" data-setup='{}'>
            <source src='sample.mp4' type='video/mp4'>
            <p class='vjs-no-js'>
                To view this video please enable JavaScript, and consider upgrading to a web browser that
                <a href='https://videojs.com/html5-video-support/' target='_blank'>supports HTML5 video</a>
           </p>
       </video>
       <script src='https://vjs.zencdn.net/7.5.4/video.js'></script>
   </body>
</html>

我也试过不使用video-js,我只试着使用video元素,但同样的结果,它有时会工作,有时不会,当它工作时,它需要很长时间才能真正加载。根据这些文档,HTML5是受支持的,他们发布的指南甚至“鼓励”使用视频标签。我也尝试过用javascript生成HTML,并试图让它像那样工作,但没有成功。

EN

回答 1

Stack Overflow用户

发布于 2019-05-16 20:57:21

它可能是模拟器、编解码器等的视频标签实现。我假设你不能在实际的Tizen TV设备上测试代码,所以我建议首先添加事件侦听器,看看发生了什么,然后尝试AVPlay API,我建议在你的应用程序中实现它。

代码语言:javascript
复制
<body>
 <video id='video' width='700' height='400'
   poster='yourPosterURI' src='yourVideoURI'
   controls style='background:black'>
 </video>
</body>    


var videoElement = document.getElementById('video');

videoElement.addEventListener('loadeddata', function() {
   console.log('Video loaded.');
});

videoElement.addEventListener('timeupdate', function() {
   console.log('Current time: ' + videoElement.currentTime);
});

videoElement.addEventListener('seeked', function() {
    console.log('Seek operation completed.');
    videoElement.play();
});

videoElement.addEventListener('stalled', function() {
    console.log('Video stalled.');
});

videoElement.addEventListener('ended', function() {
    console.log('Video ended.');
});
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/56140682

复制
相关文章

相似问题

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