0

我正在开发一个在 Node webkit 中实现的桌面应用程序。我已经在其中集成了 Vimeo 视频播放器(使用 Froogaloop)。直到上个月,它运行良好,但从那时起,它几乎每次都崩溃。

我检查了我的应用程序的早期版本,它之前运行良好,但它也开始在那里崩溃。

我从他们的 API 测试了基本的 Vimeo Player 代码。它如下:

JS:

$(function () {
            var iframe = $('#player1')[0];
            var player = $f(iframe);
            var status = $('.status');

            // When the player is ready, add listeners for pause, finish, and playProgress
            player.addEvent('ready', function () {
                status.text('ready');

                player.addEvent('pause', onPause);
                player.addEvent('finish', onFinish);
                player.addEvent('playProgress', onPlayProgress);
            });

            // Call the API when a button is pressed
            $('button').bind('click', function () {
                player.api($(this).text().toLowerCase());
            });

            function onPause() {
                status.text('paused');
            }

            function onFinish() {
                status.text('finished');
            }

            function onPlayProgress(data) {
                status.text(data.seconds + 's played');
            }
        });

HTML:

<script src="https://f.vimeocdn.com/js/froogaloop2.min.js"></script>
<iframe id="player1" src="https://player.vimeo.com/video/76979871?api=1&player_id=player1" width="630" height="354" frameborder="0" webkitallowfullscreen mozallowfullscreen allowfullscreen></iframe>

    <div>
        <button>Play</button>
        <button>Pause</button>
        <p>Status: <span class="status">&hellip;</span></p>
    </div>

但即使是通过 Node-webkit 运行时也会崩溃。有趣的是,上面的代码在通过 Apache (WAMP) 托管的网页上运行良好。似乎从 Vimeo 前端发生了一些变化,Node webkit 无法处理。

有人可以帮忙吗?我在Vimeo 论坛上添加了同样的问题。

谢谢。

4

1 回答 1

0

我以前有这个问题。基本上 NW.js 几乎不支持开箱即用的编解码器,这是由于编解码器的许可问题。Vimeo(很可能)使用 mp4 播放视频,这是目前最流行但也不支持的视频。

看看Using MP3 & MP4 (H.264) using the video & audio tags。 在 NW.js 维基上。它解释了如何获取 chrome 的编解码器 DLL 并将其提供给 NW.js

考虑两件事:

  • 这将使您的项目大小增加一兆或两兆。
  • 在您的项目中包含这些编解码器可能需要也可能不需要您处理一些许可问题。
于 2016-03-29T12:36:32.843 回答