camerabin: can application get and set camera native supported caps

Thiago Santos thiagoss at osg.samsung.com
Tue Jan 6 03:28:04 PST 2015


On 01/06/2015 02:35 AM, Kevin Song wrote:
> Hi,
>
> As camera support several resolutions, application want get and set 
> camera native supported resolution to get better performance. As 
> wappercamerabinsrc add videoconvert and videoscale in the bin. The 
> viewfinder-supported-caps caps got from camerabin will be below.
>
> Do need add get camera native caps in camerabin and wrappercamerabin? 
> Do need add capsfilter to set native camera resolution?

What do you get from the image-capture-supported-caps and for the video 
one? Do they have the natively supported formats first in the caps just 
like the viewfinder one below? Is it enough for your use case to have 
them in the order of preference (native first, converted last) or would 
you want to have only native?

It should be possible to add a property to wrappercamerabinsrc to get 
the native supported caps. Patches welcome.

>
> 0:00:01.979042667  2630  0x165ad00 DEBUG        recorder-engine 
> /nfsroot/songbing/yocto/build-x11/tmp/work/imx6allref-poky-linux-gnueabi/gst1
> .0-fsl-plugin/git-r0/git/tools/grecorder/recorder_engine.c:1279:get_camera_capabilities: 
> viewfinder-supported-caps: video/x-raw, format=(stri
> ng){ I420, NV12, YUY2, UYVY }, width=(int)640, height=(int)480, 
> framerate=(fraction){ 30/1, 15/1 }; video/x-raw, format=(string){ 
> I420, NV12,
>  YUY2, UYVY }, width=(int)320, height=(int)240, framerate=(fraction){ 
> 30/1, 15/1 }; video/x-raw, format=(string){ I420, NV12, YUY2, UYVY }, w
> idth=(int)720, height=(int)480, framerate=(fraction){ 30/1, 15/1 }; 
> video/x-raw, format=(string){ I420, NV12, YUY2, UYVY }, width=(int)720, h
> eight=(int)576, framerate=(fraction){ 30/1, 15/1 }; video/x-raw, 
> format=(string){ I420, NV12, YUY2, UYVY }, width=(int)1280, 
> height=(int)720,
>  framerate=(fraction){ 30/1, 15/1 }; video/x-raw, format=(string){ 
> I420, NV12, YUY2, UYVY }, width=(int)1920, height=(int)1080, framerate=(fr
> action)15/1; video/x-raw, format=(string){ I420, NV12, YUY2, UYVY }, 
> width=(int)2592, height=(int)1944, framerate=(fraction)15/1; video/x-raw
> , format=(string){ I420, NV12, YUY2, UYVY }, width=(int)176, 
> height=(int)144, framerate=(fraction){ 30/1, 15/1 }; video/x-raw, 
> format=(string
> ){ I420, NV12, YUY2, UYVY }, width=(int)1024, height=(int)768, 
> framerate=(fraction){ 30/1, 15/1 }; video/x-raw, width=(int)640, 
> height=(int)4
> 80, framerate=(fraction){ 30/1, 15/1 }, format=(string){ I420, YV12, 
> YUY2, UYVY, AYUV, RGBx, BGRx, xRGB, xBGR, RGBA, BGRA, ARGB, ABGR, RGB, B
> GR, YVYU, NV12, GRAY8, GRAY16_BE, GRAY16_LE, RGB16, RGB15 }; 
> video/x-raw, width=(int)320, height=(int)240, framerate=(fraction){ 
> 30/1, 15/1 }
> , format=(string){ I420, YV12, YUY2, UYVY, AYUV, RGBx, BGRx, xRGB, 
> xBGR, RGBA, BGRA, ARGB, ABGR, RGB, BGR, YVYU, NV12, GRAY8, GRAY16_BE, GRAY
> 16_LE, RGB16, RGB15 }; video/x-raw, width=(int)720, height=(int)480, 
> framerate=(fraction){ 30/1, 15/1 }, format=(string){ I420, YV12, YUY2, U
> YVY, AYUV, RGBx, BGRx, xRGB, xBGR, RGBA, BGRA, ARGB, ABGR, RGB, BGR, 
> YVYU, NV12, GRAY8, GRAY16_BE, GRAY16_LE, RGB16, RGB15 }; video/x-raw, wi
> dth=(int)720, height=(int)576, framerate=(fraction){ 30/1, 15/1 }, 
> format=(string){ I420, YV12, YUY2, UYVY, AYUV, RGBx, BGRx, xRGB, xBGR, RGB
> A, BGRA, ARGB, ABGR, RGB, BGR, YVYU, NV12, GRAY8, GRAY16_BE, 
> GRAY16_LE, RGB16, RGB15 }; video/x-raw, width=(int)1280, 
> height=(int)720, framer
> ate=(fraction){ 30/1, 15/1 }, format=(string){ I420, YV12, YUY2, UYVY, 
> AYUV, RGBx, BGRx, xRGB, xBGR, RGBA, BGRA, ARGB, ABGR, RGB, BGR, YVYU,
> NV12, GRAY8, GRAY16_BE, GRAY16_LE, RGB16, RGB15 }; video/x-raw, 
> width=(int)1920, height=(int)1080, framerate=(fraction)15/1, 
> format=(string){
>  I420, YV12, YUY2, UYVY, AYUV, RGBx, BGRx, xRGB, xBGR, RGBA, BGRA, 
> ARGB, ABGR, RGB, BGR, YVYU, NV12, GRAY8, GRAY16_BE, GRAY16_LE, RGB16, RGB1
> 5 }; video/x-raw, width=(int)2592, height=(int)1944, 
> framerate=(fraction)15/1, format=(string){ I420, YV12, YUY2, UYVY, 
> AYUV, RGBx, BGRx, xRG
> B, xBGR, RGBA, BGRA, ARGB, ABGR, RGB, BGR, YVYU, NV12, GRAY8, 
> GRAY16_BE, GRAY16_LE, RGB16, RGB15 }; video/x-raw, width=(int)176, 
> height=(int)
> 144, framerate=(fraction){ 30/1, 15/1 }, format=(string){ I420, YV12, 
> YUY2, UYVY, AYUV, RGBx, BGRx, xRGB, xBGR, RGBA, BGRA, ARGB, ABGR, RGB,
> BGR, YVYU, NV12, GRAY8, GRAY16_BE, GRAY16_LE, RGB16, RGB15 }; 
> video/x-raw, width=(int)1024, height=(int)768, framerate=(fraction){ 
> 30/1, 15/1
>  }, format=(string){ I420, YV12, YUY2, UYVY, AYUV, RGBx, BGRx, xRGB, 
> xBGR, RGBA, BGRA, ARGB, ABGR, RGB, BGR, YVYU, NV12, GRAY8, GRAY16_BE, GR
> AY16_LE, RGB16, RGB15 }; video/x-raw, format=(string){ I420, NV12, 
> YUY2, UYVY }, width=(int)[ 1, 32767 ], height=(int)[ 1, 32767 ], framerate
> =(fraction){ 30/1, 15/1 }; video/x-raw, width=(int)[ 1, 32767 ], 
> height=(int)[ 1, 32767 ], framerate=(fraction){ 30/1, 15/1 }, 
> format=(string
> ){ I420, YV12, YUY2, UYVY, AYUV, RGBx, BGRx, xRGB, xBGR, RGBA, BGRA, 
> ARGB, ABGR, RGB, BGR, YVYU, NV12, GRAY8, GRAY16_BE, GRAY16_LE, RGB16, RG
> B15 }
>
>
> Regards,
> Song Bing.
>
>
> _______________________________________________
> gstreamer-devel mailing list
> gstreamer-devel at lists.freedesktop.org
> http://lists.freedesktop.org/mailman/listinfo/gstreamer-devel


-- 
Thiago Sousa Santos
Senior Multimedia Engineer, Open Source Group
Samsung Research America - Silicon Valley

-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.freedesktop.org/archives/gstreamer-devel/attachments/20150106/fde0b1f7/attachment-0001.html>


More information about the gstreamer-devel mailing list