public bool SetCallbackFunc( TCallbackFunc CallbackFunc, TCallbackMessage Messages, int UserData) { return(ZPlay.zplay_SetCallbackFunc(this.objptr, CallbackFunc, Messages, UserData) == 1); }
public int MyCallbackFunc(uint objptr, int userdata, TCallbackMessage msg, uint param1, uint param2) { switch (msg) { //播放完 case TCallbackMessage.MsgStop: HasPlayingMusic = false; if (OnMusicEnd != null) { OnMusicEnd(new object(), EventArgs.Empty); } break; } return(0); }
/// <summary> /// Callback function /// </summary> /// <param name="objptr"></param> /// <param name="user_data"></param> /// <param name="msg"></param> /// <param name="param1"></param> /// <param name="param2"></param> /// <returns></returns> /// <remarks></remarks> public int MyCallbackFunc(uint objptr, int user_data, TCallbackMessage msg, uint param1, uint param2) { switch (msg) { case TCallbackMessage.MsgEnterVolumeSlideAsync: SetText("EnterFadeAsync"); break; case TCallbackMessage.MsgExitVolumeSlideAsync: SetText("ExitFadeAsync"); FadeFinished = true; break; case TCallbackMessage.MsgStreamBufferDoneAsync: BufferCounter = BufferCounter + 1; SetText("StreamBufferDoneAsync: " + System.Convert.ToString(BufferCounter)); // read more data and push into stream byte[] stream_data = null; int small_chunk = 100000; stream_data = br.ReadBytes(small_chunk); if (stream_data.Length > 0) { player.PushDataToStream(ref stream_data, System.Convert.ToUInt32(stream_data.Length)); } else { byte[] tempMemNewData1 = null; player.PushDataToStream(ref tempMemNewData1, 0); } break; case TCallbackMessage.MsgNextSongAsync: { SetText("MsgNextSongAsync: " + System.Convert.ToString(param1)); NextSong = true; } break; } return 0; }
private extern static int zplay_SetCallbackFunc(uint objptr, [MarshalAs(UnmanagedType.FunctionPtr)] TCallbackFunc pCallbackFunc, TCallbackMessage nMessage, int user_data);
public bool SetCallbackFunc(TCallbackFunc CallbackFunc, TCallbackMessage Messages, int UserData) { return zplay_SetCallbackFunc(objptr, CallbackFunc, Messages, UserData) == 1; }
static int MsgBgm(uint objptr, int userData, TCallbackMessage msg, uint param1, uint param2) { if (_notStop) { _notStop = false; return 0; } switch (msg) { case TCallbackMessage.MsgStopAsync: var bgmFile = FileHelper.FindFile(Project.Current.MusicPath, Bgm); if (!String.IsNullOrEmpty(bgmFile)) { //BgmPlayer.OpenFile(bgmFile, TStreamFormat.sfUnknown); BgmPlayer.StartPlayback(); } break; } return 0; }
public bool SetCallbackFunc(TCallbackFunc CallbackFunc, TCallbackMessage Messages, int UserData);
private static extern int zplay_SetCallbackFunc( uint objptr, [MarshalAs(UnmanagedType.FunctionPtr)] TCallbackFunc pCallbackFunc, TCallbackMessage nMessage, int user_data);