当前位置: 首页>>代码示例>>C#>>正文


C# PlaybackState类代码示例

本文整理汇总了C#中PlaybackState的典型用法代码示例。如果您正苦于以下问题:C# PlaybackState类的具体用法?C# PlaybackState怎么用?C# PlaybackState使用的例子?那么恭喜您, 这里精选的类代码示例或许可以为您提供帮助。


PlaybackState类属于命名空间,在下文中一共展示了PlaybackState类的15个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C#代码示例。

示例1: MediaStateChangedEventArgs

		public MediaStateChangedEventArgs(BufferState bufferState, NetworkState networkState, PlaybackState playbackState, SeekState seekState)
		{
			this.bufferState = bufferState;
			this.networkState = networkState;
			this.playbackState = playbackState;
			this.seekState = seekState;
		}
开发者ID:bossaia,项目名称:alexandrialibrary,代码行数:7,代码来源:MediaStateChangedEventArgs.cs

示例2: MediaEngine_MediaStateChanged

        private void MediaEngine_MediaStateChanged(MediaState state)
        {
            switch (state)
            {
                case MediaState.Loading:
                    this.PlaybackState = PlaybackState.Loading;

                    break;

                case MediaState.Stopped:
                    this.PlaybackState = PlaybackState.Paused;

                    break;

                case MediaState.Playing:
                    this.PlaybackState = PlaybackState.Playing;
                    break;

                case MediaState.Error:
                    this.PlaybackState = PlaybackState.Error_MediaInvalid;
                    break;

                case MediaState.Ended:
                    this.PlaybackState = PlaybackState.Ended;
                    break;
            }
        }
开发者ID:codekaizen,项目名称:internetradio,代码行数:27,代码来源:MediaEnginePlaybackManager.cs

示例3: Convert

 public static PlayerState? Convert(PlaybackState? inState)
 {
     if(!inState.HasValue) {
         return null;
     } else {
         return Convert(inState.Value);
     }
 }
开发者ID:GWigWam,项目名称:SpeechMusicController,代码行数:8,代码来源:PlayerState.cs

示例4: Form1

        public Form1()
        {
            InitializeComponent();

            m_state = PlaybackState.Closed;
            m_pPlayer = new DShowPlayer(panVideoWin, Handle, WM_GRAPH_EVENT);
            m_bDrag = false;
        }
开发者ID:adambyram,项目名称:pimaker,代码行数:8,代码来源:Form1.cs

示例5: MediaNotificationManager

        public MediaNotificationManager(MusicService serv)
        {
            service = serv;
            UpdateSessionToken();

            notificationColor = ResourceHelper.GetThemeColor(service,
                Android.Resource.Attribute.ColorPrimary, Color.DarkGray);

            notificationManager = (NotificationManager) service
                .GetSystemService(Context.NotificationService);

            string pkg = service.PackageName;
            pauseIntent = PendingIntent.GetBroadcast(service, RequestCode,
                new Intent(ActionPause).SetPackage(pkg), PendingIntentFlags.CancelCurrent);
            playIntent = PendingIntent.GetBroadcast(service, RequestCode,
                new Intent(ActionPlay).SetPackage(pkg), PendingIntentFlags.CancelCurrent);
            previousIntent = PendingIntent.GetBroadcast(service, RequestCode,
                new Intent(ActionPrev).SetPackage(pkg), PendingIntentFlags.CancelCurrent);
            nextIntent = PendingIntent.GetBroadcast(service, RequestCode,
                new Intent(ActionNext).SetPackage(pkg), PendingIntentFlags.CancelCurrent);

            notificationManager.CancelAll ();

            mCb.OnPlaybackStateChangedImpl = (state) => {
                playbackState = state;
                LogHelper.Debug (Tag, "Received new playback state", state);
                if (state != null && (state.State == PlaybackStateCode.Stopped ||
                    state.State == PlaybackStateCode.None)) {
                    StopNotification ();
                } else {
                    Notification notification = CreateNotification ();
                    if (notification != null) {
                        notificationManager.Notify (NotificationId, notification);
                    }
                }
            };

            mCb.OnMetadataChangedImpl = (meta) => {
                metadata = meta;
                LogHelper.Debug (Tag, "Received new metadata ", metadata);
                Notification notification = CreateNotification ();
                if (notification != null) {
                    notificationManager.Notify (NotificationId, notification);
                }
            };

            mCb.OnSessionDestroyedImpl = () => {
                LogHelper.Debug (Tag, "Session was destroyed, resetting to the new session token");
                UpdateSessionToken ();
            };
        }
