Files
zoneminder/src
Isaac ConnorandClaude Opus 4.8 326e1b0ab2 feat: synthesize in_frame from the captured image when not decoded
Capture paths that deliver a raw Image without an ffmpeg decode (e.g.
LocalCamera/V4L2) left packet->in_frame null even though the pixels were
already present, so anything expecting a decoded frame failed. In
particular YChannel analysis called get_y_image(), which needs
in_frame->data[0], and logged "Can't get y_image without frame".

At the end of Monitor::Decode(), when a packet has an image but no
in_frame, wrap the image's planes in an AVFrame via Image::PopulateFrame
(av_image_fill_arrays over a dont_free buffer ref: pointers, no copy).
Any format is populated; consumers that need a specific layout check for
themselves (get_y_image now reports RGB has no Y plane rather than "no
frame").

Done after PHASE 5 so the frame reflects the oriented/masked image and we
don't re-orient a shared Y plane, and after the codec phases so
transfer_hwframe is never called with the null codec context a
non-decoding camera has. videostore is unaffected: it prefers
packet->image for frame data and derives pts from packet->timestamp.

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
2026-07-05 12:59:18 -04:00
..
2013-03-17 00:45:21 +01:00
2024-10-26 14:29:40 -04:00
2024-03-26 13:43:58 -05:00
2024-10-26 14:29:40 -04:00
2025-07-05 08:09:09 -04:00
2021-05-30 21:41:58 +02:00
2026-01-29 18:50:42 -05:00
2026-06-25 17:30:35 -04:00
2024-10-29 13:30:29 -04:00
2025-02-26 21:04:32 +11:00
2025-02-26 21:04:32 +11:00
2023-01-18 16:01:42 -05:00
2025-07-05 08:09:09 -04:00
2025-07-05 08:09:09 -04:00
2026-01-05 16:36:36 -05:00
2026-01-05 16:36:36 -05:00