> > Recorded a test clip mpeg2hd422p.m2ts Start/Stop as below, using the new > video preset mpeg2hd422p.m2ts and existing audio preset bluray_lpcm.m2ts, > and yes, they seemingly work ok: > Also tested mpeg2hd422p.m2ts as Terje/Andrew-R worked on and it works great! Thank you. I have been testing the upcoming ffmpeg version 8.0 and it works there also as expected. I will check it into GIT next time I boot the desktop.
On Sun, Jun 8, 2025 at 3:40 PM Terje J. Hanssen via Cin < cin@lists.cinelerra-gg.org> wrote: > > > Den 08.06.2025 17:49, skrev Andrew Randrianasulu: > > > > вс, 8 июн. 2025 г., 18:26 Terje J. Hanssen via Cin < > cin@lists.cinelerra-gg.org>: > >> >> >> Den 06.06.2025 14:17, skrev Terje J. Hanssen: >> >> While the newer h.264 and hevc are known for best compression, mpeg2 may >> have better quality at video bitrate > 30Mbps >> >> 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 >> -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 >> >> mpeg2video is difficult to get quit perfect with ffmpeg; muxing overhead: >> 6.206455% is the minimum I have achieved as in this case. >> >> 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. >> >> >> 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 >> >> Input #0, video4linux2,v4l2, from '/dev/video0': >> Duration: N/A, start: 79.422429, bitrate: 1658880 kb/s >> Stream #0:0: Video: rawvideo (YUY2 / 0x32595559), yuyv422, 1920x1080, >> 1658880 kb/s, 50 fps, 50 tbr, 1000k tbn >> [aist#1:0/pcm_s16le @ 0x55e2664e95c0] Guessed Channel Layout: stereo >> Input #1, alsa, from 'hw:CARD=UHD,DEV=0': >> Duration: N/A, start: 1749208971.359170, bitrate: 1536 kb/s >> Stream #1:0: Audio: pcm_s16le, 48000 Hz, stereo, s16, 1536 kb/s >> Stream mapping: >> Stream #0:0 -> #0:0 (rawvideo (native) -> mpeg2video (native)) >> Stream #1:0 -> #0:1 (pcm_s16le (native) -> pcm_bluray (native)) >> Press [q] to stop, [?] for help >> [mpeg2video @ 0x55e2664d0500] Warning vbv_delay will be set to 0xFFFF >> (=VBR) as the specified vbv buffer is too large for the given bitrate! >> >> Output #0, mpegts, to 'mpeg2hd422p_35M.m2ts': >> Metadata: >> encoder : Lavf61.7.100 >> Stream #0:0: Video: mpeg2video (4:2:2), yuv422p(tv, progressive), >> 1920x1080, q=2-31, 35000 kb/s, 50 fps, 90k tbn >> Metadata: >> encoder : Lavc61.19.101 mpeg2video >> Side data: >> cpb: bitrate max/min/avg: 35000000/35000000/35000000 buffer size: >> 38000000 vbv_delay: N/A >> Stream #0:1: Audio: pcm_bluray, 48000 Hz, stereo, s16, 128 kb/s >> Metadata: >> encoder : Lavc61.19.101 pcm_bluray >> [out#0/mpegts @ 0x55e2664e9740] video:128445KiB audio:5648KiB >> subtitle:0KiB other streams:0KiB global headers:0KiB muxing overhead: >> 6.206455% >> >> frame= 1500 fps= 50 q=3.5 Lsize= 142416KiB time=00:00:29.98 >> bitrate=38915.0kbits/s speed=0.998x >> >> >> I have been able to tune the ffmpeg specifications further: >> >> - '-profile:v 422p -level:v high' (for mpeg-2 profile 422P@HL) >> - '--ch_layout stereo' (as a replacement for '-ac 2' that caused >> 'Guessed Channel Layout: stereo') >> >> >> And also verified the camera HDMI out 'raw video' and 'raw audio' (pcm) >> using just the ffmpeg input parts: >> >> ffmpeg -hide_banner -f v4l2 -framerate 50 -i /dev/video0 -f alsa >> -ch_layout stereo -i hw:CARD=UHD,DEV=0 >> >> Input #0, video4linux2,v4l2, from '/dev/video0': >> Duration: N/A, start: 191.096360, bitrate: 1658880 kb/s >> Stream #0:0: Video: rawvideo (YUY2 / 0x32595559), yuyv422, 1920x1080, >> 1658880 kb/s, 50 fps, 50 tbr, 1000k tbn >> Input #1, alsa, from 'hw:CARD=UHD,DEV=0': >> Duration: N/A, start: 1749375770.007003, bitrate: 1536 kb/s >> Stream #1:0: Audio: pcm_s16le, 48000 Hz, stereo, s16, 1536 kb/s >> >> >> Attached here is a full ffmpeg debug log file for verification (command >> below) >> >> - mpeg2hd422p_35M.log.gz >> >> >> 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 >> >> ----------- >> >> Among CinGG's existing m2ts presets >> >> cd /Leap_root/usr/share/cin/ffmpeg/video >> >> ls -1 *m2ts >> >> - avc422.m2ts >> - bluray_bff.m2ts >> - bluray_dv_ntsc.m2ts >> - bluray_dv_pal.m2ts >> - bluray_fakeinterlace.m2ts >> - bluray_lo.m2ts >> - bluray.m2ts >> - bluray_tff.m2ts >> - hevc422p10.m2ts >> - hevc422p8.m2ts >> - lossless.m2ts >> - visually_lossless.m2ts >> >> >> grep mpeg2video *m2ts >> >> - That is none so far for mpeg2video HD and 422p >> >> >> If this preset can be specified and supplemented (?) for use with >> pcm_bluray and segmented recording, I can test it next ;) >> > > I think you can copy existing mpeg2 m2ts preset with different, desired > name (in same folder where other presets reside) > > and just add you parameters there? > > or try to put text below in new profile .... > > mpegts mpeg2video > cin_pix_fmt=yuv422p > b=35M > dc=10 > muxrate=38M > minrate=35M > maxrate=35M > bufsize=38M > bf=2 > profile=high > refs=1 > > > Yeah, thank you. Attach the new preset as suggested: > > cat mpeg2hd422p.m2ts > > mpegts mpeg2video > cin_pix_fmt=yuv422p > b=35M > dc=10 > muxrate=38M > minrate=35M > maxrate=35M > bufsize=38M > bf=2 > profile=high > refs=1 > > Recorded a test clip mpeg2hd422p.m2ts Start/Stop as below, using the new > video preset mpeg2hd422p.m2ts and existing audio preset bluray_lpcm.m2ts, > and yes, they seemingly work ok: > > cin > Cinelerra Infinity - built: May 18 2025 05:16:5 > ........... > Shift-P preferences as previously > r(ecord) > > DeviceV4L2Base::v4l2_open pixels="YUYV"; res="1920x1080 1600x1200 1360x768 > 1280x1024 1280x960 1280x720 1024x768 800x600 720x576 720x480 640x480" > v4l2 s_fmt 1920x1080 YUYV > DeviceV4L2Base::v4l2_open VIDIOC_S_STD: Inappropriate ioctl for device > audio0 pad 16 0 (16) > ---------- > > ffprobe -hide_banner mpeg2hd422p.m2ts > Input #0, mpegts, from 'mpeg2hd422p.m2ts': > Duration: 00:01:14.84, start: 0.020000, bitrate: 39006 kb/s > Program 1 > Stream #0:0[0x1011]: Video: mpeg2video (High) ([2][0][0][0] / 0x0002), > yuv422p(tv, bt709/unknown/unknown, progressive), 1920x1080 [SAR 1:1 DAR > 16:9], 50 fps, 50 tbr, 90k tbn > Side data: > cpb: bitrate max/min/avg: 35000000/0/0 buffer size: 38010880 > vbv_delay: N/A > Stream #0:1[0x1100](eng): Audio: pcm_bluray ([128][0][0][0] / 0x0080), > 48000 Hz, stereo, s32 (24 bit), 2304 kb/s > > Playback ok with vlc and ffplay > ---------- > > The next question; > Is segmented recording ready to use here, possibly how? > > > > > -- > Cin mailing list > Cin@lists.cinelerra-gg.org > https://lists.cinelerra-gg.org/mailman/listinfo/cin >
-- Cin mailing list Cin@lists.cinelerra-gg.org https://lists.cinelerra-gg.org/mailman/listinfo/cin