Emby and Nvidia Shield device states

So, after testing device states on various apps these were my results

Netflix playing
'audio_state': 'paused', 'wake_lock_size': 2, 'current_app': 'com.netflix.ninja', 'media_session_state': 3

Netflix paused
'audio_state': 'paused', 'wake_lock_size': 0, 'current_app': 'com.netflix.ninja', 'media_session_state': 2

netflix idle
'audio_state': 'paused', 'wake_lock_size': 0, 'current_app': 'com.netflix.ninja', 'media_session_state': 1

netflix preview
'audio_state': 'paused', 'wake_lock_size': 2, 'current_app': 'com.netflix.ninja', 'media_session_state': 3


Android TV Launcher
'audio_state': 'paused', 'wake_lock_size': 0, 'current_app': 'com.google.android.tvlauncher', 'media_session_state': None


Plex idle
'audio_state': 'paused', 'wake_lock_size': 1, 'current_app': 'com.plexapp.android', 'media_session_state': None

Plex paused
'audio_state': 'paused', 'wake_lock_size': 1, 'current_app': 'com.plexapp.android', 'media_session_state': 2

Plex playing
'audio_state': 'paused', 'wake_lock_size': 3, 'current_app': 'com.plexapp.android', 'media_session_state': 3


Emby idle
'audio_state': 'paused', 'wake_lock_size': 1, 'current_app': 'tv.emby.embyatv', 'media_session_state': None

Emby paused
'audio_state': 'paused', 'wake_lock_size': 1, 'current_app': 'tv.emby.embyatv', 'media_session_state': None

Emby playing
'audio_state': 'paused', 'wake_lock_size': 3, 'current_app': 'tv.emby.embyatv', 'media_session_state': None


YouTube idle
'audio_state': 'paused', 'wake_lock_size': 1, 'current_app': 'com.google.android.youtube.tv', 'media_session_state': 0

Youtube paused
'audio_state': 'paused', 'wake_lock_size': 1, 'current_app': 'com.google.android.youtube.tv', 'media_session_state': 2

Youtube playing
'audio_state': 'paused', 'wake_lock_size': 3, 'current_app': 'com.google.android.youtube.tv', 'media_session_state': 3

This led to my config

media_player:
  - platform: androidtv
    name: Shield
    host: 192.168.0.152
    apps:
      tv.emby.embyatv: "Emby"
      com.netflix.ninja: "Netflix"
      com.google.android.tvlauncher: "Android TV Launcher"
      com.plexapp.android: "Plex"
      com.google.android.youtube.tv: "YouTube"
    state_detection_rules:
      'tv.emby.embyatv':
        - 'playing':
            'wake_lock_size': 3
        - 'standby':
            'wake_lock_size': 1
      'com.netflix.ninja':
        - 'playing':
            'media_session_state': 3
            'wake_lock_size': 2
        - 'paused':
            'media_session_state': 2
            'wake_lock_size': 0
        - 'standby':
            'media_session_state': 1
            'wake_lock_size': 0
      'com.google.android.tvlauncher':
        - 'standby':
            'wake_lock_size': 0
      'com.plexapp.android':
        - 'playing':
            'media_session_state': 3
            'wake_lock_size': 3
        - 'paused':
            'media_session_state': 2
            'wake_lock_size': 1
        - 'standby':
            'wake_lock_size': 1
      'com.google.android.youtube.tv':
        - 'playing':
            'media_session_state': 3
            'wake_lock_size': 3
        - 'paused':
            'media_session_state': 2
            'wake_lock_size': 1
        - 'standby':
            'media_session_state': 0
            'wake_lock_size': 1

I haven’t tested thoroughly but it worked with a brief run-through. I’ll follow up if I notice any issues.

2 Likes