STRUCT VIDTV_PSI_SDT_WRITE_ARGS(9)
πΈ struct vidtv_psi_sdt_write_args(9) β from the Kernel API Manual, bestie π
okay so picture this: you're deep in the kernel source, you find this little struct hanging out in the vidtv driver, and you're like "what even is this?" β¨ Well congrats, you've found the crib notes for writing an SDT table. It's basically a little bundle of args you hand off so the write can actually happen. No cap. Keep reading, we're gonna get through it together π«Ά
β¨ NAME β¨
struct vidtv_psi_sdt_write_args β literally the Arguments for writing a SDT table. That's her whole job. That's the assignment. π
π¦ SYNOPSIS π¦
struct vidtv_psi_sdt_write_args {
char *buf;
u32 offset;
struct vidtv_psi_table_sdt *sdt;
u32 buf_sz;
u8 *continuity_counter;
};
π Members π
okay let's go member by member because each one is kind of iconic in her own way π₯
bufβ The destination buffer. This is where the good stuff lands. Think of it as the group chat and this table's the message πoffsetβ The offset into the destination buffer. Like, where in the buffer we're starting from. Gotta respect the placement, y'know? not me just dropping bytes at position zero πsdtβ A pointer to the SDT. Yes, THE SDT. Our main character. πbuf_szβ The size of the destination buffer. You gotta tell it how big the buffer is, bestie, otherwise how's it supposed to know where the edges are πcontinuity_counterβ A pointer to the CC. Incremented on every new packet. She's keeping count, she's keeping track, she's literally never missing a beat π
π§ SEE ALSO π§
the whole friend group, fr fr β everyone shows up π«Ά And yeah, they're all in the kernel file ./drivers/media/test-drivers/vidtv/vidtv_psi.h, so go say hi to the rest of the fam:
struct psi_write_args(9)struct desc_write_args(9)struct crc32_write_args(9)struct header_write_args(9)vidtv_psi_sdt_service_assign(9)vidtv_psi_desc_assign(9)vidtv_pmt_desc_assign(9)vidtv_sdt_desc_assign(9)vidtv_psi_pat_program_assign(9)vidtv_psi_pmt_stream_assign(9)vidtv_psi_pmt_create_sec_for_each_pat_entry(9)vidtv_psi_pmt_get_pid(9)vidtv_psi_pat_table_update_sec_len(9)vidtv_psi_pmt_table_update_sec_len(9)vidtv_psi_sdt_table_update_sec_len(9)struct vidtv_psi_pat_write_args(9)vidtv_psi_pat_write_into(9)vidtv_psi_sdt_write_into(9)struct vidtv_psi_pmt_write_args(9)vidtv_psi_pmt_write_into(9)vidtv_psi_find_pmt_sec(9)struct vidtv_psi_table_transport(9)struct vidtv_psi_table_nit(9)struct vidtv_psi_nit_write_args(9)vidtv_psi_nit_write_into(9)struct vidtv_psi_eit_write_args(9)vidtv_psi_eit_write_into(9)vidtv_psi_eit_table_update_sec_len(9)vidtv_psi_eit_event_assign(9)
and that's the whole page, bestie π This lil guy lives over in ./drivers/media/test-drivers/v..., and this edition was dated October 2026 β so like, shoutout to future us, mwah π Go write that SDT table, you're gonna slay. periodt. πβ
π¦ where this page comes from
- nixpkgs unstable: linux-manual 7.3.1
- π girlified by deepseek-ai/DeepSeek-V4.1-Flash-1017 on : a language model's rewrite of the original, under its terms