private void StartTrail(PlayerDisplayType type) { var index = (int)type; var totalTrails = trails.Length; Assert.IsTrue(index > -1 || index > totalTrails, "trail: " + type + " out of range" + totalTrails); var currentTrail = trails[index]; currentTrail.transform.localPosition = Vector3.zero; currentTrail.Show(); }
public void Show(PlayerDisplayType type) { DisableAllModels(); var totalModels = models.Length; var index = (int)type; Assert.IsTrue(index > -1 || index > totalModels, $"Model: {index} out of range {totalModels}"); var currentModel = models[index]; currentModel.Show(); currentModel.transform.localPosition = Vector3.zero; }
/// <summary> /// Build a url to the otamata sound player. /// </summary> /// <param name="soundId">The sound id</param> /// <param name="version">What version of player</param> /// <param name="displayType">What display type of player</param> /// <returns>The player url</returns> public static string SoundPlayerUrl(string soundId, SoundPlayerVersion version, PlayerDisplayType displayType) { if (version == SoundPlayerVersion.Version1) { /* * /player/([sound number digit as letter][random letter])*[player version as letter (a=0, b=2, etc.)][random letter][display type as letter] * * Example * * player version = 1 * dispay type = 0 * sound number = 23 * * /player/b6cPbWa */ string encryptedSoundId = string.Empty; int lowerCaseaInAscii = 97; int upperCaseAInAscii = 65; int soundIdLen = soundId.Length; Random rand1 = new Random(); for (int i = 0; i < soundIdLen; i++) { int digit = soundId[i] - '0'; // [soundId characterAtIndex:i] - '0'; // encryptedSoundId = [NSString stringWithFormat:@"%@%c%c", encryptedSoundId, lowerCaseaInAscii + digit, random() % 26 + upperCaseAInAscii]; encryptedSoundId = string.Format("{0}{1}{2}", encryptedSoundId, (char)(lowerCaseaInAscii + digit), (char)(rand1.Next(26) + upperCaseAInAscii)); } // encryptedSoundId = [NSString stringWithFormat:@"%@%c%c%c", encryptedSoundId, lowerCaseaInAscii + version, random() % 26 + upperCaseAInAscii, lowerCaseaInAscii + displayType]; encryptedSoundId = string.Format("{0}{1}{2}{3}", encryptedSoundId, (char)(lowerCaseaInAscii + version), (char)(rand1.Next(26) + upperCaseAInAscii), (char)(lowerCaseaInAscii + displayType)); // return [NSString stringWithFormat:@"http://%@/player/%@", [self remoteHost], encryptedSoundId]; return(string.Format("{0}/player/{1}", Config.ServerName, encryptedSoundId)); } else { throw new NotImplementedException(string.Format("Invalid sound player version: {0}", version)); } }
public HohoemaPlaylist(HohoemaApp hohoemaApp, PlaylistSettings playlistSettings, StorageFolder playlistSaveFolder, HohoemaViewManager viewMan) { HohoemaApp = hohoemaApp; PlaylistSettings = playlistSettings; PlaylistsSaveFolder = playlistSaveFolder; Player = new PlaylistPlayer(this, playlistSettings); _SecondaryView = viewMan; Playlists = new ReadOnlyObservableCollection <LocalMylist>(_Playlists); MakeDefaultPlaylist(); CurrentPlaylist = DefaultPlaylist; if (ApplicationData.Current.LocalSettings.Values.TryGetValue(nameof(PlayerDisplayType), out var showInMainView)) { try { _PlayerDisplayType = (bool)showInMainView ? PlayerDisplayType.PrimaryView : PlayerDisplayType.SecondaryView; } catch { } } Player.PlayRequested += Player_PlayRequested; }
/// <summary> /// Build a url to the otamata sound player. /// </summary> /// <param name="soundId">The sound id</param> /// <param name="version">What version of player</param> /// <param name="displayType">What display type of player</param> /// <returns>The player url</returns> public static string SoundPlayerUrl(int soundId, SoundPlayerVersion version, PlayerDisplayType displayType) { return(SoundPlayerUrl(soundId.ToString(), version, displayType)); }
internal static extern PlayerErrorCode SetEcoreDisplay(IntPtr player, PlayerDisplayType type, IntPtr ecoreWindow, int x = 0, int y = 0, int width = 1920, int height = 1080);
internal static extern PlayerErrorCode SetDisplay(IntPtr player, PlayerDisplayType type, IntPtr display);
public void Show(PlayerDisplayType type) { DisableAllTrails(); StartTrail(type); }