Emby Emby Emby Learn
  • Emby Home
  • Video
  • Audio
  • Media Files
    • Subtitles and captions
    • Photos and images
    • Metadata and discovery
    • Libraries and media collections
    • Playback and streaming
    • Media hardware acceleration
    • Displays and AV connections
    • Live TV and recording
  1. Emby Learn
  2. Displays and AV connections
  3. Playback input devices
  4. Human Interface Devices (HID)
Search Results for

    Show / Hide Table of Contents

    Human Interface Devices (HID)

    Human Interface Device reports describe controls through declared report layouts and usages, which a host interprets before applications assign actions.

    HID, Human Interface Device, provides a structured way to describe and report controls. Its use includes keyboards, pointers, gamepads and media-control devices.

    The report’s declared layout and usages tell a host what its fields mean. The receiving application then gives those controls an action in its own context.

    A descriptor describes; a report supplies state

    A report descriptor defines properties such as field sizes, ranges, collections and usages. An input report supplies values using that established layout.

    Reading a byte as an arbitrary key number without its descriptor can give the wrong meaning. The same bit pattern can represent a button, an axis value or padding under different layouts.

    The USB HID class specification defines its USB contract. Other transports, including supported Bluetooth profiles, can carry HID-related report arrangements through their own contracts.

    Usage pages qualify the control identifier

    USB-IF’s Usage Tables place controls into usage pages. The Consumer page has identifier 0x0C; its Play/Pause usage is 0xCD.

    Those identifiers describe a control meaning, not the label painted on every handset or a guarantee that every host/application exposes it.

    A keyboard key and a Consumer Play/Pause control are consequently different declarations even when an application maps both to a playback action.

    An original one-bit report model

    This readable teaching object defines one media-control field:

    {
      "usagePage": 12,
      "usage": 205,
      "logicalRange": [0, 1],
      "inputBits": 1,
      "paddingBits": 7
    }
    

    It is not a native HID report descriptor or a device capability capture. The decimal identifiers correspond to the Consumer/Play-Pause meanings above.

    For this original declared one-byte arrangement, with the control in the least significant bit:

    Report byte Declared control state
    00 Not asserted
    01 Asserted

    Seven other bits are padding in this model. A real descriptor can define more controls, report IDs and other layouts; the host must parse that actual declaration.

    An assertion is not an instruction to toggle continuously

    Polling an asserted report several times does not necessarily mean the user pressed the button several times.

    For an original sequence 00, 01, 01, 00, the control has one transition from unasserted to asserted. A toggle action can therefore run once rather than once per asserted sample.

    A navigation action can intentionally use a repeat policy. A continuous analog action can use another policy again. HID reports provide input meaning/state; application behavior decides the operation.

    The focused route determines the result

    The operating system can consume a media control globally or route it to an application. A UI view can also assign a control differently while a movie is playing than while the user browses a library.

    For Emby, a device recognized as HID is only early evidence. The host event, app focus and current action mapping determine whether a press actually pauses, navigates or does something else.

    Keyboard and remote support describes the app’s control surface. Gamepad input adds axis values and mapping decisions beyond a single media button.

    See Also

    • Bluetooth remote controls
    • Infrared remote controls
    • Gamepad input for media navigation

    References

    • USB-IF: HID class and usage specifications
    • USB-IF: HID Usage Tables 1.7
    • Bluetooth SIG: HID over GATT Profile 1.2
    On this Page
    2026 © EMBY LLC. Please see our terms of use and privacy policy.
    Back to Top