media_entit...e_pad_unique(9)
π
media_entity_remote_source_pad_unique(9) β Kernel API Manual π
okay bestie, welcome to the Kernel API Manual, this one's a media-entity situation and honestly she's giving very functional, very single-source, very "we don't do chaos here" β¨
πΈ NAME πΈ
media_entity_remote_source_pad_unique β find a remote source pad that's connected to an entity, and like... make sure there's exactly one of them. no drama, no duplicates π
π¦ SYNOPSIS π¦
struct media_pad * media_entity_remote_source_pad_unique (const struct media_entity *entity );
π ARGUMENTS π
entityβ the entity. that's it. that's the argument. she's the main character here π
β¨ DESCRIPTION β¨
So what she does is: she searches for a remote source pad that's connected to entity through an enabled link, and she returns it. π«Ά
But here's the vibe check, and listen closely babe β if multiple remote pads match those criteria, or none do, you get an error back. no "close enough", no "pick a favourite". it's all or nothing, periodt π
The whole uniqueness constraint is literally the point β it's what makes this helper function suitable for entities that only support a single active source at a time. icon behaviour, honestly. one source. one queen. no sharing. β¨
-ENOTUNIQβ multiple links are enabled. too many besties showed up π-ENOLINKβ no connected pad found. the group chat is empty π
π₯ RETURN π₯
A pointer to the remote pad, or one of the following error pointers if an error occurs:
bestie please always check the return value β she can come back as an error pointer and that is not a pad, no cap π
π SEE ALSO π
Kernel file ./include/media/media-entity.h β and omg the whole extended universe shows up in this one, it's giving crossover episode π
enum media_gobj_type(9),struct media_gobj(9),struct media_entity_enum(9),struct media_graph(9)struct media_pipeline(9),struct media_pipeline_pad(9),struct media_pipeline_pad_iter(9),struct media_pipeline_entity_iter(9)struct media_link(9),enum media_pad_signal_type(9),struct media_pad(9)struct media_entity_operations(9),enum media_entity_type(9),struct media_entity(9)media_entity_for_each_pad(9),struct media_interface(9),struct media_intf_devnode(9)media_entity_id(9),media_type(9),media_id(9),media_gobj_gen_id(9)is_media_entity_v4l2_video_device(9),is_media_entity_v4l2_subdev(9)media_entity_enum_init(9),media_entity_enum_cleanup(9),media_entity_enum_zero(9),media_entity_enum_set(9),media_entity_enum_clear(9),media_entity_enum_test(9),media_entity_enum_test_and_set(9),media_entity_enum_empty(9),media_entity_enum_intersects(9)gobj_to_entity(9),gobj_to_pad(9),gobj_to_link(9),gobj_to_intf(9),intf_to_devnode(9)media_gobj_create(9),media_gobj_destroy(9)media_entity_pads_init(9),media_entity_cleanup(9),media_get_pad_index(9)media_create_pad_link(9),media_create_pad_links(9),media_entity_remove_links(9)__media_entity_setup_link(9),media_entity_setup_link(9),media_entity_find_link(9)media_pad_remote_pad_first(9),media_pad_remote_pad_unique(9),media_entity_remote_pad_unique(9)media_pad_is_streaming(9),media_entity_is_streaming(9),media_entity_pipeline(9),media_pad_pipeline(9)media_entity_get_fwnode_pad(9)media_graph_walk_init(9),media_graph_walk_cleanup(9),media_graph_walk_start(9),media_graph_walk_next(9)media_pipeline_start(9),__media_pipeline_start(9),media_pipeline_stop(9),__media_pipeline_stop(9)media_pipeline_for_each_pad(9),media_pipeline_entity_iter_init(9),media_pipeline_entity_iter_cleanup(9),media_pipeline_for_each_entity(9),media_pipeline_alloc_start(9)media_devnode_create(9),media_devnode_remove(9)media_create_intf_link(9),__media_remove_intf_link(9),media_remove_intf_link(9),__media_remove_intf_links(9),media_remove_intf_links(9)media_entity_call(9),media_create_ancillary_link(9),__media_entity_next_link(9),for_each_media_entity_data_link(9)
fr fr that's the whole list, don't come for me, I didn't pick them π
okay and last thing bestie, the cute little sign-off: this page lives in ./include/media, dated October 2026, and it's all about media_entity_remote_source_pad_unique(9). go find your one true source pad, ily π§π
π¦ 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