Den 03.05.2025 13:00, skrev Terje J. Hanssen:
Den 02.05.2025 21:42, skrev Andrew Randrianasulu:
https://www.mail-archive.com/cin@lists.cinelerra-gg.org/msg05748.html
I contine this new thread with an short
extract from the long growing
[Cin] ms2130 HDMI-USB3 UHD capture card -
not quite as expected?
But shouldn't a 422 and not a 420 output
format be created?
>> it seems in some
cases ffmpeg not geared towards
preserving most information, just picks
up most commonly defined/first pixel
format.
>> Try mpeg2video as output codec,
and/or specify pixel format (pix_fmt)
more explicitly before output's
filename?
>>> Could you possibly
examplify the latter?
>>>> I think I just
theorized ffmpeg may try to get some
info from alsa device file directly, as
it tries with /dev/video. But I never
>>>> tried this way, so I
can be totally wrong!
-------------------------------
Instead of 50i (pal interlaced fields), I
try 50 fps (progressive) that at least is
a pal frequence.
And yes, it seems from the output that
ffmpeg uses mpeg1video as default output
codec.
Furter I try to combine the current line
ffmpeg -hide_banner -f v4l2
-input_format yuyv422 -video_size
720x576 -framerate 25 -t 20 -i
/dev/video2 out-720x576_ms2130.mpeg
with and utilize the syntax developed 2021
for "Blu-ray compliant MPEG-2 SD video
with LPCM audio"
ffmpeg -i dv28.dv -c:v
mpeg2video -refs 1 -bf 2 -b:v 25M
-maxrate 25M -minrate 25M -bufsize 45M
-muxrate 45M -dc 10 -c:a pcm_s16be -f
vob dv28.mpg
and for the current ongoing "DVD compliant
MPEG-2 Video and PCM Audio"
ffmpeg -hide_banner -i dv01.dv
-c:v mpeg2video -refs 1 -bf 2 -b:v 8M
-maxrate 8M -minrate 8M -bufsize 20M
-muxrate 11M -dc 10 -c:a pcm_dvd -f vob
-flags +ilme+ildct dv01.mpg
to first
ffmpeg -hide_banner -f v4l2
-input_format yuyv422 -video_size
720x576 -framerate 50 -c:v mpeg2video
-refs 1 -bf 2 -b:v 8M -maxrate 8M
-minrate 8M -bufsize 20M -muxrate 11M
-dc 10 -c:a pcm_dvd -f vob -t 20 -i
/dev/video2 720x576_50p_ms2130.mpg
Option b:v (video bitrate (please use
-b:v)) cannot be applied to input url
/dev/video2 -- you are trying to apply
an input option to an output file or
vice versa. Move this option before the
file it belongs to.
Error parsing options for input file
/dev/video2.
Error opening input files: Invalid
argument
and next revised with no output. That is I
need help to debug the syntax error:
ffmpeg -hide_banner -f v4l2
-input_format yuyv422 -video_size
720x576 -framerate 50 -i /dev/video2
-c:v mpeg2video -refs 1 -bf 2 -b:v 8M
-maxrate 8M -minrate 8M -bufsize 20M
-muxrate 11M -dc 10 -c:a pcm_dvd -f vob
-t 20 720x576_50p_ms2130.mpg
[video4linux2,v4l2 @ 0x55db770ef9c0]
Dequeued v4l2 buffer contains corrupted
data (0 bytes).
Input #0, video4linux2,v4l2, from
'/dev/video2':
Duration: N/A, start: 0.000000,
bitrate: 331776 kb/s
Stream #0:0: Video: rawvideo (YUY2 /
0x32595559), yuyv422, 720x576, 331776
kb/s, 50 fps, 50 tbr, 1000k tbn
Stream mapping:
Stream #0:0 -> #0:0 (rawvideo
(native) -> mpeg2video (native))
Press [q] to stop, [?] for help
[video4linux2,v4l2 @ 0x55db770ef9c0]
Dequeued v4l2 buffer contains corrupted
data (0 bytes).
Last message repeated 30 times
[mpeg2video @ 0x55db77114f00] Warning
vbv_delay will be set to 0xFFFF (=VBR)
as the specified vbv buffer is too large
for the given bitrate!
Output #0, vob, to
'720x576_50p_ms2130.mpg':
Metadata:
encoder : Lavf59.27.100
Stream #0:0: Video: mpeg2video
(4:2:2), yuv422p(tv, progressive),
720x576, q=2-31, 8000 kb/s, 50 fps, 90k
tbn
Metadata:
encoder : Lavc59.37.100
mpeg2video
Side data:
cpb: bitrate max/min/avg:
8000000/8000000/8000000 buffer size:
20000000 vbv_delay: N/A
frame= 0 fps=0.0 q=0.0 Lsize=
0kB time=00:00:00.00 bitrate=N/A
speed= 0x
video:0kB audio:0kB subtitle:0kB other
streams:0kB global headers:0kB muxing
overhead: unknown
Output file is empty, nothing was
encoded (check -ss / -t / -frames
parameters if used)
well, I think framerate still 25
for 50i stream ....
can you re-check last line with
framerate parameter removed or changed back to
25?
Ok, as this old post by my mistake already has been
forwarded to the list and replied, I will follow it up
later today, but need to rig rig up my camcorder and
devices
Finally ready, I had to recall a lot since 2023.
ls /dev/video*
/dev/video0 /dev/video1 /dev/video2 /dev/video3
for i in /dev/video*; do echo "$i"; udevadm info
--query=all --attribute-walk --name=$i | grep -E "name";
done
/dev/video0
ATTR{name}=="USB3.0 UHD: USB3.0 UHD"
/dev/video1
ATTR{name}=="USB3.0 UHD: USB3.0 UHD"
/dev/video2
ATTR{name}=="USB 2.0 Camera: HD 720P Webcam"
/dev/video3
ATTR{name}=="USB 2.0 Camera: HD 720P Webcam"
v4l2-ctl --list-devices
USB 2.0 Camera: HD 720P Webcam (usb-0000:00:14.0-11.2):
/dev/video2
/dev/video3
/dev/media1
USB3.0 UHD: USB3.0 UHD (usb-0000:00:14.0-3):
/dev/video0
/dev/video1
/dev/media0
As seen the HDMI-USB3 capture card + the S-Video/HDMI
converter (with the analog S-video camcorder) is now on
/dev/video0
while the USB2 webcam is on /dev/video2