I see. Thanks for being pedantic. I think we need another thread :) because this one overflow mobile gmail client again. вс, 12 февр. 2023 г., 15:17 Terje J. Hanssen <[email protected]>:
Den 11.02.2023 23:18, skrev Terje J. Hanssen:
Den 09.02.2023 01:34, skrev Andrew Randrianasulu:
чт, 9 февр. 2023 г., 03:14 Terje J. Hanssen <[email protected]>:
Den 08.02.2023 23:16, skrev Andrew Randrianasulu:
чт, 9 февр. 2023 г., 01:13 Terje J. Hanssen <[email protected]>:
Den 08.02.2023 22:47, skrev Andrew Randrianasulu:
чт, 9 февр. 2023 г., 00:38 Terje J. Hanssen <[email protected]>:
Den 08.02.2023 19:15, skrev Andrew Randrianasulu:
ср, 8 февр. 2023 г., 20:53 Terje J. Hanssen <[email protected]>:
Den 08.02.2023 16:45, skrev Terje J. Hanssen:
Den 08.02.2023 15:34, skrev Andrew Randrianasulu:
ср, 8 февр. 2023 г., 17:16 Terje J. Hanssen <[email protected]>:
Den 08.02.2023 14:21, skrev Andrew Randrianasulu:
ср, 8 февр. 2023 г., 14:47 Terje J. Hanssen <[email protected] >:
> > > Den 08.02.2023 02:38, skrev Andrew Randrianasulu: > > > > ср, 8 февр. 2023 г., 04:08 Terje J. Hanssen <[email protected] > >: > >> >> >> Den 08.02.2023 00:52, skrev Andrew Randrianasulu: >> >> >> >> ср, 8 февр. 2023 г., 01:35 Terje J. Hanssen via Cin < >> [email protected]>: >> >>> >>> >>> Den 02.02.2023 01:46, skrev Terje J. Hanssen: >>> >>> ....... >>> >>> >>> but I prepare myself to test and use one method left with regards >>> to "Personal Video Archiving". >>> >>> Therefore I have ordered two selected, inexpensive devices (the >>> urls here are just for English language): >>> >>> 1) Capture Card USB HDMI 4K to 1080P USB-C adapter (Speedy USB >>> 3.2/3.1/3.0, 60 Hz and 1080p FHD.) >>> >>> https://www.turascandinavia.com/en/products/computer/microphone-webcam/webca... >>> >>> - Fluid video recordings without delays or distortions during >>> live streaming >>> - Linux not mentioned, but assumed this is a standard >>> supported UVC. OBS and VLC is mentioned. >>> >>> >>> Then the first item, Hama Video Recording Stick, HDMI 4k - USB3.x >>> is received. It promises: >>> "Fluid video recordings without delays or distortions during live >>> streaming, thanks to a picture frequency of 60 Hz and 1080p with Full HD. >>> Transform high-quality video cameras into a high-resolution USB web camera". >>> >>> I have done a quick, first test using my Sony HDR-FX7E camera. >>> This is a HDV 1080i camcorder with MPEG-2 video compression at 25 mbps on >>> tape 1440x1080, 50i25fps, 4:2:0 and MP2 stereo audio. Currently it's >>> cassette deck is broken and needs repair service. >>> >>> But according to Steve Mullen's V1 and FX7 handbook (not mentioned >>> in the manual): >>> >>> 1. When the camera is operating, the EIP (Enhanced Image >>> Processor) generates uncompressed 1440x1080i with a 4:2:2 color space. Digital >>> 4:2:2 data are output via the HDMI port while 4:2:2 analog is output via >>> component-out. Therefore, you can record 4:2:2 live HD video from the >>> camera without MPEG-2 compression. V1 and FX7 provide an HDMI output port >>> that carries uncompressed 4:2:2, 8-bit, digital video plus dual-channel, >>> PCM, 16-bit, 48kHz audio When the camera is running. >>> >>> 2. If you are playing a 1080i50 or 1080i60 HDV tape. The 4:2:0 >>> MPEG-2 is decoded and chroma up-scaled to a 4:2:2. The HDMI >>> chip downscales 1440 to 1280 while it up-scales 540 to 720. The >>> result is 720p50 or 720p60, which is output via HDMI. >>> >>> That is, I have tested section 1 now, but see now that I didn't >>> test 1440x1080 resolution. The only resolution I got to work at 25 fps was >>> 720x576 (SD), while HD 1280x720 and FHD 1920x1080 were set down to 10 fps >>> and 5 fps respectively by the driver and caused jumpy playback. >>> >> >> Did you tried to force specific format (uncompressed) before -i >> parameter for ffmpeg? >> >> >> Just "-framerate 25 -video_size 1920x1080" before -i as repeated in >> the code as follows, where I tested to encode to uncompressed v210 instead >> of ffv1, but with no change with regards to low 5 fps: >> >> ffmpeg -hide_banner -f v4l2 -framerate 25 -video_size 1920x1080 -i >> /dev/video0 -codec:v v210 -codec:a pcm_s16le -f matroska 1920x1080_v210.mkv >> [video4linux2,v4l2 @ 0x55944900e0c0] The driver changed the time >> per frame from 1/25 to 1/5 >> >> I also read a related issue and reply to this post at Superuser, >> where 1920x1080 was not supported on the webcam. >> >> https://superuser.com/questions/1449252/ffmpeg-captures-from-uvc-dev-video0-... >> >> Also look out for usb2 vs usb3 ports? Shouldn't capture device hang >> on bus 002 (usb 3.0) root hub, instead of bus 001 (usb 2.0 root hub), from >> lsusb below? >> >> >> This may well work better. I have to admit that I have never >> studied the difference between shared usb buses. My thought was to try to >> change the connected usb devices, but tested first the only free usb3 port >> (blue) on the add-on frontpanel of the workstation. The other two usb3 >> ports are on the backpanel and are used for the Asus blu-ray burner and 8TB >> Seagate expansion video disc. >> >> The other usb ports on both panels are usb2 ports, whereof two for >> the wireless keyboard and mouse on the fronpanel. What I possibly already >> have mentioned before, is that sometimes if I connect a usb(2) device or >> memory to the usb3 port on the frontpanel, this cause hang on the keyboard >> or mouse. But this didn't happend this time with the USB3 capture stick. >> >> >> >> >>> Someone here that have suggestion to possibly modified syntax or >>> can verify that the driver doesn't manage this? >>> >>> Another (setup) problem, there was no audio recorded or heard >>> during playback!? >>> >>> In the following I list the test command syntax I've collectedf >>> and tried with shortened output (yet long): >>> To explain, I have also another USB 2.0 Webcam connected, beside >>> the new HDMI-USB3 Videstick. >>> >>> Verify the devices, drivers and formats: >>> --------------------------------------- >>> dmesg | tail >>> [22706.060759] perf: interrupt took too long (2521 > 2500), >>> lowering kernel.perf_event_max_sample_rate to 79250 >>> [32105.561575] perf: interrupt took too long (3158 > 3151), >>> lowering kernel.perf_event_max_sample_rate to 63250 >>> [40586.477420] usb 1-5: USB disconnect, device number 2 >>> [40599.099612] usb 1-5: new high-speed USB device number 5 using >>> xhci_hcd >>> [40599.250960] usb 1-5: New USB device found, idVendor=534d, >>> idProduct=2109, bcdDevice=21.00 >>> [40599.250972] usb 1-5: New USB device strings: Mfr=1, Product=2, >>> SerialNumber=0 >>> [40599.250978] usb 1-5: Product: USB Video >>> [40599.250984] usb 1-5: Manufacturer: MACROSILICON >>> [40599.252310] usb 1-5: Found UVC 1.00 device USB Video (534d:2109) >>> [40599.256234] hid-generic 0003:534D:2109.0006: hiddev96,hidraw0: >>> USB HID v1.10 Device [MACROSILICON USB Video] on usb-0000:00:14.0-5/input4 >>> ----------------------------- >>> >>> lsusb >>> Bus 002 Device 003: ID 05e3:0732 Genesys Logic, Inc. All-in-One >>> Cardreader >>> Bus 002 Device 002: ID 0bc2:2038 Seagate RSS LLC Expansion HDD >>> Bus 002 Device 001: ID 1d6b:0003 Linux Foundation 3.0 root hub >>> Bus 001 Device 003: ID 046d:c534 Logitech, Inc. Unifying Receiver >>> Bus 001 Device 005: ID 534d:2109 MacroSilicon USB Video >>> Bus 001 Device 004: ID 0c45:6340 Microdia Camera >>> Bus 001 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub >>> >>> >>> udevadm info /dev/video* | egrep 'DEVNAME|ID_V4L_PRODUCT' >>> E: DEVNAME=/dev/video0 >>> E: ID_V4L_PRODUCT=USB Video: USB Video >>> E: DEVNAME=/dev/video1 >>> E: ID_V4L_PRODUCT=USB Video: USB Video >>> E: DEVNAME=/dev/video2 >>> E: ID_V4L_PRODUCT=USB 2.0 Camera: HD 720P Webcam >>> E: DEVNAME=/dev/video3 >>> E: ID_V4L_PRODUCT=USB 2.0 Camera: HD 720P Webcam >>> >>> lsusb | egrep 'Video|Camera' >>> Bus 001 Device 005: ID 534d:2109 MacroSilicon USB Video >>> Bus 001 Device 004: ID 0c45:6340 Microdia Camera >>> >>> -------------------- >>> >>> ll /dev/video* >>> crw-rw----+ 1 root video 81, 0 feb. 7 20:22 /dev/video0 >>> crw-rw----+ 1 root video 81, 1 feb. 7 20:22 /dev/video1 >>> crw-rw----+ 1 root video 81, 2 feb. 7 09:05 /dev/video2 >>> crw-rw----+ 1 root video 81, 3 feb. 7 09:05 /dev/video3 >>> >>> ----------------------- >>> >>> v4l2-ctl --list-devices >>> USB 2.0 Camera: HD 720P Webcam (usb-0000:00:14.0-11): >>> /dev/video2 >>> /dev/video3 >>> >>> USB Video: USB Video (usb-0000:00:14.0-5): >>> /dev/video0 >>> /dev/video1 >>> >>> ------------------------- >>> >>> ffmpeg -f v4l2 -list_formats all -i /dev/video0 >>> ffmpeg -hide_banner -f v4l2 -list_formats all -i /dev/video0 >>> [video4linux2,v4l2 @ 0x556cf63570c0] Compressed: mjpeg >>> : Motion-JPEG : 1920x1080 1600x1200 1360x768 1280x1024 1280x960 >>> 1280x720 1024x768 800x600 720x576 720x480 640x480 >>> [video4linux2,v4l2 @ 0x556cf63570c0] Raw : yuyv422 >>> : YUYV 4:2:2 : 1920x1080 1600x1200 1360x768 1280x1024 1280x960 >>> 1280x720 1024x768 800x600 720x576 720x480 640x480 >>> /dev/video0: Immediate exit requested >>> >>> ffmpeg -hide_banner -f v4l2 -list_formats all -i /dev/video1 >>> [video4linux2,v4l2 @ 0x5560c0bc70c0] ioctl(VIDIOC_G_INPUT): >>> Inappropriate ioctl for device >>> /dev/video1: Inappropriate ioctl for device >>> ---------------- >>> >>> v4l2-ctl --all >>> Driver Info (not using libv4l2): >>> Driver name : uvcvideo >>> Card type : USB Video: USB Video >>> Bus info : usb-0000:00:14.0-5 >>> Driver version: 5.14.21 >>> Capabilities : 0x84A00001 >>> Video Capture >>> Metadata Capture >>> Streaming >>> Extended Pix Format >>> Device Capabilities >>> Device Caps : 0x04200001 >>> Video Capture >>> Streaming >>> Extended Pix Format >>> Priority: 2 >>> Video input : 0 (Camera 1: ok) >>> Format Video Capture: >>> Width/Height : 1920/1080 >>> Pixel Format : 'MJPG' >>> Field : None >>> Bytes per Line : 0 >>> Size Image : 4147200 >>> Colorspace : sRGB >>> Transfer Function : Rec. 709 >>> YCbCr/HSV Encoding: ITU-R 601 >>> Quantization : Default (maps to Full Range) >>> Flags : >>> Crop Capability Video Capture: >>> Bounds : Left 0, Top 0, Width 1920, Height 1080 >>> Default : Left 0, Top 0, Width 1920, Height 1080 >>> Pixel Aspect: 1/1 >>> Selection: crop_default, Left 0, Top 0, Width 1920, Height 1080 >>> Selection: crop_bounds, Left 0, Top 0, Width 1920, Height 1080 >>> Streaming Parameters Video Capture: >>> Capabilities : timeperframe >>> Frames per second: 30.000 (30/1) >>> Read buffers : 0 >>> brightness 0x00980900 (int) : min=-128 >>> max=127 step=1 default=-11 value=-11 >>> contrast 0x00980901 (int) : min=0 >>> max=255 step=1 default=148 value=148 >>> saturation 0x00980902 (int) : min=0 >>> max=255 step=1 default=180 value=180 >>> hue 0x00980903 (int) : min=-128 >>> max=127 step=1 default=0 value=0 >>> >>> ----------------- >>> >>> v4l2-ctl --list-formats-ext >>> ioctl: VIDIOC_ENUM_FMT >>> Index : 0 >>> Type : Video Capture >>> Pixel Format: 'MJPG' (compressed) >>> Name : Motion-JPEG >>> Size: Discrete 1920x1080 >>> 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.100s (10.000 fps) >>> ......... >>> Size: Discrete 1280x720 >>> Interval: Discrete 0.017s (60.000 fps) >>> Interval: Discrete 0.020s (50.000 fps) >>> Interval: Discrete 0.033s (30.000 fps) >>> Interval: Discrete 0.050s (20.000 fps) >>> Interval: Discrete 0.100s (10.000 fps) >>> ...... >>> Size: Discrete 720x576 >>> Interval: Discrete 0.017s (60.000 fps) >>> Interval: Discrete 0.020s (50.000 fps) >>> Interval: Discrete 0.033s (30.000 fps) >>> Interval: Discrete 0.050s (20.000 fps) >>> Interval: Discrete 0.100s (10.000 fps) >>> >> > > well, it seems we know by now why this device was ...unexpensive. > > > Yes, I have a "90-days open order" and will start to search for > another, better UVC video capture device. > The problem is the lack of definitive specifications, compared with > my proprietary BMD devices. > > > it really seems to report only 5-10 fps at fullHD uncompresed, > anything bigger is mjpeg ... > > > Type : Video Capture > Pixel Format: 'YUYV' > Name : YUYV 4:2:2 > Size: Discrete 1920x1080 > Interval: Discrete 0.200s (5.000 fps) > > This can absolutely not be what they promote as: > "Fluid video recordings without delays or distortions during live > streaming, thanks to a picture frequency of 60 Hz and 1080p with Full HD". > > > > https://superuser.com/questions/1449252/ffmpeg-captures-from-uvc-dev-video0-... > > > I also tried that link's suggested syntax > > ffmpeg -y -t 15 -f video4linux2 -video_size 1920x1080 -input_format nv12 -timestamps abs -use_libv4l2 1 -i /dev/video0 out.mov > > but it didn't work for me, just quitted ffmpeg with > > Unrecognized option 'timestamps'. > Error splitting the argument list: Option not found > > Looking at ffmpeg man pages at https://manpages.org/ffmpeg/1 there > also is a similar video4linux2 syntax example > > Grab and record the input of a video4linux2 device, leave the frame > rate and size as previously set: > ffmpeg -f video4linux2 -input_format mjpeg -i /dev/video0 out.mpeg > > > - video_size > - Set the video frame size. The argument must be a string in > the form WIDTHxHEIGHT or a valid size abbreviation. > - pixel_format > - Select the pixel format (only valid for raw video input). > - input_format > - Set the preferred pixel format (for raw video) or a codec > name. This option allows one to select the input format, when several are > available. > > But what should be set as input_format in this case? > > YUYV ? (lowercase)
ffmpeg -hide_banner -f video4linux2 -input_format yuyv -i /dev/video0 out.mkv [video4linux2,v4l2 @ 0x55b25017e0c0] No such input format: yuyv. /dev/video0: Invalid argument
:(
Yes, 'yuyv422' at least not returned any errors, but just verified 5 fps from the encoded file
ffmpeg -hide_banner -f video4linux2 -input_format yuyv422 -i /dev/video0 out.mkv
ffprobe -hide_banner out.mkv Input #0, matroska,webm, from 'out.mkv': Metadata: ENCODER : Lavf58.76.100 Duration: 00:00:12.40, start: 0.000000, bitrate: 2 kb/s Stream #0:0: Video: vp9 (Profile 1), yuv422p(tv, progressive), 1920x1080, 5 fps, 5 tbr, 1k tbn, 1k tbc (default) Metadata: ENCODER : Lavc58.134.100 libvpx-vp9 DURATION : 00:00:12.400000000
Any idea why the audio:0kB from '-codec:a pcm_s16le' disappeared in the encoded files?
inxi -GA Graphics: Device-1: NVIDIA GK208B [GeForce GT 730] driver: nouveau v: kernel Device-2: Microdia Camera type: USB driver: snd-usb-audio,uvcvideo Device-3: MacroSilicon USB Video type: USB driver: hid-generic,snd-usb-audio,usbhid,uvcvideo Display: server: SUSE LINUX 1.20.3 driver: loaded: nouveau unloaded: fbdev,modesetting,vesa resolution: 2560x1440~60Hz OpenGL: renderer: llvmpipe (LLVM 11.0.1 256 bits) v: 4.5 Mesa 21.2.4 Audio: Device-1: Intel 100 Series/C230 Series Family HD Audio driver: snd_hda_intel Device-2: NVIDIA GK208 HDMI/DP Audio driver: snd_hda_intel Device-3: Microdia Camera type: USB driver: snd-usb-audio,uvcvideo Device-4: MacroSilicon USB Video type: USB driver: hid-generic,snd-usb-audio,usbhid,uvcvideo Sound Server-1: ALSA v: k5.14.21-150400.24.41-default running: yes Sound Server-2: PulseAudio v: 15.0 running: yes Sound Server-3: PipeWire v: 0.3.49 running: yes
I think for audio you need few more alsa switches:
https://askubuntu.com/questions/1451630/hdmi-capture-card-macrosilicon-ms210...
something like this but find/use your own alsa device :)
What I feel unused to is the need to set ffmpeg code both Audio and Video input format and input device respectively. A couple of syntax examples for audio found:
ffmpeg \
-f alsa -ac 2 -i hw:CARD=HDMI,DEV=0 https://trac.ffmpeg.org/wiki/Capture/V4L2_ALSA
-f pulse -ac 2 -i default
https://dev.to/ethand91/how-to-record-webcam-video-and-audio-using-ffmpeg-41...
Suggestions here what to use from the listing below?