User:Esev/Archived ToDo Items

From LinuxMCE
Jump to: navigation, search

2010/11/07

Investigate power button issues

I'm having issues when pressing the Power button on my Gyration_GYR4101US remote. If I'm controlling a non-pluto device, and press power, the device turns off but my receiver and TV are not switched back to the Orbiter OSD.

This isn't fixed yet. The fix that is in place won't work correctly for Live AV audio sources. They will still turn the TV back on. Need to read and understand this function. Right now in StreamEnded it calls this function with 0 and NULL for the Current arguments. I might be able to pass in the MD's device and use the Prior media type for the current media type and things will work. Need to test this.

void
Media_Plugin::HandleOnOffs(
    int PK_MediaType_Prior,
    int PK_MediaType_Current,
    map<int,MediaDevice *> *pmapMediaDevice_Prior,
    map<int,MediaDevice *> *pmapMediaDevice_Current,
    MediaStream *pMediaStream,
    EntertainArea *pEntertainArea)

Also should look into how the 'HOME' key works on the Orbiter's remote. For some reason when the code was removed the 'HOME' key didn't switch back on the Orbiter OSD. I'm wondering if I make this change will I break something there. Need to look at the Orbiter's Orbiter::GotActivity( int PK_Button ) function. It turns on the screen if it is off. if( !m_bDisplayOn ) CMD_Display_OnOff( "1",false ). Maybe m_bDisplayOn is getting set for the case when audio is playing with no video.


Might also consider turning off the OSD if only audio is playing and the audio was started via a remote Orbiter. I think that could be accomplished by not setting the pMediaDevice_MD->m_bDontSendOffIfOSD_ON.

See also:


Volume control of non-pluto devices

See this forum post and ticket #746. It doesn't seem to matter if the end device has pipes or not. The volume messages are always sent to the device, not the audio/video pipes of the remote MD.

#LinuxMCE-devel on 20101102

<TSCHAKeee2> esev: be very careful re volume pipes                   
<TSCHAKeee2> esev: volume commands should only go to the app server _IF_ an audio device isn't in the pipes.
<esev> TSCHAKeee2: what if the audio device in the pipes is in a different room?                                                                     
<TSCHAKeee2> you need to follow those pipes                          
<TSCHAKeee2> if there is no audio pipe setup for an EA, then the App Server should be used

See also

08	11/02/10 23:23:31.944		Received Message from 21 (OnScreen Orbiter / Home Theater) to 59 (BDP-S350 / Home Theater), type 1 id 89 Command:Vol Up, retry none, parameters: <0xa88fdb90>
08	11/02/10 23:23:31.944		  Parameter 41(StreamID): 1004 <0xa88fdb90>
10	11/02/10 23:23:31.944		AddMessageToQueue(ProcessQueue) adding message from 21 to 59 type 1 id 89 to queue size was: 0 <0xa88fdb90>
10	11/02/10 23:23:31.944		AddMessageToQueue(ProcessQueue) sent broadcast <0xa88fdb90>
10	11/02/10 23:23:31.944		ProcessQueue woke up with size: 1 <0xb662fb90>
10	11/02/10 23:23:31.944		ProcessQueue sending message from 21 to 59 type 1 id 89 to queue now size: 0 <0xb662fb90>
10	11/02/10 23:23:31.944		ProcessQueue Calling realsendmessage from queue <0xb662fb90>
08	11/02/10 23:23:31.944		Forwarding 89 Command:Vol Up up pipe to 139 (TX-SR602) <0xb662fb90>