2010-04-15, 00:23
... and some suggestions for additional methods ...
- VideoPlayer.TogglePartyMode
- AudioPlayer.TogglePartyMode
- Status.GetRepeatMode
- Status.IsPartyModeEnabled
- Status.IsPlaying
- Status.IsMuteEnabled
- Status.IsVideoShuffleEnabled
- Status.IsAudioShuffleEnabled
- Status.IsLastFmEnabled
- Status.GetNowPlaying
- Status.GetNowPlayingTime
- Status.GetNowPlayingTimeMS
- Status.GetNowPlayingPercentage
- Status.GetNowPlayingAudio
- Status.GetNowPlayingVideo
- Status.GetVolume
- AudioPlayer.LastFmLove
- AudioPlayer.LastFmHate
- Controls.ToggleMute (move from the XBMC namespace)
- Controls.Stop (regardless of what type of media is playing)
- Controls.PlayPause (play/pause the currently playing media; regardless of the type of media)
- Controls.Play (start playing the current playlist; regardless of the type of media)
- Controls.SkipNext (next in playlist; regardless of the type of media)
- Controls.SkipPrevious (previous in playlist; regardless of the type of media)
- Controls.Forward (regardless of the type of media)
- Controls.Rewind (regardless of the type of media)
- Controls.SmallSkipBackward (regardless of the type of media)
- Controls.SmallSkipForward (regardless of the type of media)
- Controls.BigSkipBackward (regardless of the type of media)
- Controls.BigSkipForward (regardless of the type of media)
- Controls.SendKey (could make life a lot easier for anyone using a HTPC/Xbox without a keyboard attached)
... most of the controls overlap with the existing controls. But they could make using the api a bit easier. I've already got it covered in the JS api. Making it easier to use will hopefully move more people to developing remotes
The status requests were a real b*tch in the HTTP api. They rendered a lot of overhead since I could only get the total sum of now playing. Having to obtain all the data to get the current playing percentage and filename (which are refreshed every second by default in XbmControl i.e.) made it hardly impossible to not get timeouts and lockups. So allowing to access this data individually could greatly improve speed and ease of use.
Essentially 4 values are required every few seconds/second in most cases....
- Current volume
- Current playing time/timeMS/percentage
- Some way to detect if new media is playing so all the other data can be updated (now playing info; artwork; highlighted playlist item; I use the file path for this in XbmControl since it's unique)
- Is anything playing at all? (slow down the request interval to reduce network load if not; the previous value could potentially be used for this)
... Ideally these values could be requested with ONE post.
Maybe the "XBMC.StartSildeshow" method should be in the PicturePlayer namespace?
Great to be able to post suggestions, even though I'm not expecting them to be implemented all...or any of them I'm just suggesting.
- VideoPlayer.TogglePartyMode
- AudioPlayer.TogglePartyMode
- Status.GetRepeatMode
- Status.IsPartyModeEnabled
- Status.IsPlaying
- Status.IsMuteEnabled
- Status.IsVideoShuffleEnabled
- Status.IsAudioShuffleEnabled
- Status.IsLastFmEnabled
- Status.GetNowPlaying
- Status.GetNowPlayingTime
- Status.GetNowPlayingTimeMS
- Status.GetNowPlayingPercentage
- Status.GetNowPlayingAudio
- Status.GetNowPlayingVideo
- Status.GetVolume
- AudioPlayer.LastFmLove
- AudioPlayer.LastFmHate
- Controls.ToggleMute (move from the XBMC namespace)
- Controls.Stop (regardless of what type of media is playing)
- Controls.PlayPause (play/pause the currently playing media; regardless of the type of media)
- Controls.Play (start playing the current playlist; regardless of the type of media)
- Controls.SkipNext (next in playlist; regardless of the type of media)
- Controls.SkipPrevious (previous in playlist; regardless of the type of media)
- Controls.Forward (regardless of the type of media)
- Controls.Rewind (regardless of the type of media)
- Controls.SmallSkipBackward (regardless of the type of media)
- Controls.SmallSkipForward (regardless of the type of media)
- Controls.BigSkipBackward (regardless of the type of media)
- Controls.BigSkipForward (regardless of the type of media)
- Controls.SendKey (could make life a lot easier for anyone using a HTPC/Xbox without a keyboard attached)
... most of the controls overlap with the existing controls. But they could make using the api a bit easier. I've already got it covered in the JS api. Making it easier to use will hopefully move more people to developing remotes
The status requests were a real b*tch in the HTTP api. They rendered a lot of overhead since I could only get the total sum of now playing. Having to obtain all the data to get the current playing percentage and filename (which are refreshed every second by default in XbmControl i.e.) made it hardly impossible to not get timeouts and lockups. So allowing to access this data individually could greatly improve speed and ease of use.
Essentially 4 values are required every few seconds/second in most cases....
- Current volume
- Current playing time/timeMS/percentage
- Some way to detect if new media is playing so all the other data can be updated (now playing info; artwork; highlighted playlist item; I use the file path for this in XbmControl since it's unique)
- Is anything playing at all? (slow down the request interval to reduce network load if not; the previous value could potentially be used for this)
... Ideally these values could be requested with ONE post.
Maybe the "XBMC.StartSildeshow" method should be in the PicturePlayer namespace?
Great to be able to post suggestions, even though I'm not expecting them to be implemented all...or any of them I'm just suggesting.