private void PlayVideo(string fullPath) { Android.Content.Res.AssetFileDescriptor afd = null; try { afd = Context.Assets.OpenFd(fullPath); } catch (Java.IO.IOException ex) { Console.WriteLine("Play video: " + Element.Source + " not found because " + ex); _mainVideoView.Visibility = ViewStates.Gone; } catch (Exception ex) { Console.WriteLine("Error openfd: " + ex); _mainVideoView.Visibility = ViewStates.Gone; } if (afd != null) { Console.WriteLine("Lenght " + afd.Length); VideoPlayer.Reset(); VideoPlayer.SetDataSource(afd.FileDescriptor, afd.StartOffset, afd.Length); VideoPlayer.PrepareAsync(); } }
private void SetMediaPlayer(string path, bool fromFile) { if (_mediaPlayer != null) { return; } _mediaPlayer = new MediaPlayer(); _mediaPlayer.Prepared += (sender, args) => { _mediaPlayer.Start(); _mediaPlayer.Completion += MediaPlayerCompletion; }; _mediaPlayer.Reset(); _mediaPlayer.SetVolume(1.0f, 1.0f); if (fromFile) { Android.Content.Res.AssetFileDescriptor assetFileDescriptor = GetAssetFileDescriptor(path); if (assetFileDescriptor == null) { return; } _mediaPlayer.SetDataSource(assetFileDescriptor.FileDescriptor, assetFileDescriptor.StartOffset, assetFileDescriptor.Length); } else { _mediaPlayer.SetDataSource(Android.App.Application.Context, Android.Net.Uri.Parse(path)); } }
public void PlayBackgroundMusic(string fileName) { if (mIsBackgroundMusicOn == false) { return; } if (mPlayer_BackgroundMusic != null) // Stop and dispose of any background music { mPlayer_BackgroundMusic.Stop(); mPlayer_BackgroundMusic.Dispose(); } mPlayer_BackgroundMusic = new Android.Media.MediaPlayer(); mPlayer_BackgroundMusic.Prepared += (s, e) => { mPlayer_BackgroundMusic.Start(); }; mPlayer_BackgroundMusic.SeekComplete += (s, e) => // 循环播放背景音乐 { mPlayer_BackgroundMusic.SeekTo(0); mPlayer_BackgroundMusic.Start(); }; Android.Content.Res.AssetFileDescriptor assetFileDescriptor = Application.Context.Assets.OpenFd(fileName); mPlayer_BackgroundMusic.SetDataSource(assetFileDescriptor.FileDescriptor, assetFileDescriptor.StartOffset, assetFileDescriptor.Length); mPlayer_BackgroundMusic.SetVolume(mBackgroundMusicVolume, mBackgroundMusicVolume); mPlayer_BackgroundMusic.Prepare(); }
public void Play(string pathToAudioFIle) { // Check if _audioPlayer is currently playing if (_mediaPlayer != null) { if (_mediaPlayer.IsPlaying) { _mediaPlayer.Completion -= MediaPlayer_Completion; _mediaPlayer.Stop(); } else { _mediaPlayer.Start(); return; } } var fullPath = pathToAudioFIle; Android.Content.Res.AssetFileDescriptor afd = null; #if true // true - play embedded audio, false - play audio from network try { afd = MainActivity.CONTEXT.Assets.OpenFd(fullPath); } catch (Exception ex) { Console.WriteLine("Error openfd: " + ex); } #endif //if (afd != null) { //System.Diagnostics.Debug.WriteLine("Length " + afd.Length); if (_mediaPlayer == null) { _mediaPlayer = new MediaPlayer(); _mediaPlayer.Prepared += (sender, args) => { _mediaPlayer.Start(); _mediaPlayer.Completion += MediaPlayer_Completion; }; } _mediaPlayer.Reset(); _mediaPlayer.SetVolume(1.0f, 1.0f); if (afd != null) { _mediaPlayer.SetDataSource(afd.FileDescriptor, afd.StartOffset, afd.Length); } else { _mediaPlayer.SetDataSource("http://192.168.1.26:3000/Despacito%20(Remix).flac"); } _mediaPlayer.Prepare(); _mediaPlayer.Start(); } }
void play(string fullPath) { ISurfaceHolder holder = videoView.Holder; holder.SetType(SurfaceType.PushBuffers); holder.AddCallback(this); player = new MediaPlayer(); Android.Content.Res.AssetFileDescriptor afd = this.Assets.OpenFd(fullPath); if (afd != null) { player.SetDataSource(afd.FileDescriptor, afd.StartOffset, afd.Length); player.Prepare(); player.Start(); } }
public void Play(string p_FilePath) { using (MediaPlayer player = new MediaPlayer()) { if (p_FilePath.IndexOf("Content") > -1) { Android.Content.Res.AssetFileDescriptor af = Android.App.Application.Context.Assets.OpenFd(p_FilePath); player.SetDataSource(af.FileDescriptor, af.StartOffset, af.Length); } else { player.SetDataSource(Path.Combine(DataPath, p_FilePath)); } player.Prepare(); player.Start(); } }
public void SetUpAudio() { try { player = new MediaPlayer(); afd = global::Android.App.Application.Context.Assets.OpenFd("KARTKA.mp3"); player.SetDataSource(afd.FileDescriptor, afd.StartOffset, afd.Length); player.Completion += Player_SeekComplete; player.Info += Player_Info; player.Prepare(); } catch (System.Exception ex) { Console.WriteLine(ex); } }
public static Music CreateMusicFromAsset(MusicManager pMusicManager, Context pContext, String pAssetPath) /*throws IOException */ { MediaPlayer mediaPlayer = new MediaPlayer(); //AssetFileDescriptor assetFileDescritor = pContext.getAssets().openFd(MusicFactory.sAssetBasePath + pAssetPath); AssetFileDescriptor assetFileDescritor = pContext.Assets.OpenFd(MusicFactory.sAssetBasePath + pAssetPath); mediaPlayer.SetDataSource(assetFileDescritor.FileDescriptor, assetFileDescritor.StartOffset, assetFileDescritor.Length); mediaPlayer.Prepare(); Music music = new Music(pMusicManager, mediaPlayer); pMusicManager.Add(music); return(music); }
public void Play(string pathToAudioFIle) { // Check if _audioPlayer is currently playing if (_mediaPlayer != null) { _mediaPlayer.Completion -= MediaPlayer_Completion; _mediaPlayer.Stop(); } var fullPath = pathToAudioFIle; Android.Content.Res.AssetFileDescriptor afd = null; try { afd = MainActivity.CONTEXT.Assets.OpenFd(fullPath); } catch (Exception ex) { Console.WriteLine("Error openfd: " + ex); } if (afd != null) { System.Diagnostics.Debug.WriteLine("Length " + afd.Length); if (_mediaPlayer == null) { _mediaPlayer = new MediaPlayer(); _mediaPlayer.Prepared += (sender, args) => { _mediaPlayer.Start(); _mediaPlayer.Completion += MediaPlayer_Completion; }; } _mediaPlayer.Reset(); _mediaPlayer.SetVolume(1.0f, 1.0f); _mediaPlayer.SetDataSource(afd.FileDescriptor, afd.StartOffset, afd.Length); _mediaPlayer.Prepare(); _mediaPlayer.Start(); } }
public void ToggleEngine() { if (_mediaPlayer != null) { _mediaPlayer.Completion -= OnMediaCompleted; _mediaPlayer.Stop(); _mediaPlayer = null; } else { const string fullPath = "Sounds/engine.m4a"; Android.Content.Res.AssetFileDescriptor afd = null; try { afd = Forms.Context.Assets.OpenFd(fullPath); } catch (Exception) { // ignored } if (afd != null) { if (_mediaPlayer == null) { _mediaPlayer = new MediaPlayer(); _mediaPlayer.Prepared += (sender, args) => { _mediaPlayer.Start(); _mediaPlayer.Completion += OnMediaCompleted; }; } _mediaPlayer.Reset(); _mediaPlayer.SetVolume(0.1f, 0.1f); _mediaPlayer.SetDataSource(afd.FileDescriptor, afd.StartOffset, afd.Length); _mediaPlayer.PrepareAsync(); } } }
/// <summary> /// Plays the specified path to sound name. /// </summary> /// <param name="pathToSoundName">Name of the path to sound.</param> public void Play(string pathToSoundName) { if (_mediaPlayer != null) { _mediaPlayer.Completion -= MediaPlayer_Completion; _mediaPlayer.Stop(); } var fullPath = pathToSoundName; Android.Content.Res.AssetFileDescriptor afd = null; try { afd = Forms.Context.Assets.OpenFd(fullPath); } catch (Exception ex) { Console.WriteLine("Error openfd: " + ex); } if (afd != null) { System.Diagnostics.Debug.WriteLine("Length " + afd.Length); if (_mediaPlayer == null) { _mediaPlayer = new MediaPlayer(); _mediaPlayer.Prepared += (sender, args) => { _mediaPlayer.Start(); _mediaPlayer.Completion += MediaPlayer_Completion; }; } _mediaPlayer.Reset(); _mediaPlayer.SetVolume(1.0f, 1.0f); _mediaPlayer.SetDataSource(afd.FileDescriptor, afd.StartOffset, afd.Length); _mediaPlayer.PrepareAsync(); } }
private track[] openFiles() { track[] trackList = new track[100]; int count = 0; var listAssets = Assets.List(""); foreach (var file in listAssets) { try { Android.Content.Res.AssetFileDescriptor newFd = Assets.OpenFd(file); track newTrack = new track(newFd.FileDescriptor, file, newFd.StartOffset, newFd.DeclaredLength); trackList[count] = newTrack; count++; } catch {} } return(trackList); }
/// <summary> /// 测试播放 Android Assets 内的音频资源 /// </summary> /// <param name="fileName"></param> public void PlayAssetsFile(string fileName) { lock (_LOCK_) { if (mPlayer_Asset == null) { mPlayer_Asset = new Android.Media.MediaPlayer(); mPlayer_Asset.Prepared += (s, e) => { mPlayer_Asset.Start(); }; } else { mPlayer_Asset.Reset(); } Android.Content.Res.AssetFileDescriptor assetFileDescriptor = Application.Context.Assets.OpenFd(fileName); mPlayer_Asset.SetDataSource(assetFileDescriptor.FileDescriptor, assetFileDescriptor.StartOffset, assetFileDescriptor.Length); mPlayer_Asset.Prepare(); } }
public void PlaySoundEffect(string fileName) { if (mIsEffectsOn == false) { return; } if (mPlayer_SoundEffect != null) // Stop and dispose of any background music { mPlayer_SoundEffect.Stop(); mPlayer_SoundEffect.Dispose(); } mPlayer_SoundEffect = new Android.Media.MediaPlayer(); mPlayer_SoundEffect.Prepared += (s, e) => { mPlayer_SoundEffect.Start(); }; Android.Content.Res.AssetFileDescriptor assetFileDescriptor = Application.Context.Assets.OpenFd(fileName); mPlayer_SoundEffect.SetDataSource(assetFileDescriptor.FileDescriptor, assetFileDescriptor.StartOffset, assetFileDescriptor.Length); mPlayer_SoundEffect.SetVolume(mEffectsVolume, mEffectsVolume); mPlayer_SoundEffect.Prepare(); }
private void PlayVideo(string fullPath) { Android.Content.Res.AssetFileDescriptor afd = null; try { afd = Context.Assets.OpenFd(fullPath); } catch (Java.IO.IOException ex) { _mainVideoView.Visibility = ViewStates.Gone; } catch { _mainVideoView.Visibility = ViewStates.Gone; } if (afd != null) { VideoPlayer.Reset(); VideoPlayer.SetDataSource(afd.FileDescriptor, afd.StartOffset, afd.Length); VideoPlayer.PrepareAsync(); } }