【问题标题】:Video playback cuts off the last few seconds视频播放中断最后几秒
【发布时间】:2019-02-05 00:25:12
【问题描述】:

我正在统一播放视频,短片很好,但较长的剪辑会切断最后几秒钟。我的视频是 52 秒,播放大约 50 秒后停止。我从网上随机尝试了一个 2:45 的视频,它在 2:41 后停止了。我不知道发生了什么。

我尝试了视频剪辑和 URL。两者都有问题。

IEnumerator playVideo(SubjectClipState clipState)
{
    clipState.clipObject.videoPlayer.Stop();
    clipState.clipObject.audioSource.Stop();

    clipState.clipObject.videoPlayer.playOnAwake = false;
    clipState.clipObject.audioSource.playOnAwake = false;
    clipState.clipObject.videoPlayer.source = VideoSource.Url;
    clipState.clipObject.videoPlayer.audioOutputMode = clipState.clipConfig.hasAudio ? VideoAudioOutputMode.AudioSource : VideoAudioOutputMode.None;
    clipState.clipObject.videoPlayer.controlledAudioTrackCount = clipState.clipConfig.hasAudio ? Convert.ToUInt16(1) : Convert.ToUInt16(0);
    clipState.clipObject.videoPlayer.EnableAudioTrack(0, clipState.clipConfig.hasAudio);
    if (clipState.clipConfig.hasAudio) clipState.clipObject.videoPlayer.SetTargetAudioSource(0, clipState.clipObject.audioSource);
    clipState.clipObject.videoPlayer.url = clipState.clipConfig.url;
    clipState.clipObject.videoPlayer.isLooping = clipState.clipConfig.endAction.type == "loop";
    clipState.clipObject.videoPlayer.Prepare();

    while (!clipState.clipObject.videoPlayer.isPrepared)
    {
        yield return null;
    }

    clipState.clipObject.videoPlayer.Play();
}

注意:videoPlayer 和 audioSource 在代码的其他地方设置。 LoopPointReached 已附加。

我是这样玩的:

StartCoroutine("playVideo", subjectClipState);

LoopPointReached 将在完成前几秒钟中断。视频播放器 x/x 帧是正确的。例如2740/2740 帧。

【问题讨论】:

  • 这是在编辑器里吗?特定平台?所有平台?
  • 我目前在编辑器中,是的。 Windows 10。你认为如果我尝试 rift 构建它不会中断吗?

标签: unity3d


【解决方案1】:

好的,事实证明这是 Unity 2018.2 的一个错误。当我升级到 2018.3 时,它并没有切断。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2022-08-19
    • 2014-03-31
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多