コード例 #1
0
        public static bool InitializeVideoPlayerAndContainer(string fileName, VideoInfo videoInfo, VideoPlayerContainer videoPlayerContainer, EventHandler onVideoLoaded, EventHandler onVideoEnded)
        {
            try
            {
                videoPlayerContainer.VideoPlayer = GetVideoPlayer();
                videoPlayerContainer.VideoPlayer.Initialize(videoPlayerContainer.PanelPlayer, fileName, onVideoLoaded, onVideoEnded);
                videoPlayerContainer.ShowStopButton       = Configuration.Settings.General.VideoPlayerShowStopButton;
                videoPlayerContainer.ShowFullscreenButton = false;
                videoPlayerContainer.ShowMuteButton       = Configuration.Settings.General.VideoPlayerShowMuteButton;
                videoPlayerContainer.Volume = Configuration.Settings.General.VideoPlayerDefaultVolume;
                videoPlayerContainer.EnableMouseWheelStep();
                if (fileName != null && (fileName.StartsWith("https://", StringComparison.OrdinalIgnoreCase) || fileName.StartsWith("http://", StringComparison.OrdinalIgnoreCase)))
                {
                    // we don't have videoInfo for streams...
                }
                else
                {
                    videoPlayerContainer.VideoWidth  = videoInfo.Width;
                    videoPlayerContainer.VideoHeight = videoInfo.Height;
                    videoPlayerContainer.VideoPlayer.Resize(videoPlayerContainer.PanelPlayer.Width, videoPlayerContainer.PanelPlayer.Height);
                }

                return(true);
            }
            catch (Exception exception)
            {
                videoPlayerContainer.VideoPlayer = null;
                var videoError = new VideoError();
                videoError.Initialize(fileName, exception);
                videoError.ShowDialog();
                SeLogger.Error(exception, "InitializeVideoPlayerAndContainer failed to load video player");
                return(false);
            }
        }
コード例 #2
0
ファイル: UiUtil.cs プロジェクト: yiyouls/subtitleedit
 public static void InitializeVideoPlayerAndContainer(string fileName, VideoInfo videoInfo, VideoPlayerContainer videoPlayerContainer, EventHandler onVideoLoaded, EventHandler onVideoEnded)
 {
     try
     {
         videoPlayerContainer.VideoPlayer = GetVideoPlayer();
         videoPlayerContainer.VideoPlayer.Initialize(videoPlayerContainer.PanelPlayer, fileName, onVideoLoaded, onVideoEnded);
         videoPlayerContainer.ShowStopButton       = Configuration.Settings.General.VideoPlayerShowStopButton;
         videoPlayerContainer.ShowFullscreenButton = false;
         videoPlayerContainer.ShowMuteButton       = Configuration.Settings.General.VideoPlayerShowMuteButton;
         videoPlayerContainer.Volume = Configuration.Settings.General.VideoPlayerDefaultVolume;
         videoPlayerContainer.EnableMouseWheelStep();
         if (fileName != null && (fileName.StartsWith("https://") || fileName.StartsWith("http://")))
         {
             // we don't have videoInfo for streams...
         }
         else
         {
             videoPlayerContainer.VideoWidth  = videoInfo.Width;
             videoPlayerContainer.VideoHeight = videoInfo.Height;
             videoPlayerContainer.VideoPlayer.Resize(videoPlayerContainer.PanelPlayer.Width, videoPlayerContainer.PanelPlayer.Height);
         }
     }
     catch (Exception exception)
     {
         videoPlayerContainer.VideoPlayer = null;
         var videoError = new VideoError();
         videoError.Initialize(fileName, videoInfo, exception);
         videoError.ShowDialog();
     }
 }
コード例 #3
0
    public override void OnVideoError(VideoError videoError)
    {
        unityVideoPlayer.Stop();
        Debug.LogError("[APIVideo] Video failed: " + currentUrl);

        switch (videoError)
        {
        case VideoError.RateLimited:
            Debug.Log("Rate limited, try again in a few seconds");
            break;

        case VideoError.PlayerError:
            Debug.Log("Video player error");
            break;

        case VideoError.InvalidURL:
            Debug.Log("Invalid URL");
            break;

        case VideoError.AccessDenied:
            Debug.Log("Video blocked, enable untrusted URLs");
            break;

        default:
            Debug.Log("Failed to load video");
            break;
        }
    }
コード例 #4
0
        public override void OnVideoError(VideoError videoError)
        {
            _loadingVideo         = false;
            _currentLoadingTime   = 0f;
            _currentRetryCount    = 0;
            _videoTargetStartTime = 0f;

            _currentPlayer.Stop();
            Debug.LogError("[USharpVideo] Video failed: " + _syncedURL);

            switch (videoError)
            {
            case VideoError.RateLimited:
                _statusStr = "Rate limited, try again in a few seconds";
                break;

            case VideoError.PlayerError:
                _statusStr = "Video player error";
                break;

            case VideoError.InvalidURL:
                _statusStr = "Invalid URL";
                break;

            case VideoError.AccessDenied:
                _statusStr = "Video blocked, enable untrusted URLs";
                break;

            default:
                _statusStr = "Failed to load video";
                break;
            }
            SetStatusText(_statusStr);
            PlayNextVideoFromPlaylist();
        }
コード例 #5
0
        public override void OnVideoError(VideoError videoError)
        {
            _currentPlayer.Stop();

            DebugLog("Video stream failed: " + _syncUrl);
            DebugLog("Error code: " + videoError);

            localPlayerState   = PLAYER_STATE_ERROR;
            localLastErrorCode = videoError;

            if (Networking.IsOwner(gameObject))
            {
                if (retryOnError)
                {
                    _StartVideoLoadDelay(retryTimeout);
                }
                else
                {
                    _syncVideoStartNetworkTime = 0;
                    _videoTargetTime           = 0;
                    _syncOwnerPlaying          = false;
                    RequestSerialization();
                }
            }
            else
            {
                _StartVideoLoadDelay(retryTimeout);
            }
        }
