= {
.name = "tilesplit",
GF_FS_SET_HELP(
"This filter splits an HEVC tiled stream into tiled HEVC streams (`hvt1` or `hvt2` in ISOBMFF)."
"\n"
"The filter will move to passthrough mode if the bitstream is not tiled.\n"
"If the `Bitrate` property is set on the input PID, the output tile PIDs will have a bitrate set to `(Bitrate - 10k)/nb_opids`, 10 kbps being reserved for the base.\n"
"\n"
"Each tile PID will be assigned the following properties:\n"
"- `ID`: equal to the base PID ID (same as input) plus the 1-based index of the tile in raster scan order.\n"
"- `TileID`: equal to the 1-based index of the tile in raster scan order.\n"
"\n"
"Warning: The filter does not check if tiles are independently-coded (MCTS) !\n"
"\n"
"Warning: Support for dynamic changes of tiling grid has not been tested !\n"
)
}
#define GF_FS_SET_HELP(_help)
Definition: filters.h:2372
#define SETCAPS(__struct)
Definition: filters.h:2364
@ GF_FS_REG_EXPLICIT_ONLY
Definition: filters.h:2393
@ GF_FS_CLASS_STREAM
Definition: filters.h:2445
static const GF_FilterCapability TileSplitCaps[]
Definition: tilesplit.c:534
static const GF_FilterArgs TileSplitArgs[]
Definition: tilesplit.c:556
static GF_Err tilesplit_process(GF_Filter *filter)
Definition: tilesplit.c:362
static GF_Err tilesplit_configure_pid(GF_Filter *filter, GF_FilterPid *pid, Bool is_remove)
Definition: tilesplit.c:96
static GF_Err tilesplit_initialize(GF_Filter *filter)
Definition: tilesplit.c:509
static void tilesplit_finalize(GF_Filter *filter)
Definition: tilesplit.c:516
Definition: tilesplit.c:46