вт, 29 сент. 2026 г., 21:25 Phyllis Smith via Cin <cin@lists.cinelerra-gg.org>:
The error I am getting when I render a hardware vaapi loaded video with audio using h264_vaapi.mp4 is:
Assertion pic->display_order == pic->encode_order failed at libavcodec/vaapi_encode_h264.c:421

I hit different assert at hw_base_encode.c:62.

But I get this once too, I think.

The code in libavcodec/vaapi_encode_h264.c is exactly the same for 8.1 as 9.0.2.  I am continuing to investigate.


yeah :( I am afraid some libavcodec optimization exposed us to some threading issue invisible before. I tried setting threads=1 in encoding profile but it was not helping. Playing with bframes etc also not helped

The errors Andrew reported are:
RenderFarmClient::main_loop: client started
[AVHWFramesContext @ 0xafddc0c0] Unsupported format: vaapi.

Ah, I hit this in vaapi mkv profiles

cin_pix_fmt=nv12 fixed that. (may be we missed setting it even fir ffmpeg 8.1 after we added vulkan encoding).

But error above (assert) still reliably kills encode :(



Failed to initialize HW frame context.
  err: Invalid argument
[h264_vaapi @ 0xa7ddaf00] A hardware frames reference is required to
associate the encoding device.
FFMPEG::open_encoder  err: Invalid argument
int FFMPEG::open_encoder(const char*, const char*):
open failed h264_vaapi:/dev/shm/dnxhd.mkv
Render::render_single: Session finished.
Render::render_single: Session finished.
** rendered 1 frames in 2.310 secs, 0.433 fps
FFMPEG::open_decoder: some stre

_______________________________________________
Cin mailing list -- cin@lists.cinelerra-gg.org
To unsubscribe send an email to cin-leave@lists.cinelerra-gg.org