コード例 #6
0
    public void show(VideoError errorMessage)
    {
        rootObject.SetActive(true);
        string message;

        switch (errorMessage)
        {
        case VideoError.AccessDenied:
            message = "ERROR: Access Denied";
            break;

        case VideoError.PlayerError:
            message = "ERROR: Player Error";
            break;

        case VideoError.RateLimited:
            message = "ERROR: Rate Limited.";
            break;

        case VideoError.InvalidURL:
            message = "ERROR: Invalid URL";
            break;

        case VideoError.Unknown:
            message = "ERROR: Unknown error";
            break;

        default:
            message = "ERROR: Unknown error";
            break;
        }

        textComponent.text = message;
    }
コード例 #7
0
 public override void OnVideoError(VideoError videoError)
 {
     DebugLog($"There was a `{videoError}` error in the video.");
     _status           = _status | _status_error;
     _messageText.text = $"Error:{videoError}";
     ValidateView();
 }
コード例 #8
0
        public override void OnVideoError(VideoError videoError)
        {
            _loadingVideo         = false;
            _currentLoadingTime   = 0f;
            _currentRetryCount    = 0;
            _videoTargetStartTime = 0f;

            _currentPlayer.Stop();
            Debug.LogError("[USharpVideo] Video failed: " + _syncedURL);

            switch (videoError)
            {
            case VideoError.RateLimited:
                _statusStr = "Rate limited, try again in a few seconds";
                break;

            case VideoError.PlayerError:
                _statusStr = "Video player error";
                break;

            case VideoError.InvalidURL:
                _statusStr = "Invalid URL";
                break;

            case VideoError.AccessDenied:
                _statusStr = "Video blocked, enable untrusted URLs";
                break;

            default:
                _statusStr = "Failed to load video";
                break;
            }
            SetStatusText(_statusStr);

            int nextScreenMode = SCREEN_MODE_TRANSITION;

            if (videoError == VideoError.AccessDenied)
            {
                nextScreenMode = SCREEN_MODE_ERROR_BLOCKED;
            }

            UpdateScreenMaterial(nextScreenMode);

            _delayStartLoad = Time.time + DELAY_START_TIMEOUT;
            if (Networking.IsOwner(gameObject))
            {
                PlayNextVideoFromPlaylist();
            }
            else
            {
                FullResync();
            }
        }
コード例 #9
0
        public override void OnVideoError(VideoError videoError)
        {
            videoLoadErrorController.show(videoError);
            inputFieldLoadMessage.SetActive(false);

            if (list != null)
            {
                if (list.autoPlay)
                {
                    list.SendCustomNetworkEvent(NetworkEventTarget.All, nameof(KinelPlaylist.AutoPlayDisable));
                }
            }
        }
コード例 #10
0
ファイル: Tunify.cs プロジェクト: Varneon/UdonEssentials
        public override void OnVideoError(VideoError videoError)
        {
            Log($"<color=#990000>{nameof(OnVideoError)}</color> {videoError}");

            SetNextSongAsCurrent();

            HighlightSongListItem(false);

            ResetSongInfo();

            FinishLoading();

            ShowError(videoError.ToString());
        }
コード例 #11
0
 public override void OnVideoError(VideoError videoError)
 {
     //Requires "using VRC.SDK3.Components.Video;" to be used
 }
コード例 #12
0
 public override void OnVideoError(VideoError videoError)
 {
     Debug.Log("[<color=green>VRC Scroll Event Calendar</color>] OnVideoError at \"" + transform.parent.name + "\". Reason: " + videoError.ToString());
 }
コード例 #13
0
 public static void InitializeVideoPlayerAndContainer(string fileName, VideoInfo videoInfo, VideoPlayerContainer videoPlayerContainer, EventHandler onVideoLoaded, EventHandler onVideoEnded)
 {
     try
     {
         videoPlayerContainer.VideoPlayer = GetVideoPlayer();
         videoPlayerContainer.VideoPlayer.Initialize(videoPlayerContainer.PanelPlayer, fileName, onVideoLoaded, onVideoEnded);
         videoPlayerContainer.ShowStopButton = Configuration.Settings.General.VideoPlayerShowStopButton;
         videoPlayerContainer.ShowFullscreenButton = false;
         videoPlayerContainer.ShowMuteButton = Configuration.Settings.General.VideoPlayerShowMuteButton;
         videoPlayerContainer.Volume = Configuration.Settings.General.VideoPlayerDefaultVolume;
         videoPlayerContainer.EnableMouseWheelStep();
         videoPlayerContainer.VideoWidth = videoInfo.Width;
         videoPlayerContainer.VideoHeight = videoInfo.Height;
         videoPlayerContainer.VideoPlayer.Resize(videoPlayerContainer.PanelPlayer.Width, videoPlayerContainer.PanelPlayer.Height);
     }
     catch (Exception exception)
     {
         videoPlayerContainer.VideoPlayer = null;
         var videoError = new VideoError();
         videoError.Initialize(fileName, videoInfo, exception);
         videoError.ShowDialog();
     }
 }
コード例 #14
0
 public override void OnVideoError(VideoError videoError)
 {
     _currentPlayer.Stop();
     Debug.LogError("Video failed: " + _syncedURL);
 }
コード例 #15
0
 public void EmitVideoError(VideoError videoError)
 {
     _videoError = videoError;
     _isEmitted  = _isVideoError = true;
 }