STRUCT DMXDEV_FILTER(9)

πŸ“¦ version 7.3.1, in nixpkgs unstable

✨ struct dmxdev_filter(9) ✨

okay so bestie, welcome to the struct dmxdev_filter page from the Kernel API Manual β€” this is the digital TV dmxdev filter and she is, like, the main character of demux land πŸŽ€ iykyk


🌸 NAME 🌸

struct dmxdev_filter β€” digital TV dmxdev filter. literally what it says on the tin, no cap πŸ’…


πŸ¦‹ SYNOPSIS πŸ¦‹

struct dmxdev_filter {
    union {
      struct dmx_section_filter *sec;
    } filter;
    union {
      struct list_head ts;
      struct dmx_section_feed *sec;
    } feed;
    union {
      struct dmx_sct_filter_params sec;
      struct dmx_pes_filter_params pes;
    } params;
    enum dmxdev_type type;
    enum dmxdev_state state;
    struct dmxdev *dev;
    struct dvb_ringbuffer buffer;
    struct dvb_vb2_ctx vb2_ctx;
    struct mutex mutex;
    struct timer_list timer;
    int todo;
    u8 secheader[3];
 };

look at her. all those unions. she's giving organized chaos and honestly? obsessed 🫢


πŸ’– Members πŸ’–

  • filter β€” a union describing a dmxdev filter. rn it's Currently used only for section filters. one job, and she's slaying it ✨
  • filter.sec β€” a struct dmx_section_filter pointer. For section filter only, bestie πŸ’…
  • feed β€” a union describing a dmxdev feed. Depending on the filter type, it can be either feed.ts or feed.sec. choose your fighter 🌈
  • feed.ts β€” a struct list_head list. For TS and PES feeds. very list. very head. we love her πŸŽ€
  • feed.sec β€” a struct dmx_section_feed pointer. For section feed only. section girlies rise 😭
  • params β€” a union describing dmxdev filter parameters. Depending on the filter type, it can be either params.sec or params.pes β€” again, pick a lane babe πŸ’œ
  • params.sec β€” a struct dmx_sct_filter_params embedded struct. For section filter only. embedded and thriving 🌸
  • params.pes β€” a struct dmx_pes_filter_params embedded struct. For PES filter only. her PES era πŸ”₯
  • type β€” type of the dmxdev filter, as defined by enum dmxdev_type. know your type, be your type ⭐
  • state β€” state of the dmxdev filter, as defined by enum dmxdev_state. she contains multitudes πŸ’€
  • dev β€” pointer to struct dmxdev. say hi to ur parent πŸŽ€
  • buffer β€” an embedded struct dvb_ringbuffer buffer. it's giving circular, it's giving storage πŸ¦‹
  • vb2_ctx β€” control struct for VB2 handler. no notes, just vibes πŸ‘‘
  • mutex β€” protects the access to struct dmxdev_filter. do NOT skip the lock, bestie, that's how you get races and races are not cute πŸ™ˆ
  • timer β€” struct timer_list embedded timer, used to check for feed timeouts. Only for section filter. she's on the clock ⏰
  • todo β€” index for the secheader. Only for section filter. yes she's literally named todo, and yes she's doing the work πŸ’…
  • secheader β€” buffer cache to parse the section header. Only for section filter. three whole bytes of u8 serving header-parsing realness ✨

🧚 SEE ALSO 🧚

go read the whole friend group, they're all iconic fr fr 🫢


ngl bestie, every union in here is a "depends on the filter type" situation, so like… know your type before you touch the wrong member. lowkey important πŸ’€

and that's the page! shoutout to ./include/media from October 2026 for hosting this absolute queen of a struct β€” mwah, periodt πŸ’–πŸŒŸ

πŸ“¦ where this page comes from