plugins: create caps templates at registering traversing all the possible driver configuration
take jpeg encoder for example: gst-inspect show it will support ayuv
SINK template: 'sink'
Availability: Always
Capabilities:
video/x-raw(memory:VASurface)
format: { (string)ENCODED, (string)NV12, (string)YV12, (string)I420, (string)YUY2, (string)UYVY, (string)Y444, (string)GRAY8, (string)P010_10LE, (string)VUYA, (string)Y210, (string)Y410, (string)ARGB, (string)xRGB, (stri
ng)RGBA, (string)RGBx, (string)ABGR, (string)xBGR, (string)BGRA, (string)BGRx, (string)RGB16, (string)RGB, (string)BGR10A2_LE }
width: [ 1, 2147483647 ]
height: [ 1, 2147483647 ]
framerate: [ 0/1, 2147483647/1 ]
interlace-mode: progressive
video/x-raw
format: { (string)ENCODED, (string)NV12, (string)YV12, (string)I420, (string)YUY2, (string)UYVY, (string)Y444, (string)GRAY8, (string)P010_10LE, (string)VUYA, (string)Y210, (string)Y410, (string)ARGB, (string)xRGB, (stri
ng)RGBA, (string)RGBx, (string)ABGR, (string)xBGR, (string)BGRA, (string)BGRx, (string)RGB16, (string)RGB, (string)BGR10A2_LE }
width: [ 1, 2147483647 ]
height: [ 1, 2147483647 ]
framerate: [ 0/1, 2147483647/1 ]
interlace-mode: progressive
video/x-raw(memory:DMABuf)
format: { (string)ENCODED, (string)NV12, (string)YV12, (string)I420, (string)YUY2, (string)UYVY, (string)Y444, (string)GRAY8, (string)P010_10LE, (string)VUYA, (string)Y210, (string)Y410, (string)ARGB, (string)xRGB, (stri
ng)RGBA, (string)RGBx, (string)ABGR, (string)xBGR, (string)BGRA, (string)BGRx, (string)RGB16, (string)RGB, (string)BGR10A2_LE }
width: [ 1, 2147483647 ]
height: [ 1, 2147483647 ]
framerate: [ 0/1, 2147483647/1 ]
interlace-mode: progressive
but encode ayuv will fail. gst-launch-1.0 -vf filesrc location=test.yuv ! rawvideoparse format=ayuv width=1024 height=768 ! vaapijpegenc quality=10 ! jpegparse ! filesink location=capture22_ayuv-cqp-10.jpg
Could we query the input format from the driver? or at least we'd better have a codec specific input format. thanks
Edited by Víctor Manuel Jáquez Leal