Some cameras are H.264 aware and they usually uses the UVC interface.

They usually are mounted as two /dev/videoX devices. The YUYV amd MJPEG are 
on video0 and H.264 on video1. I have a couple of ELP cameras that do that. 
They really good.

I have tested them OPI PC they work just fine.

R




On Saturday, March 12, 2016 at 6:16:01 PM UTC-6, @lex wrote:
>
> Interesting, can you check if it is a feature of this camera or the new 
> kernel?
> If you have OPI PC, can you check that?
>
> On Saturday, March 12, 2016 at 8:10:57 PM UTC-3, Jon Smirl wrote:
>>
>> Look carefully at my sonix video parameters... 
>> notice that there are two /dev/videoX devices 
>>
>> This is done so that the screen display app can use the the 
>> uncompressed stream while forwarding on the h.264 stream without 
>> decompressing it. The uncompressed stream does not need much CPU to 
>> display. 
>>
>> jonsmirl@terra:/work/gm/linux-3.3-fa$ v4l2-ctl -d /dev/video1 
>> --list-formats-ext 
>> ioctl: VIDIOC_ENUM_FMT 
>> Index       : 0 
>> Type        : Video Capture 
>> Pixel Format: 'YUYV' 
>> Name        : YUYV 4:2:2 
>> Size: Discrete 1280x720 
>> Interval: Discrete 0.200s (5.000 fps) 
>> Size: Discrete 640x480 
>> Interval: Discrete 0.033s (30.000 fps) 
>> Interval: Discrete 0.050s (20.000 fps) 
>> Interval: Discrete 0.067s (15.000 fps) 
>> Interval: Discrete 0.100s (10.000 fps) 
>> Interval: Discrete 0.200s (5.000 fps) 
>> Size: Discrete 320x240 
>> Interval: Discrete 0.033s (30.000 fps) 
>> Interval: Discrete 0.050s (20.000 fps) 
>> Interval: Discrete 0.067s (15.000 fps) 
>> Interval: Discrete 0.100s (10.000 fps) 
>> Interval: Discrete 0.200s (5.000 fps) 
>>
>> Both MJPG and h.264 work at 720P30. 
>> Index       : 1 
>> Type        : Video Capture 
>> Pixel Format: 'MJPG' (compressed) 
>> Name        : Motion-JPEG 
>> Size: Discrete 1280x720 
>> Interval: Discrete 0.033s (30.000 fps) 
>> Interval: Discrete 0.050s (20.000 fps) 
>> Interval: Discrete 0.067s (15.000 fps) 
>> Interval: Discrete 0.100s (10.000 fps) 
>> Interval: Discrete 0.200s (5.000 fps) 
>> Size: Discrete 640x480 
>> Interval: Discrete 0.033s (30.000 fps) 
>> Interval: Discrete 0.050s (20.000 fps) 
>> Interval: Discrete 0.067s (15.000 fps) 
>> Interval: Discrete 0.100s (10.000 fps) 
>> Interval: Discrete 0.200s (5.000 fps) 
>> Size: Discrete 320x240 
>> Interval: Discrete 0.033s (30.000 fps) 
>> Interval: Discrete 0.050s (20.000 fps) 
>> Interval: Discrete 0.067s (15.000 fps) 
>> Interval: Discrete 0.100s (10.000 fps) 
>> Interval: Discrete 0.200s (5.000 fps) 
>>
>> jonsmirl@terra:/work/gm/linux-3.3-fa$ v4l2-ctl -d /dev/video2 
>> --list-formats-ext 
>> ioctl: VIDIOC_ENUM_FMT 
>> Index       : 0 
>> Type        : Video Capture 
>> Pixel Format: 'H264' (compressed) 
>> Name        : H.264 
>> Size: Discrete 1280x720 
>> Interval: Discrete 0.033s (30.000 fps) 
>> Interval: Discrete 0.050s (20.000 fps) 
>> Interval: Discrete 0.067s (15.000 fps) 
>> Interval: Discrete 0.100s (10.000 fps) 
>> Interval: Discrete 0.200s (5.000 fps) 
>> Size: Discrete 640x480 
>> Interval: Discrete 0.033s (30.000 fps) 
>> Interval: Discrete 0.050s (20.000 fps) 
>> Interval: Discrete 0.067s (15.000 fps) 
>> Interval: Discrete 0.100s (10.000 fps) 
>> Interval: Discrete 0.200s (5.000 fps) 
>> Size: Discrete 320x240 
>> Interval: Discrete 0.033s (30.000 fps) 
>> Interval: Discrete 0.050s (20.000 fps) 
>> Interval: Discrete 0.067s (15.000 fps) 
>> Interval: Discrete 0.100s (10.000 fps) 
>> Interval: Discrete 0.200s (5.000 fps) 
>>
>> On Sat, Mar 12, 2016 at 5:55 PM, @lex <[email protected]> wrote: 
>> > Inspired by so many good arguments on USB uvc cameras i decided to test 
>> one, 
>> > a 720P HD used in ODROID, so you can take a look and see how good it is 
>> for 
>> > Orange Pi PC (Allwinner H3) and decide if  having Encode/Decode by HW 
>> worth 
>> > the effort or we throw in the towel, it is up to you. 
>> > 
>> > This is simple test, done with Orange Pi PC, with a tuned 3.4.39 kernel 
>> and 
>> > with ssvb fex (TKaiser advice) to solve the so known temperature issues 
>> this 
>> > board faces when running at high speed. 
>> > 
>> > The uvc camera is ODROID 720 HD: 
>> > [  196.199875] ehci_irq: highspeed device connect 
>> > [  196.460139] usb 4-1: new high-speed USB device number 2 using 
>> sunxi-ehci 
>> > [  196.890710] 2:3:1: cannot get freq at ep 0x84 
>> > [  196.892434] usbcore: registered new interface driver snd-usb-audio 
>> > [  196.923986] uvcvideo: Found UVC 1.00 device USB 2.0 Camera 
>> (1b71:0056) 
>> > [  196.938300] is_otg_flag: 0x0, 
>> > [  196.938479] usbcore: registered new interface driver uvcvideo 
>> > [  196.938489] USB Video Class driver (v1.1.1) 
>> > [  196.976118] 2:3:1: cannot get freq at ep 0x84 
>> > 
>> > 
>> > As Jon said, you don't need to do anything, just plug it in and start 
>> using 
>> > the UVC camera compliant. No need to worry about drivers, etc.. 
>> > This camera has MPJEG mode and YUV mode: 
>> > ioctl: VIDIOC_ENUM_FMT 
>> > Index       : 0 
>> > Type        : Video Capture 
>> > Pixel Format: 'MJPG' (compressed) 
>> > Name        : MJPEG 
>> > Size: Discrete 1280x720 
>> > Interval: Discrete 0.033s (30.000 fps) 
>> > Interval: Discrete 0.040s (25.000 fps) 
>> > Interval: Discrete 0.050s (20.000 fps) 
>> > Interval: Discrete 0.067s (15.000 fps) 
>> > Interval: Discrete 0.100s (10.000 fps) 
>> > Interval: Discrete 0.200s (5.000 fps) 
>> > Size: Discrete 640x480 
>> > Interval: Discrete 0.033s (30.000 fps) 
>> > Interval: Discrete 0.040s (25.000 fps) 
>> > Interval: Discrete 0.050s (20.000 fps) 
>> > Interval: Discrete 0.067s (15.000 fps) 
>> > Interval: Discrete 0.100s (10.000 fps) 
>> > Interval: Discrete 0.200s (5.000 fps) 
>> > Size: Discrete 640x360 
>> > Interval: Discrete 0.033s (30.000 fps) 
>> > Interval: Discrete 0.040s (25.000 fps) 
>> > Interval: Discrete 0.050s (20.000 fps) 
>> > Interval: Discrete 0.067s (15.000 fps) 
>> > Interval: Discrete 0.100s (10.000 fps) 
>> > Interval: Discrete 0.200s (5.000 fps) 
>> > Size: Discrete 544x288 
>> > Interval: Discrete 0.033s (30.000 fps) 
>> > Interval: Discrete 0.040s (25.000 fps) 
>> > Interval: Discrete 0.050s (20.000 fps) 
>> > Interval: Discrete 0.067s (15.000 fps) 
>> > Interval: Discrete 0.100s (10.000 fps) 
>> > Interval: Discrete 0.200s (5.000 fps) 
>> > Size: Discrete 432x240 
>> > Interval: Discrete 0.017s (60.000 fps) 
>> > Interval: Discrete 0.033s (30.000 fps) 
>> > Interval: Discrete 0.040s (25.000 fps) 
>> > Interval: Discrete 0.050s (20.000 fps) 
>> > Interval: Discrete 0.067s (15.000 fps) 
>> > Interval: Discrete 0.100s (10.000 fps) 
>> > Interval: Discrete 0.200s (5.000 fps) 
>> > Size: Discrete 352x288 
>> > Interval: Discrete 0.017s (60.000 fps) 
>> > Interval: Discrete 0.033s (30.000 fps) 
>> > Interval: Discrete 0.040s (25.000 fps) 
>> > Interval: Discrete 0.050s (20.000 fps) 
>> > Interval: Discrete 0.067s (15.000 fps) 
>> > Interval: Discrete 0.100s (10.000 fps) 
>> > Interval: Discrete 0.200s (5.000 fps) 
>> > Size: Discrete 320x240 
>> > Interval: Discrete 0.017s (60.000 fps) 
>> > Interval: Discrete 0.033s (30.000 fps) 
>> > Interval: Discrete 0.040s (25.000 fps) 
>> > Interval: Discrete 0.050s (20.000 fps) 
>> > Interval: Discrete 0.067s (15.000 fps) 
>> > Interval: Discrete 0.100s (10.000 fps) 
>> > Interval: Discrete 0.200s (5.000 fps) 
>> > Size: Discrete 752x416 
>> > Interval: Discrete 0.033s (30.000 fps) 
>> > Interval: Discrete 0.040s (25.000 fps) 
>> > Interval: Discrete 0.050s (20.000 fps) 
>> > Interval: Discrete 0.067s (15.000 fps) 
>> > Interval: Discrete 0.100s (10.000 fps) 
>> > Interval: Discrete 0.200s (5.000 fps) 
>> > Size: Discrete 800x448 
>> > Interval: Discrete 0.033s (30.000 fps) 
>> > Interval: Discrete 0.040s (25.000 fps) 
>> > Interval: Discrete 0.050s (20.000 fps) 
>> > Interval: Discrete 0.067s (15.000 fps) 
>> > Interval: Discrete 0.100s (10.000 fps) 
>> > Interval: Discrete 0.200s (5.000 fps) 
>> > Size: Discrete 800x600 
>> > Interval: Discrete 0.033s (30.000 fps) 
>> > Interval: Discrete 0.040s (25.000 fps) 
>> > Interval: Discrete 0.050s (20.000 fps) 
>> > Interval: Discrete 0.067s (15.000 fps) 
>> > Interval: Discrete 0.100s (10.000 fps) 
>> > Interval: Discrete 0.200s (5.000 fps) 
>> > Size: Discrete 864x480 
>> > Interval: Discrete 0.033s (30.000 fps) 
>> > Interval: Discrete 0.040s (25.000 fps) 
>> > Interval: Discrete 0.050s (20.000 fps) 
>> > Interval: Discrete 0.067s (15.000 fps) 
>> > Interval: Discrete 0.100s (10.000 fps) 
>> > Interval: Discrete 0.200s (5.000 fps) 
>> > Size: Discrete 960x544 
>> > Interval: Discrete 0.033s (30.000 fps) 
>> > Interval: Discrete 0.040s (25.000 fps) 
>> > Interval: Discrete 0.050s (20.000 fps) 
>> > Interval: Discrete 0.067s (15.000 fps) 
>> > Interval: Discrete 0.100s (10.000 fps) 
>> > Interval: Discrete 0.200s (5.000 fps) 
>> > Size: Discrete 960x720 
>> > Interval: Discrete 0.033s (30.000 fps) 
>> > Interval: Discrete 0.040s (25.000 fps) 
>> > Interval: Discrete 0.050s (20.000 fps) 
>> > Interval: Discrete 0.067s (15.000 fps) 
>> > Interval: Discrete 0.100s (10.000 fps) 
>> > Interval: Discrete 0.200s (5.000 fps) 
>> > Size: Discrete 1024x576 
>> > Interval: Discrete 0.033s (30.000 fps) 
>> > Interval: Discrete 0.040s (25.000 fps) 
>> > Interval: Discrete 0.050s (20.000 fps) 
>> > Interval: Discrete 0.067s (15.000 fps) 
>> > Interval: Discrete 0.100s (10.000 fps) 
>> > Interval: Discrete 0.200s (5.000 fps) 
>> > Size: Discrete 1184x656 
>> > Interval: Discrete 0.033s (30.000 fps) 
>> > Interval: Discrete 0.040s (25.000 fps) 
>> > Interval: Discrete 0.050s (20.000 fps) 
>> > Interval: Discrete 0.067s (15.000 fps) 
>> > Interval: Discrete 0.100s (10.000 fps) 
>> > Interval: Discrete 0.200s (5.000 fps) 
>> > 
>> > Index       : 1 
>> > Type        : Video Capture 
>> > Pixel Format: 'YUYV' 
>> > Name        : YUV 4:2:2 (YUYV) 
>> > Size: Discrete 640x480 
>> > Interval: Discrete 0.033s (30.000 fps) 
>> > Interval: Discrete 0.040s (25.000 fps) 
>> > Interval: Discrete 0.050s (20.000 fps) 
>> > Interval: Discrete 0.067s (15.000 fps) 
>> > Interval: Discrete 0.100s (10.000 fps) 
>> > Interval: Discrete 0.200s (5.000 fps) 
>> > Size: Discrete 640x360 
>> > Interval: Discrete 0.033s (30.000 fps) 
>> > Interval: Discrete 0.040s (25.000 fps) 
>> > Interval: Discrete 0.050s (20.000 fps) 
>> > Interval: Discrete 0.067s (15.000 fps) 
>> > Interval: Discrete 0.100s (10.000 fps) 
>> > Interval: Discrete 0.200s (5.000 fps) 
>> > Size: Discrete 544x288 
>> > Interval: Discrete 0.033s (30.000 fps) 
>> > Interval: Discrete 0.040s (25.000 fps) 
>> > Interval: Discrete 0.050s (20.000 fps) 
>> > Interval: Discrete 0.067s (15.000 fps) 
>> > Interval: Discrete 0.100s (10.000 fps) 
>> > Interval: Discrete 0.200s (5.000 fps) 
>> > Size: Discrete 432x240 
>> > Interval: Discrete 0.017s (60.000 fps) 
>> > Interval: Discrete 0.033s (30.000 fps) 
>> > Interval: Discrete 0.040s (25.000 fps) 
>> > Interval: Discrete 0.050s (20.000 fps) 
>> > Interval: Discrete 0.067s (15.000 fps) 
>> > Interval: Discrete 0.100s (10.000 fps) 
>> > Interval: Discrete 0.200s (5.000 fps) 
>> > Size: Discrete 352x288 
>> > Interval: Discrete 0.017s (60.000 fps) 
>> > Interval: Discrete 0.033s (30.000 fps) 
>> > Interval: Discrete 0.040s (25.000 fps) 
>> > Interval: Discrete 0.050s (20.000 fps) 
>> > Interval: Discrete 0.067s (15.000 fps) 
>> > Interval: Discrete 0.100s (10.000 fps) 
>> > Interval: Discrete 0.200s (5.000 fps) 
>> > Size: Discrete 320x240 
>> > Interval: Discrete 0.017s (60.000 fps) 
>> > Interval: Discrete 0.033s (30.000 fps) 
>> > Interval: Discrete 0.040s (25.000 fps) 
>> > Interval: Discrete 0.050s (20.000 fps) 
>> > Interval: Discrete 0.067s (15.000 fps) 
>> > Interval: Discrete 0.100s (10.000 fps) 
>> > Interval: Discrete 0.200s (5.000 fps) 
>> > Size: Discrete 752x416 
>> > Interval: Discrete 0.050s (20.000 fps) 
>> > Interval: Discrete 0.067s (15.000 fps) 
>> > Interval: Discrete 0.100s (10.000 fps) 
>> > Interval: Discrete 0.200s (5.000 fps) 
>> > Size: Discrete 800x448 
>> > Interval: Discrete 0.050s (20.000 fps) 
>> > Interval: Discrete 0.067s (15.000 fps) 
>> > Interval: Discrete 0.100s (10.000 fps) 
>> > Interval: Discrete 0.200s (5.000 fps) 
>> > Size: Discrete 864x480 
>> > Interval: Discrete 0.050s (20.000 fps) 
>> > Interval: Discrete 0.067s (15.000 fps) 
>> > Interval: Discrete 0.100s (10.000 fps) 
>> > Interval: Discrete 0.200s (5.000 fps) 
>> > Size: Discrete 800x600 
>> > Interval: Discrete 0.050s (20.000 fps) 
>> > Interval: Discrete 0.067s (15.000 fps) 
>> > Interval: Discrete 0.100s (10.000 fps) 
>> > Interval: Discrete 0.200s (5.000 fps) 
>> > Size: Discrete 960x544 
>> > Interval: Discrete 0.050s (20.000 fps) 
>> > Interval: Discrete 0.067s (15.000 fps) 
>> > Interval: Discrete 0.100s (10.000 fps) 
>> > Interval: Discrete 0.200s (5.000 fps) 
>> > Size: Discrete 1024x576 
>> > Interval: Discrete 0.067s (15.000 fps) 
>> > Interval: Discrete 0.100s (10.000 fps) 
>> > Interval: Discrete 0.200s (5.000 fps) 
>> > Size: Discrete 960x720 
>> > Interval: Discrete 0.067s (15.000 fps) 
>> > Interval: Discrete 0.100s (10.000 fps) 
>> > Interval: Discrete 0.200s (5.000 fps) 
>> > Size: Discrete 1184x656 
>> > Interval: Discrete 0.100s (10.000 fps) 
>> > Interval: Discrete 0.200s (5.000 fps) 
>> > Size: Discrete 1280x720 
>> > Interval: Discrete 0.100s (10.000 fps) 
>> > Interval: Discrete 0.200s (5.000 fps) 
>> > 
>> > 
>> > So i tested it with GuvcView, in YUV mode and MJPEG mode. 
>> > 
>> > I came to the following conclusion (but you can have your own): 
>> > * CPU intensive usage, even for compressed MJPEG, this is necessary 
>> because 
>> > GuvcView needs to decompress MJPEG and render it on screen, so decoding 
>> is 
>> > by software. 
>> > * Raised CPU temp. ~80C and all sort of issues that come with it. 
>> > * UVC cameras will have good use for streaming MJPEG or H264, without 
>> > rendering it to screen. Forget about Cheese, GuvcView and apps. Maybe 
>> it is 
>> > good for motion and OpenCV, you have to find out. 
>> > 
>> > Finally, have a look to image quality here: 
>> > 
>> https://plus.google.com/u/0/photos/photo/113203245923875824895/6261286144173300082
>>  
>> > 
>> https://plus.google.com/u/0/photos/photo/113203245923875824895/6261288269096376978
>>  
>> > 
>> https://plus.google.com/u/0/photos/photo/113203245923875824895/6261280022112589490
>>  
>> > 
>> > And you can compare it to the Cheap Orange Pi Camera here: 
>> > 
>> https://plus.google.com/u/0/photos/photo/113203245923875824895/6248912774577238658
>>  
>> > 
>> https://plus.google.com/u/0/photos/photo/113203245923875824895/6248917191401732482
>>  
>> > 
>> > And Rosimildo, Orange PI PC has built in Microphone and you can grab 
>> sound 
>> > from it, again in order to sync the sound with image you need HW 
>> encoding. 
>> > 
>> > This is my 2 cents. 
>> > 
>> > @lex 
>> > 
>> > 
>> > 
>> > 
>> > On Saturday, March 12, 2016 at 5:36:08 PM UTC-3, Jon Smirl wrote: 
>> >> 
>> >> On Sat, Mar 12, 2016 at 3:01 PM, Rosimildo DaSilva <[email protected]> 
>>
>> >> wrote: 
>> >> > Jon, 
>> >> > Thanks for yours always informative posts. 
>> >> > 
>> >> > I think someone should come up with a HDMI ==> CSI (MIPI ) interface 
>> >> > board 
>> >> > for these OrangePI PCs... it would be owesome...., instead of these 
>> >> > gspca 
>> >> > crap... they have now. 
>> >> 
>> >> newer Allwinner chips such as the A64 support MIPI displays. For 
>> >> example the Pine64 uses the A64, but I don't know if they exposed the 
>> >> DSI interface. 
>> >> 
>> >> > 
>> >> > 
>> >> > Jon, maybe you can help me... I am looking for an 720p or 1080p 
>> camera, 
>> >> > H264 
>> >> > compressed video,  and with Wired ( and WI-FI a plus ), with AUDIO 
>> >> > input... 
>> >> > something that has also AUDIO as input and not just video. 
>> >> > If you know any cameras with that capability, and in the US$50 
>> range, 
>> >> > let me 
>> >> > know. 
>> >> 
>> >> Look for little surveillance camera like this one: 
>> >> 
>> >> 
>> http://www.amazon.com/Vanxse%C2%AE-Pinhole-Security-Network-Surveillance/dp/B00QRM9AFG/ref=sr_1_1
>>  
>> >> They contain those standardized, square camera boards I linked to 
>> earlier. 
>> >> You need to access these over Ethernet. Internally most run Linux on 
>> an 
>> >> ARM9. 
>> >> 
>> >> The Sonix chips support audio input. Don't know if that taobao board 
>> >> exposes it. 
>> >> 
>> >> Here is C920 for $60 shipped. 
>> >> http://www.wirelessoemshop.com/logitech-hd-pro-webcam-c920/ 
>> >> It was at Amazon last week for $50 shipped but it is sold out now. 
>> >> 
>> >> If you drop h.264 and just use MJPG you can find USB cameras for $10. 
>> >> 
>> >> Look for deals on web cams. All web cams stream video and audio. 
>> >> 
>> >> > 
>> >> > THanks, R 
>> >> > 
>> >> > 
>> >> > 
>> >> > 
>> >> > On Saturday, March 12, 2016 at 1:09:32 PM UTC-6, Jon Smirl wrote: 
>> >> >> 
>> >> >> gspca is around 10 years old and it pre-dates UVC. 
>> >> >> 
>> >> >> The 291 image chip can take higher resolution stills, but mine only 
>> >> >> has a 720P sensor on it. 
>> >> >> The 292 image chip has similar performance at 1080P. 
>> >> >> 
>> >> >> I have wasted far too much time trying to get Allwinner cameras 
>> >> >> working properly and I won't touch them any more. 
>> >> >> 
>> >> >> Our current product uses a more advanced camera similar to this 
>> one: 
>> >> >> 
>> >> >> 
>> >> >> 
>> http://world.taobao.com/item/521668890252.htm?spm=a312a.7700714.0.0.ekoWOi#detail
>>  
>> >> >> But these boards are too hard to interface with for casual use. The 
>> >> >> main advantage to these chips is that they can simultaneously 
>> provide 
>> >> >> three versions of the h.264 stream at different resolutions. The 
>> Sonix 
>> >> >> chips are single stream but far easier to use. 
>> >> >> 
>> >> >> This is cheapest, decent h.264 720P camera I camera I am aware of - 
>> >> >> $6.12 
>> >> >> 
>> >> >> 
>> >> >> 
>> http://world.taobao.com/item/527850462938.htm?spm=a312a.7700714.0.0.d9CEzd#detail
>>  
>> >> >> You would need to attach to it using Ethernet, USB access requires 
>> >> >> custom firmware. 
>> >> >> 
>> >> >> Here are all of the modes supported by the 291 chips. 
>> >> >> Note that it supports 720P30 h.264 
>> >> >> 
>> >> >> this first mode is uncompressed, 480Mb USB limits it to 720P5 
>> >> >> jonsmirl@terra:/work/gm/linux-3.3-fa$ v4l2-ctl -d /dev/video1 
>> >> >> --list-formats-ext 
>> >> >> ioctl: VIDIOC_ENUM_FMT 
>> >> >> Index       : 0 
>> >> >> Type        : Video Capture 
>> >> >> Pixel Format: 'YUYV' 
>> >> >> Name        : YUYV 4:2:2 
>> >> >> Size: Discrete 1280x720 
>> >> >> Interval: Discrete 0.200s (5.000 fps) 
>> >> >> Size: Discrete 640x480 
>> >> >> Interval: Discrete 0.033s (30.000 fps) 
>> >> >> Interval: Discrete 0.050s (20.000 fps) 
>> >> >> Interval: Discrete 0.067s (15.000 fps) 
>> >> >> Interval: Discrete 0.100s (10.000 fps) 
>> >> >> Interval: Discrete 0.200s (5.000 fps) 
>> >> >> Size: Discrete 320x240 
>> >> >> Interval: Discrete 0.033s (30.000 fps) 
>> >> >> Interval: Discrete 0.050s (20.000 fps) 
>> >> >> Interval: Discrete 0.067s (15.000 fps) 
>> >> >> Interval: Discrete 0.100s (10.000 fps) 
>> >> >> Interval: Discrete 0.200s (5.000 fps) 
>> >> >> 
>> >> >> Both MJPG and h.264 work at 720P30. 
>> >> >> Index       : 1 
>> >> >> Type        : Video Capture 
>> >> >> Pixel Format: 'MJPG' (compressed) 
>> >> >> Name        : Motion-JPEG 
>> >> >> Size: Discrete 1280x720 
>> >> >> Interval: Discrete 0.033s (30.000 fps) 
>> >> >> Interval: Discrete 0.050s (20.000 fps) 
>> >> >> Interval: Discrete 0.067s (15.000 fps) 
>> >> >> Interval: Discrete 0.100s (10.000 fps) 
>> >> >> Interval: Discrete 0.200s (5.000 fps) 
>> >> >> Size: Discrete 640x480 
>> >> >> Interval: Discrete 0.033s (30.000 fps) 
>> >> >> Interval: Discrete 0.050s (20.000 fps) 
>> >> >> Interval: Discrete 0.067s (15.000 fps) 
>> >> >> Interval: Discrete 0.100s (10.000 fps) 
>> >> >> Interval: Discrete 0.200s (5.000 fps) 
>> >> >> Size: Discrete 320x240 
>> >> >> Interval: Discrete 0.033s (30.000 fps) 
>> >> >> Interval: Discrete 0.050s (20.000 fps) 
>> >> >> Interval: Discrete 0.067s (15.000 fps) 
>> >> >> Interval: Discrete 0.100s (10.000 fps) 
>> >> >> Interval: Discrete 0.200s (5.000 fps) 
>> >> >> 
>> >> >> jonsmirl@terra:/work/gm/linux-3.3-fa$ v4l2-ctl -d /dev/video2 
>> >> >> --list-formats-ext 
>> >> >> ioctl: VIDIOC_ENUM_FMT 
>> >> >> Index       : 0 
>> >> >> Type        : Video Capture 
>> >> >> Pixel Format: 'H264' (compressed) 
>> >> >> Name        : H.264 
>> >> >> Size: Discrete 1280x720 
>> >> >> Interval: Discrete 0.033s (30.000 fps) 
>> >> >> Interval: Discrete 0.050s (20.000 fps) 
>> >> >> Interval: Discrete 0.067s (15.000 fps) 
>> >> >> Interval: Discrete 0.100s (10.000 fps) 
>> >> >> Interval: Discrete 0.200s (5.000 fps) 
>> >> >> Size: Discrete 640x480 
>> >> >> Interval: Discrete 0.033s (30.000 fps) 
>> >> >> Interval: Discrete 0.050s (20.000 fps) 
>> >> >> Interval: Discrete 0.067s (15.000 fps) 
>> >> >> Interval: Discrete 0.100s (10.000 fps) 
>> >> >> Interval: Discrete 0.200s (5.000 fps) 
>> >> >> Size: Discrete 320x240 
>> >> >> Interval: Discrete 0.033s (30.000 fps) 
>> >> >> Interval: Discrete 0.050s (20.000 fps) 
>> >> >> Interval: Discrete 0.067s (15.000 fps) 
>> >> >> Interval: Discrete 0.100s (10.000 fps) 
>> >> >> Interval: Discrete 0.200s (5.000 fps) 
>> >> >> 
>> >> >> 
>> >> >> 
>> >> >> On Sat, Mar 12, 2016 at 8:49 AM, @lex <[email protected]> wrote: 
>> >> >> > Thanks Jon. 
>> >> >> > 
>> >> >> > I have some thoughts on this proposed hardware solution: 
>> >> >> > 
>> >> >> > * This camera will not be recognized as uvc usb device, unless 
>> you 
>> >> >> > add 
>> >> >> > it to 
>> >> >> > the device list, no big deal i think. 
>> >> >> > Your kernel is 3.3 but i think you or someone else already added 
>> it 
>> >> >> > to 
>> >> >> > uvc 
>> >> >> > device list. (i may be wrong), 
>> >> >> > 
>> >> >> > * Orange PI ONE has only one USB, so you will need to access the 
>> >> >> > device 
>> >> >> > remotely, 
>> >> >> > 
>> >> >> > * Grabbing the video can be done with V4l2 as usual, 
>> >> >> > 
>> >> >> > * I tested here a usb Labtec gspca camera which is VGA JPEG 30 
>> FPS, 
>> >> >> > and 
>> >> >> > its 
>> >> >> > performance is about ~9 fps, that means USB camera tend to 
>> perform 
>> >> >> > below 
>> >> >> > specifications when not in Desktop, may be the usb bandwidth is a 
>> >> >> > constraint, 
>> >> >> > 
>> >> >> > * Original OPI camera is $ 5.90 while the one you pointed is $ 
>> 8.52 
>> >> >> > plus 
>> >> >> > some usb cable and may need some wiring/soldering, 
>> >> >> > 
>> >> >> > * Logitec is out of question, i cannot get one for less than $ 
>> >> >> > 100.00. 
>> >> >> > And 
>> >> >> > considering spending $ 10.00 / 15.00 on a sbc board and another $ 
>> >> >> > 100.00 
>> >> >> > is 
>> >> >> > only viable if you don't want to mess with software. 
>> >> >> > 
>> >> >> > * No tinkering, no learning and no solution for the upcoming 
>> >> >> > Allwinner 
>> >> >> > new 
>> >> >> > devices going this route. 
>> >> >> > 
>> >> >> > So, guys lets's get back to work, the fight is not over yet. 
>> >> >> > 
>> >> >> > @lex 
>> >> >> > 
>> >> >> > 
>> >> >> > On Friday, March 11, 2016 at 8:49:42 PM UTC-3, Jon Smirl wrote: 
>> >> >> >> 
>> >> >> >> [33718.237465] usb 2-5.1: new high-speed USB device number 12 
>> using 
>> >> >> >> ehci-pci 
>> >> >> >> [33718.782014] usb 2-5.1: new high-speed USB device number 13 
>> using 
>> >> >> >> ehci-pci 
>> >> >> >> [33719.121687] usb 2-5.1: New USB device found, idVendor=18e3, 
>> >> >> >> idProduct=5100 
>> >> >> >> [33719.121692] usb 2-5.1: New USB device strings: Mfr=2, 
>> Product=1, 
>> >> >> >> SerialNumber=3 
>> >> >> >> [33719.121696] usb 2-5.1: Product: USB 2.0 Camera 
>> >> >> >> [33719.121698] usb 2-5.1: Manufacturer: Sonix Technology Co., 
>> Ltd. 
>> >> >> >> [33719.121701] usb 2-5.1: SerialNumber: SN0001 
>> >> >> >> [33719.122631] uvcvideo: Found UVC 1.00 device USB 2.0 Camera 
>> >> >> >> (18e3:5100) 
>> >> >> >> [33719.146885] uvcvideo: Unable to create debugfs 2-13 
>> directory. 
>> >> >> >> [33719.147213] input: USB 2.0 Camera as 
>> >> >> >> 
>> >> >> >> 
>> /devices/pci0000:00/0000:00:1d.7/usb2/2-5/2-5.1/2-5.1:1.0/input/input15 
>> >> >> >> jonsmirl@terra:/work/gm/linux-3.3-fa$ 
>> >> >> >> 
>> >> >> >> On Fri, Mar 11, 2016 at 6:26 PM, @lex <[email protected]> 
>> wrote: 
>> >> >> >> > Can you please tell me the idVendor and idProduct for this 
>> camera? 
>> >> >> >> > 
>> >> >> >> > 
>> >> >> >> > On Friday, March 11, 2016 at 8:08:21 PM UTC-3, @lex wrote: 
>> >> >> >> >> 
>> >> >> >> >> Err... That was new to me. Without researching how do you 
>> grab 
>> >> >> >> >> video 
>> >> >> >> >> from 
>> >> >> >> >> this generic driver how good this camera performs? 
>> >> >> >> >> 
>> >> >> >> >> On Friday, March 11, 2016 at 7:52:17 PM UTC-3, Jon Smirl 
>> wrote: 
>> >> >> >> >>> 
>> >> >> >> >>> On Fri, Mar 11, 2016 at 4:42 PM, @lex <[email protected]> 
>> >> >> >> >>> wrote: 
>> >> >> >> >>> > Seems to be a nice camera, but that depends on your kernel 
>> >> >> >> >>> > version. 
>> >> >> >> >>> > There is no support for SN9C291 OV9712 on kernel v3.4.39. 
>> >> >> >> >>> > And no support on odroid-3.8.30 on my U3 also. 
>> >> >> >> >>> > Don't know about armbian legacy kernel version, but i 
>> don't 
>> >> >> >> >>> > expect 
>> >> >> >> >>> > there 
>> >> >> >> >>> > will be support also. 
>> >> >> >> >>> 
>> >> >> >> >>> The camera does not need a specific driver, it uses the 
>> generic 
>> >> >> >> >>> USB 
>> >> >> >> >>> Video driver. 
>> >> >> >> >>> It is like a USB mouse or keyboard, you don't need a 
>> specific 
>> >> >> >> >>> driver 
>> >> >> >> >>> for every different one. 
>> >> >> >> >>> 
>> >> >> >> >>> Drivers/Multimedia/Media USB/USB Video Class (UVC) 
>> >> >> >> >>> 
>> >> >> >> >>> Kconfig USB_VIDEO_CLASS 
>> >> >> >> >>> 
>> >> >> >> >>> This support dates way back to around 2.4 or so. Almost 
>> every 
>> >> >> >> >>> desktop 
>> >> >> >> >>> web cam works using this driver. 
>> >> >> >> >>> 
>> >> >> >> >>> > 
>> >> >> >> >>> > On Friday, March 11, 2016 at 4:41:59 PM UTC-3, Jon Smirl 
>> >> >> >> >>> > wrote: 
>> >> >> >> >>> >> 
>> >> >> >> >>> >> On Fri, Mar 11, 2016 at 2:18 PM, Manuel Braga 
>> >> >> >> >>> >> <[email protected]> 
>> >> >> >> >>> >> wrote: 
>> >> >> >> >>> >> > On Fri, 11 Mar 2016 05:53:36 -0800 (PST) Rosimildo 
>> DaSilva 
>> >> >> >> >>> >> > <[email protected]> wrote: 
>> >> >> >> >>> >> >> 
>> >> >> >> >>> >> >> I did not mention, but I founf two issues withe blobs: 
>> >> >> >> >>> >> >> 
>> >> >> >> >>> >> >> a) Motion Detection causes segmentation fault, 
>> whenever 
>> >> >> >> >>> >> >> enabled. 
>> >> >> >> >>> >> >> b) FFMPEG complains that timestamp ( PTS/DTS ) are 
>> missing 
>> >> >> >> >>> >> >> on 
>> >> >> >> >>> >> >> the 
>> >> >> >> >>> >> >> H264 stream generated by the encoder... I've tried 
>> many 
>> >> >> >> >>> >> >> things ( 
>> >> >> >> >>> >> >> code 
>> >> >> >> >>> >> >> is commented out ), but nothing worked. 
>> >> >> >> >>> >> > 
>> >> >> >> >>> >> > There is another issue, that i believe to be important. 
>> >> >> >> >>> >> > But for whatever reasons, it has to be constantly 
>> >> >> >> >>> >> > remembered 
>> >> >> >> >>> >> > about 
>> >> >> >> >>> >> > its 
>> >> >> >> >>> >> > existence. 
>> >> >> >> >>> >> > 
>> >> >> >> >>> >> > And that issue is: 
>> >> >> >> >>> >> > 
>> >> >> >> >>> >> >   c) The proprietaries binary blobs don't have a clear 
>> >> >> >> >>> >> > license 
>> >> >> >> >>> >> > attached. 
>> >> >> >> >>> >> > 
>> >> >> >> >>> >> > And in the copyright law, any "things" with "no 
>> license" by 
>> >> >> >> >>> >> > default 
>> >> >> >> >>> >> > fell 
>> >> >> >> >>> >> > in the "all rights reserved". 
>> >> >> >> >>> >> 
>> >> >> >> >>> >> I gave up fighting with Allwinner's encoder long ago. It 
>> is 
>> >> >> >> >>> >> far 
>> >> >> >> >>> >> easier 
>> >> >> >> >>> >> to just plug in a USB based h.264 camera. You can easily 
>> buy 
>> >> >> >> >>> >> ones 
>> >> >> >> >>> >> from 
>> >> >> >> >>> >> Logitech for $50. 
>> >> >> >> >>> >> 
>> >> >> >> >>> >> If you want it at the hardware level, look at chips from 
>> >> >> >> >>> >> Sonix. 
>> >> >> >> >>> >> Here 
>> >> >> >> >>> >> is a board based on the SN9C291 for $8.50. The bare chips 
>> are 
>> >> >> >> 
>
>

-- 
You received this message because you are subscribed to the Google Groups 
"linux-sunxi" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to [email protected].
For more options, visit https://groups.google.com/d/optout.

Reply via email to