开发者ID:CHANDAN145,项目名称:monodroid-samples,代码行数:51,代码来源:MediaNotificationManager.cs

示例6: Play

        /// <summary>
        /// Begin playback
        /// </summary>
        public void Play()
        {
            if (playbackState == PlaybackState.Stopped)
            {
                // -------------------------------------------------------------------------------------
                // Thread that process samples
                // -------------------------------------------------------------------------------------
                notifyThread = new Thread(new ThreadStart(processSamples));
                // put this back to highest when we are confident we don't have any bugs in the thread proc
                notifyThread.Priority = ThreadPriority.Normal;
                notifyThread.IsBackground = true;
                notifyThread.Start();
            }

            lock (m_LockObject)
            {
                playbackState = PlaybackState.Playing;
            }
        }
开发者ID:Punloeu,项目名称:karaoke,代码行数:22,代码来源:DirectSoundOut.cs

示例7: Init

        /// <summary>
        /// Initialises the WaveOut device
        /// </summary>
        /// <param name="waveProvider">WaveProvider to play</param>
        public void Init(IWaveProvider waveProvider)
        {
            this.waveStream = waveProvider;
            int bufferSize = waveProvider.WaveFormat.ConvertLatencyToByteSize((DesiredLatency + NumberOfBuffers - 1) / NumberOfBuffers);            

            MmResult result;
            lock (waveOutLock)
            {
                result = WaveInterop.waveOutOpenWindow(out hWaveOut, (IntPtr)DeviceNumber, waveStream.WaveFormat, callbackEvent.SafeWaitHandle.DangerousGetHandle(), IntPtr.Zero, WaveInterop.WaveInOutOpenFlags.CallbackEvent);
            }
            MmException.Try(result, "waveOutOpen");

            buffers = new WaveOutBuffer[NumberOfBuffers];
            playbackState = PlaybackState.Stopped;
            for (int n = 0; n < NumberOfBuffers; n++)
            {
                buffers[n] = new WaveOutBuffer(hWaveOut, bufferSize, waveStream, waveOutLock);
            }
        }
开发者ID:LuckyLuik,项目名称:_GLDNBT,代码行数:23,代码来源:WaveOutEvent.cs

示例8: play

        /// <summary>
        /// Public method called by the main view to start playing the playlist
        /// </summary>
        public void play()
        {
            // If there is no backgroundworker initialized, do that
            if (playerThread == null)
            {
                playerThread = new BackgroundWorker();
                playerThread.DoWork += new DoWorkEventHandler(playerThread_DoWork);
                playerThread.ProgressChanged += new ProgressChangedEventHandler(playerThread_ProgressChanged);
                playerThread.RunWorkerCompleted += new RunWorkerCompletedEventHandler(playerThread_RunWorkerCompleted);
                playerThread.WorkerReportsProgress = true;

            }

            // Set state to playing
            this.playState = PlaybackState.Playing;

            // start playing the entire queue
            playQueue();
        }
开发者ID:rogerstewart,项目名称:subsonic-csharp,代码行数:22,代码来源:PlayerForm.cs

示例9: Stop

 /// <summary>
 /// Stop playback
 /// </summary>
 public void Stop()
 {
     // Try and tidy up nicely
     if (Monitor.TryEnter(m_LockObject, 50))
     {
         playbackState = PlaybackState.Stopped;
         Monitor.Exit(m_LockObject);
     }
     else
     {
         // No joy - abort the thread!
         if (notifyThread != null)
         {
             notifyThread.Abort();
             notifyThread = null;
         }
     }
 }
开发者ID:aljordan,项目名称:NAJAudio,代码行数:21,代码来源:DirectSoundOut.cs

示例10: Pause

        /// <summary>
        /// Stop playback without flushing buffers
        /// </summary>
        public void Pause()
        {
            if (playbackState == PlaybackState.Playing)
            {
                playbackState = PlaybackState.Paused;
            }

        }
开发者ID:KarimLUCCIN,项目名称:NAudioCustom,代码行数:11,代码来源:WasapiOutRT.cs

示例11: Play

 /// <summary>
 /// Begin Playback
 /// </summary>
 public void Play()
 {
     if (playbackState != PlaybackState.Playing)
     {
         if (playbackState == PlaybackState.Stopped && !preventNewPlayTaskCreation)
         {
             playbackState = PlaybackState.Playing;
             playTask = Task.Run((Action)PlayThread);
         }
         else
         {
             playbackState = PlaybackState.Playing;
         }
     }
 }
