Nodes/UCLA Daily/UCLA Daily: Deep Dive Batch
ComfyUI Node

UCLA Daily: Deep Dive Batch

Render every event as a full deep-dive card, in one tensor

By jbrick2070·Created 7 months ago·Updated 7 months ago· 0
UCLA Daily: Deep Dive Batch
  • ucla_data
  • card_batch
  • card_count
  • save_dir
◄card_width1920►
◄card_height1080►
◄max_cards20►
◄show_unofficial_badgetrue►
◄show_qr_codetrue►
◄enrich_descriptionstrue►
◄save_to_diskfalse►

UCLADeepDiveBatch is what you reach for instead of wiring up forty copies of UCLADeepDiveCard. It takes the pipeline's UCLA_DATA, renders every event as a full deep-dive card, and returns them as a single batched IMAGE tensor - (N, H, W, 3) - plus a count and a save directory. One node in, a whole event lineup out. This is the node that actually feeds the slideshow.

It's part of the UCLA Daily pack by Jeffrey A. Brick, which turns UCLA's public feeds into lobby-display content. The pipeline is DataInit → fetchers → cards → MP4, and DeepDiveBatch is the workhorse between the fetchers and the video. Everything the single-card node can do - venue addresses, QR codes, dynamic font sizing, procedural art, description enrichment - it does in bulk.

How it works

It's a loop over the same renderer the single card uses, capped by max_cards (1–100, default 20) so a busy week can't blow up your VRAM or your render time. Each card is a full 1920x1080 deep-dive layout with the venue address from the built-in database, the enriched description, the QR code to the event page, and the category-aware procedural art. All cards stack into one tensor, which is exactly the shape ComfyUI's video and batch nodes expect.

Two details matter for how you use it. enrich_descriptions (default on) means a network request per event on top of the initial fetches - fine for a once-a-day render, slow if you're iterating. And save_to_disk (default off) can write the whole batch of PNGs to a directory and hand you the path, which is handy if you want to inspect individual cards before committing to video.

The inputs

  • ucla_data - required; the pipeline dict from UCLADailyDataInit + fetchers.
  • card_width / card_height - default 1920×1080.
  • max_cards - cap on how many cards to render; default 20.
  • show_unofficial_badge, show_qr_code, enrich_descriptions, save_to_disk - booleans, default on except save_to_disk.

Outputs

Three: card_batch (the IMAGE tensor, N×H×W×3), card_count (INT), and save_dir (STRING - the directory, if save_to_disk is on).

Install

ComfyUI Manager → search UCLA Daily, or:

cd ComfyUI/custom_nodes
git clone https://github.com/jbrick2070/ComfyUI-UCLADaily.git
pip install qrcode pillow requests

Restart ComfyUI. Rendering needs Pillow; QR needs qrcode.

Common issues

The honest advice: don't run this node repeatedly while you're still arranging fetchers - every run is N network hits for enrichment plus a full render, and it's easy to burn time and bandwidth on cards you're about to throw away. And on a small GPU, rendering 20+ full-HD cards into one tensor will be slow and memory-hungry; drop max_cards while you tune. When you're ready to actually ship the video, this is the node feeding UCLASlideshowExport.

CategoryUCLA Daily

Inputs (8)

NameTypeDefaultDescription
ucla_dataUCLA_DATAUCLA data dict from pipeline.
card_widthoptINT1920800–3840—
card_heightoptINT1080600–2160—
max_cardsoptINT201–100Maximum number of deep dive cards to render.
show_unofficial_badgeoptBOOLEANtrue—
show_qr_codeoptBOOLEANtrue—
enrich_descriptionsoptBOOLEANtrue—
save_to_diskoptBOOLEANfalse—

Outputs (3)

NameTypeDescription
card_batchIMAGE—
card_countINT—
save_dirSTRING—