<div dir="auto"><div><br><br><div class="gmail_quote gmail_quote_container"><div dir="ltr" class="gmail_attr">вс, 8 июн. 2025 г., 18:26 Terje J. Hanssen via Cin <<a href="mailto:cin@lists.cinelerra-gg.org">cin@lists.cinelerra-gg.org</a>>:<br></div><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><u></u>
<div>
<br>
<br>
<div>Den 06.06.2025 14:17, skrev Terje J.
Hanssen:<br>
</div>
<blockquote type="cite">While
the newer h.264 and hevc are known for best compression, mpeg2 may
have better quality at video bitrate > 30Mbps
<br>
<br>
This example capture a raw video stream (optional tape playback)
from the camera sensor over HDMI out and transcode audio to PCM
into a high-end mpeg2hd422p.m2ts
<br>
-input_format yuyv422 -video_size hd1080 possibly may be commented
out, as the encoder default uses the maximum capability it get
from the capture card ms2130 and driver v4l2
<br>
<br>
mpeg2video is difficult to get quit perfect with ffmpeg; muxing
overhead: 6.206455% is the minimum I have achieved as in this
case.
<br>
<br>
At this high bitrate, 39Mbps here, a combination with segmented
recording is suggested and preferred to control the file sizes
(segments) and eventually corrupted parts better.
<br>
<br>
<br>
ffmpeg -hide_banner -f v4l2 -framerate 50 -i /dev/video0 -f alsa
-ac 2 -i hw:CARD=UHD,DEV=0 -c:v mpeg2video -refs 1 -bf 2 -b:v 35M
-maxrate 35M -minrate 35M -bufsize 38M -muxrate 38M -dc 10 -c:a
pcm_bluray -mpegts_m2ts_mode 1 -t 30 -f mpegts
mpeg2hd422p_35M.m2ts
<br>
<br>
Input #0, video4linux2,v4l2, from '/dev/video0':
<br>
Duration: N/A, start: 79.422429, bitrate: 1658880 kb/s
<br>
Stream #0:0: Video: rawvideo (YUY2 / 0x32595559), yuyv422,
1920x1080, 1658880 kb/s, 50 fps, 50 tbr, 1000k tbn
<br>
[aist#1:0/pcm_s16le @ 0x55e2664e95c0] Guessed Channel Layout:
stereo
<br>
Input #1, alsa, from 'hw:CARD=UHD,DEV=0':
<br>
Duration: N/A, start: 1749208971.359170, bitrate: 1536 kb/s
<br>
Stream #1:0: Audio: pcm_s16le, 48000 Hz, stereo, s16, 1536 kb/s
<br>
Stream mapping:
<br>
Stream #0:0 -> #0:0 (rawvideo (native) -> mpeg2video
(native))
<br>
Stream #1:0 -> #0:1 (pcm_s16le (native) -> pcm_bluray
(native))
<br>
Press [q] to stop, [?] for help
<br>
[mpeg2video @ 0x55e2664d0500] Warning vbv_delay will be set to
0xFFFF (=VBR) as the specified vbv buffer is too large for the
given bitrate!
<br>
<br>
Output #0, mpegts, to 'mpeg2hd422p_35M.m2ts':
<br>
Metadata:
<br>
encoder : Lavf61.7.100
<br>
Stream #0:0: Video: mpeg2video (4:2:2), yuv422p(tv,
progressive), 1920x1080, q=2-31, 35000 kb/s, 50 fps, 90k tbn
<br>
Metadata:
<br>
encoder : Lavc61.19.101 mpeg2video
<br>
Side data:
<br>
cpb: bitrate max/min/avg: 35000000/35000000/35000000
buffer size: 38000000 vbv_delay: N/A
<br>
Stream #0:1: Audio: pcm_bluray, 48000 Hz, stereo, s16, 128 kb/s
<br>
Metadata:
<br>
encoder : Lavc61.19.101 pcm_bluray
<br>
[out#0/mpegts @ 0x55e2664e9740] video:128445KiB audio:5648KiB
subtitle:0KiB other streams:0KiB global headers:0KiB muxing
overhead: 6.206455%
<br>
<br>
frame= 1500 fps= 50 q=3.5 Lsize= 142416KiB time=00:00:29.98
bitrate=38915.0kbits/s speed=0.998x
<br>
<br>
</blockquote>
<br>
I have been able to tune the ffmpeg specifications further:<br>
<ul>
<li>'-profile:v 422p -level:v high' (for mpeg-2 profile 422P@HL)</li>
<li>'--ch_layout stereo' (as a replacement for '-ac 2' that
caused 'Guessed Channel Layout: stereo')</li>
</ul>
<br>
And also verified the camera HDMI out 'raw video' and 'raw audio'
(pcm) using just the ffmpeg input parts:<br>
<br>
ffmpeg -hide_banner -f v4l2 -framerate 50 -i /dev/video0 -f alsa
-ch_layout stereo -i hw:CARD=UHD,DEV=0<br>
<br>
Input #0, video4linux2,v4l2, from '/dev/video0':<br>
Duration: N/A, start: 191.096360, bitrate: 1658880 kb/s<br>
Stream #0:0: Video: rawvideo (YUY2 / 0x32595559), yuyv422,
1920x1080, 1658880 kb/s, 50 fps, 50 tbr, 1000k tbn<br>
Input #1, alsa, from 'hw:CARD=UHD,DEV=0':<br>
Duration: N/A, start: 1749375770.007003, bitrate: 1536 kb/s<br>
Stream #1:0: Audio: pcm_s16le, 48000 Hz, stereo, s16, 1536 kb/s<br>
<br>
<br>
Attached here is a full ffmpeg debug log file for verification
(command below)<br>
<ul>
<li>mpeg2hd422p_35M.log.gz</li>
</ul>
<br>
ffmpeg -loglevel debug -f v4l2 -framerate 50 -i /dev/video0 -f alsa
-ch_layout stereo -i hw:CARD=UHD,DEV=0 -c:v mpeg2video -profile:v
422p -level:v high -refs 1 -bf 2 -b:v 35M -maxrate 35M -minrate 35M
-bufsize 38M -muxrate 38M -dc 10 -c:a pcm_bluray -mpegts_m2ts_mode 1
-t 30 -f mpegts mpeg2hd422p_35M.m2ts > mpeg2hd422p_35M.log
2>&1<br>
<br>
-----------<br>
<br>
Among CinGG's existing m2ts presets<br>
<br>
cd /Leap_root/usr/share/cin/ffmpeg/video<br>
<br>
ls -1 *m2ts<br>
<ul>
<li>avc422.m2ts</li>
<li>bluray_bff.m2ts</li>
<li>bluray_dv_ntsc.m2ts</li>
<li>bluray_dv_pal.m2ts</li>
<li>bluray_fakeinterlace.m2ts</li>
<li>bluray_lo.m2ts</li>
<li>bluray.m2ts</li>
<li>bluray_tff.m2ts</li>
<li>hevc422p10.m2ts</li>
<li>hevc422p8.m2ts</li>
<li>lossless.m2ts</li>
<li>visually_lossless.m2ts</li>
</ul>
<br>
grep mpeg2video *m2ts<br>
<ul>
<li>That is none so far for mpeg2video HD and 422p</li>
</ul>
<br>
If this preset can be specified and supplemented (?) for use with
pcm_bluray and segmented recording, I can test it next ;)<br></div></blockquote></div></div><div dir="auto"><br></div><div dir="auto">I think you can copy existing mpeg2 m2ts preset with different, desired name (in same folder where other presets reside)</div><div dir="auto"><br></div><div dir="auto">and just add you parameters there?</div><div dir="auto"><br></div><div dir="auto">or try to put text below in new profile ....</div><div dir="auto"><br></div><div dir="auto">mpegts mpeg2video</div><div dir="auto">cin_pix_fmt=yuv422p</div><div dir="auto">b=35M</div><div dir="auto">dc=10</div><div dir="auto">muxrate=38M</div><div dir="auto">minrate=35M</div><div dir="auto">maxrate=35M</div><div dir="auto">bufsize=38M</div><div dir="auto">bf=2</div><div dir="auto">profile=high</div><div dir="auto">refs=1</div><div dir="auto"><br></div><div dir="auto"><br></div><div dir="auto"><div class="gmail_quote gmail_quote_container"><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><div>
<br>
<br>
<br>
<br>
<br>
<br>
<br>
<br>
<br>
<br>
<br>
<br>
</div>
-- <br>
Cin mailing list<br>
<a href="mailto:Cin@lists.cinelerra-gg.org" target="_blank" rel="noreferrer">Cin@lists.cinelerra-gg.org</a><br>
<a href="https://lists.cinelerra-gg.org/mailman/listinfo/cin" rel="noreferrer noreferrer" target="_blank">https://lists.cinelerra-gg.org/mailman/listinfo/cin</a><br>
</blockquote></div></div></div>