public static void GetNameWithoutExtension(DVDFileInfo file, out StringBuilder name, out StringBuilder extension) { string fullName = file.fileUrl; int originalLength = fullName.Length; int startIndex = 0; int length = originalLength; int index = fullName.LastIndexOf('/'); if (index != -1) { startIndex = index + 1; length = length - startIndex; } index = fullName.LastIndexOf('.'); if (index != -1) { int difference = originalLength - index; length = length - difference; extension = new StringBuilder(fullName, index, difference, difference); } else { extension = null; } name = new StringBuilder(fullName, startIndex, length, length); }
private void OnFileSelected(DVDFileInfo file, int fileIndex) { if (OnFileChosen != null) { OnFileChosen(file, fileIndex); } }
private static bool TryPlayMedia(MediaHelpers.MediaType mediaType, DVDFileInfo file, BaseMediaPlayer player) { switch (mediaType) { case MediaHelpers.MediaType.Video: BaseVideoPlayer videoPlayer = player as BaseVideoPlayer; if (videoPlayer != null) { PlayOptions options = new PlayOptions(); options.Path = file.fileUrl; options.Type = BaseVideoPlayer.VideoType.Other; videoPlayer.Play(options); return(true); } break; case MediaHelpers.MediaType.Photo: //BasePhotoPlayer photoPlayer = player as BasePhotoPlayer; //if (photoPlayer != null) { // photoPlayer.ShowPhoto(file); // return true; //} break; default: Debug.LogError("Invalid Media Type."); break; } return(false); }
public void SetToFile(StringBuilder displayName, DVDFileInfo file, string prefabName, int fileIndex) { directory.javaObj = null; directory.isDir = false; SetNameText(file.fileName); this.file = file; this.fileIndex = fileIndex; CachedPrefabName = prefabName; //SetImageToThumbnail(); }
/// fileIndex is NOT the index on the page. It is the index in the directory. public FileSelectorTile AddFileTile(DVDFileInfo file, int fileIndex) { StringBuilder displayName, extension; StringHelpers.GetNameWithoutExtension(file, out displayName, out extension); string extensionString = extension.ToString(); GameObject prefab = prefabData.GetPrefabForExtension(extensionString); string prefabName = prefabData.GetPrefabNameForExtension(extensionString); FileSelectorTile tile = AddTile(prefab, prefabName); tile.SetToFile(displayName, file, prefabName, fileIndex); return(tile); }
public void AnalyzeDirectorys() { directArray.Clear(); fileArray.Clear(); DVDDirectoryInfo[] dctArray = DvDInterface.GetInstance().GetFileList(this.javaObj); for (int i = 0; i < dctArray.Length; i++) { if (dctArray[i].isDir) { directArray.Add(dctArray[i]); } else { DVDFileInfo file = new DVDFileInfo(); file.fileName = dctArray[i].name; file.fileUrl = dctArray[i].path; file.isDir = dctArray[i].isDir; file.extension = dctArray[i].extension; file.javaObj = dctArray[i].javaObj; fileArray.Add(file); } } }
public void AnalyzeDirectorys() { List <DVDDirectoryInfo> dctArray = GetFileList(); m_dVDdirectoryInfos.Clear(); m_dVDFileInfos.Clear(); for (int i = 0; i < dctArray.Count; i++) { if (dctArray[i].isDir) { m_dVDdirectoryInfos.Add(dctArray[i]); } else { DVDFileInfo file = new DVDFileInfo(); file.fileName = dctArray[i].name; file.fileUrl = dctArray[i].path; file.isDir = dctArray[i].isDir; file.extension = dctArray[i].extension; file.javaObj = dctArray[i].javaObj; m_dVDFileInfos.Add(file); } } }
private void OnFileChosen(DVDFileInfo file, int fileIndex) { MediaHelpers.MediaType mediaType = MediaHelpers.GetMediaType(file); if (mediaType == MediaHelpers.MediaType.Invalid) { return; } //CreateMediaPlayer(mediaType); //TryPlayMedia(mediaType, file, currentPlayer); if (mediaType == MediaHelpers.MediaType.Video) { JVideoDescriptionInfo jVideo = new JVideoDescriptionInfo(-1, file.fileName, file.fileUrl, file.fileUrl, 0, 0, (int)StereoType.ST3D_LR, 0, 0, System.DateTime.Now, null, null); PlayerDataControl.GetInstance().SetJVideoDscpInfoByLiveUrl(jVideo); PlayerRoot.SetActive(true); } else { return; } mediaSelectorContainer.SetActive(false); currentFileIndex = fileIndex; }
public static MediaType GetMediaType(DVDFileInfo file) { return(GetMediaType(file.extension)); }
private void IncrementFile(bool previousDirection) { fileSelector = GetComponent <FileSelectorPageProvider>(); Assert.IsNotNull(fileSelector); DVDFileInfo[] files = fileSelector.SubFiles; if (files == null || files.Length <= 1) { return; } if (currentPlayer == null) { return; } if (currentFileIndex == -1) { return; } int nextIndex; if (previousDirection) { nextIndex = currentFileIndex - 1; } else { nextIndex = currentFileIndex + 1; } if (nextIndex >= files.Length) { nextIndex = 0; } else if (nextIndex < 0) { nextIndex = files.Length - 1; } DVDFileInfo nextFile = files[nextIndex]; MediaHelpers.MediaType mediaType = MediaHelpers.GetMediaType(nextFile); bool success = TryPlayMedia(mediaType, nextFile, currentPlayer); // Wrong media player type. if (!success) { CreateMediaPlayer(mediaType); TryPlayMedia(mediaType, nextFile, currentPlayer); PlaybackControlsManager playbackControlsManager = currentPlayerObject.GetComponentInChildren <PlaybackControlsManager>(); if (playbackControlsManager != null) { playbackControlsManager.SetPlaybackControlsOpen(true); } } mediaSelectorContainer.SetActive(false); currentFileIndex = nextIndex; }