开发者ID:KarimLUCCIN,项目名称:NAudioCustom,代码行数:18,代码来源:WasapiOutRT.cs

示例12: RefreshPlaybackState

		public void RefreshPlaybackState()
		{
			PlaybackState nextPlaybackState = playbackState;
		
			if (sound != null)
			{
				if (sound.CurrentSubSoundIndex != -1 && sound.CurrentSubSound != null)
				{
					if (sound.CurrentSubSound.Channel.IsPlaying)
					{
						if (sound.CurrentSubSound.Channel.Paused)
							nextPlaybackState = PlaybackState.Paused;
						else nextPlaybackState = PlaybackState.Playing;
					}
					else nextPlaybackState = PlaybackState.Stopped;
				}
				else
				{
					if (sound.Channel != null)
					{
						if (sound.Channel.IsPlaying)
						{
							if (sound.Channel.Paused)
								nextPlaybackState = PlaybackState.Paused;
							else nextPlaybackState = PlaybackState.Playing;
						}
						else nextPlaybackState = PlaybackState.Stopped;
					}
					else nextPlaybackState = PlaybackState.None;
				}
			}
			else nextPlaybackState = PlaybackState.None;

			if (playbackState != nextPlaybackState)
			{
				playbackState = nextPlaybackState;
				if (PlaybackStateChanged != null)
					PlaybackStateChanged(this, new MediaStateChangedEventArgs(BufferState, NetworkState, PlaybackState, SeekState));
			}
		}
开发者ID:bossaia,项目名称:alexandrialibrary,代码行数:40,代码来源:CompactDiscSound.cs

示例13: Play

        /// <summary>
        /// Begin Playback
        /// </summary>
        public void Play()
        {
            if (playbackState != PlaybackState.Playing)
            {
                if (playbackState == PlaybackState.Stopped)
                {
                    playThread = new Thread(new ThreadStart(PlayThread));
                    playbackState = PlaybackState.Playing;
                    playThread.Start();
                }
                else
                {
                    playbackState = PlaybackState.Playing;
                }

            }
        }
开发者ID:NoOnes2,项目名称:scharfrichter,代码行数:20,代码来源:WasapiOut.cs

示例14: Stop

 /// <summary>
 /// Stop and reset the WaveOut device
 /// </summary>
 public void Stop()
 {
     if (playbackState != PlaybackState.Stopped)
     {
         // in the call to waveOutReset with function callbacks
         // some drivers will block here until OnDone is called
         // for every buffer
         playbackState = PlaybackState.Stopped; // set this here to avoid a problem with some drivers whereby 
         MmResult result;
         lock (waveOutLock)
         {
             result = WaveInterop.waveOutReset(hWaveOut);
         }
         if (result != MmResult.NoError)
         {
             throw new MmException(result, "waveOutReset");
         }
         callbackEvent.Set(); // give the thread a kick, make sure we exit
     }
 }
开发者ID:EnergonV,项目名称:BestCS,代码行数:23,代码来源:WaveOutEvent.cs

示例15: Init

        /// <summary>
        /// Initialises the WaveOut device
        /// </summary>
        /// <param name="waveProvider">WaveProvider to play</param>
        public void Init(IWaveProvider waveProvider)
        {
            this.waveStream = waveProvider;
            int bufferSize = waveProvider.WaveFormat.ConvertLatencyToByteSize((DesiredLatency + NumberOfBuffers - 1) / NumberOfBuffers);

            MmResult result;
            lock (waveOutLock)
            {
                result = callbackInfo.WaveOutOpen(out hWaveOut, DeviceNumber, waveStream.WaveFormat, callback);
            }
            MmException.Try(result, "waveOutOpen");

            buffers = new WaveOutBuffer[NumberOfBuffers];
            playbackState = PlaybackState.Stopped;
            for (int n = 0; n < NumberOfBuffers; n++)
            {
                buffers[n] = new WaveOutBuffer(hWaveOut, bufferSize, waveStream, waveOutLock);
            }
        }
开发者ID:aljordan,项目名称:NAJAudio,代码行数:23,代码来源:WaveOut.cs


注:本文中的PlaybackState类示例由纯净天空整理自Github/MSDocs等开源代码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。