The context ID was typoed, and we used the config ID instead.
This seemingly worked with the older Intel drivers (they didn't care
about the context ID), but not with the newer ones.
va_status = vaCreateContext(va_dpy->va_dpy, config_id, width, height, 0, &ret.surface, 1, &ret.context);
CHECK_VASTATUS(va_status, "vaCreateContext");
va_status = vaCreateContext(va_dpy->va_dpy, config_id, width, height, 0, &ret.surface, 1, &ret.context);
CHECK_VASTATUS(va_status, "vaCreateContext");
- va_status = vaCreateBuffer(va_dpy->va_dpy, config_id, VAEncCodedBufferType, width * height * 3 + 8192, 1, nullptr, &ret.data_buffer);
+ va_status = vaCreateBuffer(va_dpy->va_dpy, ret.context, VAEncCodedBufferType, width * height * 3 + 8192, 1, nullptr, &ret.data_buffer);
CHECK_VASTATUS(va_status, "vaCreateBuffer");
va_status = vaCreateImage(va_dpy->va_dpy, &uyvy_format, width, height, &ret.image);
CHECK_VASTATUS(va_status, "vaCreateBuffer");
va_status = vaCreateImage(va_dpy->va_dpy, &uyvy_format, width, height, &ret.image);
va_data.pic_param.coded_buf = resources.data_buffer;
VABufferID pic_param_buffer;
va_data.pic_param.coded_buf = resources.data_buffer;
VABufferID pic_param_buffer;
- VAStatus va_status = vaCreateBuffer(va_dpy->va_dpy, config_id, VAEncPictureParameterBufferType, sizeof(va_data.pic_param), 1, &va_data.pic_param, &pic_param_buffer);
+ VAStatus va_status = vaCreateBuffer(va_dpy->va_dpy, resources.context, VAEncPictureParameterBufferType, sizeof(va_data.pic_param), 1, &va_data.pic_param, &pic_param_buffer);
CHECK_VASTATUS(va_status, "vaCreateBuffer");
VABufferDestroyer destroy_pic_param(va_dpy->va_dpy, pic_param_buffer);
VABufferID q_buffer;
CHECK_VASTATUS(va_status, "vaCreateBuffer");
VABufferDestroyer destroy_pic_param(va_dpy->va_dpy, pic_param_buffer);
VABufferID q_buffer;
- va_status = vaCreateBuffer(va_dpy->va_dpy, config_id, VAQMatrixBufferType, sizeof(va_data.q), 1, &va_data.q, &q_buffer);
+ va_status = vaCreateBuffer(va_dpy->va_dpy, resources.context, VAQMatrixBufferType, sizeof(va_data.q), 1, &va_data.q, &q_buffer);
CHECK_VASTATUS(va_status, "vaCreateBuffer");
VABufferDestroyer destroy_iq(va_dpy->va_dpy, q_buffer);
VABufferID huff_buffer;
CHECK_VASTATUS(va_status, "vaCreateBuffer");
VABufferDestroyer destroy_iq(va_dpy->va_dpy, q_buffer);
VABufferID huff_buffer;
- va_status = vaCreateBuffer(va_dpy->va_dpy, config_id, VAHuffmanTableBufferType, sizeof(va_data.huff), 1, &va_data.huff, &huff_buffer);
+ va_status = vaCreateBuffer(va_dpy->va_dpy, resources.context, VAHuffmanTableBufferType, sizeof(va_data.huff), 1, &va_data.huff, &huff_buffer);
CHECK_VASTATUS(va_status, "vaCreateBuffer");
VABufferDestroyer destroy_huff(va_dpy->va_dpy, huff_buffer);
VABufferID slice_param_buffer;
CHECK_VASTATUS(va_status, "vaCreateBuffer");
VABufferDestroyer destroy_huff(va_dpy->va_dpy, huff_buffer);
VABufferID slice_param_buffer;
- va_status = vaCreateBuffer(va_dpy->va_dpy, config_id, VAEncSliceParameterBufferType, sizeof(va_data.parms), 1, &va_data.parms, &slice_param_buffer);
+ va_status = vaCreateBuffer(va_dpy->va_dpy, resources.context, VAEncSliceParameterBufferType, sizeof(va_data.parms), 1, &va_data.parms, &slice_param_buffer);
CHECK_VASTATUS(va_status, "vaCreateBuffer");
VABufferDestroyer destroy_slice_param(va_dpy->va_dpy, slice_param_buffer);
CHECK_VASTATUS(va_status, "vaCreateBuffer");
VABufferDestroyer destroy_slice_param(va_dpy->va_dpy, slice_param_buffer);
header_parm.bit_length = 8 * va_data.jpeg_header.size();
VABufferID header_parm_buffer;
header_parm.bit_length = 8 * va_data.jpeg_header.size();
VABufferID header_parm_buffer;
- va_status = vaCreateBuffer(va_dpy->va_dpy, config_id, VAEncPackedHeaderParameterBufferType, sizeof(header_parm), 1, &header_parm, &header_parm_buffer);
+ va_status = vaCreateBuffer(va_dpy->va_dpy, resources.context, VAEncPackedHeaderParameterBufferType, sizeof(header_parm), 1, &header_parm, &header_parm_buffer);
CHECK_VASTATUS(va_status, "vaCreateBuffer");
VABufferDestroyer destroy_header(va_dpy->va_dpy, header_parm_buffer);
VABufferID header_data_buffer;
CHECK_VASTATUS(va_status, "vaCreateBuffer");
VABufferDestroyer destroy_header(va_dpy->va_dpy, header_parm_buffer);
VABufferID header_data_buffer;
- va_status = vaCreateBuffer(va_dpy->va_dpy, config_id, VAEncPackedHeaderDataBufferType, va_data.jpeg_header.size(), 1, va_data.jpeg_header.data(), &header_data_buffer);
+ va_status = vaCreateBuffer(va_dpy->va_dpy, resources.context, VAEncPackedHeaderDataBufferType, va_data.jpeg_header.size(), 1, va_data.jpeg_header.data(), &header_data_buffer);
CHECK_VASTATUS(va_status, "vaCreateBuffer");
VABufferDestroyer destroy_header_data(va_dpy->va_dpy, header_data_buffer);
CHECK_VASTATUS(va_status, "vaCreateBuffer");
VABufferDestroyer destroy_header_data(va_dpy->va_dpy, header_data_buffer);