[Cin] so, it looks like qsv integration a bit harder than just adding few lines ....
Terje J. Hanssen
terjejhanssen at gmail.com
Fri Sep 27 18:05:07 CEST 2024
Den 27.09.2024 17:55, skrev Terje J. Hanssen:
>
>
> Den 27.09.2024 12:44, skrev Andrew Randrianasulu:
>>
>>
>> пт, 27 сент. 2024 г., 12:40 Terje J. Hanssen <terjejhanssen at gmail.com>:
>>
>>
>>
>> Den 26.09.2024 01:18, skrev Andrew Randrianasulu:
>>>
>>>
>>> On Thu, Sep 26, 2024 at 2:06 AM Terje J. Hanssen
>>> <terjejhanssen at gmail.com> wrote:
>>>
>>>
>>>
>>> Den 25.09.2024 23:22, skrev Andrew Randrianasulu:
>>>>
>>>>
>>>> чт, 26 сент. 2024 г., 00:16 Terje J. Hanssen
>>>> <terjejhanssen at gmail.com>:
>>>>
>>>>
>>>>
>>>> Den 25.09.2024 21:33, skrev Andrew Randrianasulu:
>>>>>
>>>>>
>>>>> ср, 25 сент. 2024 г., 18:25 Terje J. Hanssen
>>>>> <terjejhanssen at gmail.com>:
>>>>>
>>>>>
>>>>>
>>>>> Den 25.09.2024 00:27, skrev Andrew Randrianasulu:
>>>>>> try this git patch, do not forgot to make install
>>>>>> again, or put profiles in bin/ffmpeg/video folder
>>>>>> manually.
>>>>>
>>>>> # cd /home/cinelerra/cinelerra-5.1
>>>>> # mv /home/terje/0001-Qsv-encoders-for-testing.patch .
>>>>>
>>>>> # git am 0001-Qsv-encoders-for-testing.patch
>>>>> Applying: Qsv encoders for testing
>>>>>
>>>>>
>>>>> make install > make_install.log 2&1
>>>>>
>>>>>
>>>>>
>>>>> make install > make_install.log 2>&1 ?
>>>>>
>>>> Sorry. I should cleanup all ">" with Find & Replace in
>>>> my note, and oversaw here should be two of them in this
>>>> command ;(
>>>>
>>>> Now make install went through without faults as I could
>>>> see, but attach it by email again.
>>>>
>>>> But unhappily, no success with testing Cingg Qsv Rendering.
>>>> All attempts so far breaks with the output below:
>>>>
>>>> FFMPEG::open_encoder err: Internal bug, should not
>>>> have happened
>>>> int FFMPEG::open_encoder(const char*, const char*):
>>>>
>>>> ----------
>>>> localhost:/home/cinelerra/cinelerra-5.1 # bin/cin
>>>> Cinelerra Infinity - built: Sep 23 2024 10:31:07
>>>> ----------
>>>> 1)
>>>> Loaded hdv09_04.m2t
>>>> Render:
>>>> Output to file: /Videoklipp/QSV/hdv09_04_h264_qsv.mp4
>>>> File format: FFMPEG-mp4
>>>> Compression: h264_qsv.mp4
>>>> Pixels: qsv
>>>>
>>>> libva info: VA-API version 1.22.0
>>>> libva info: Trying to open /usr/lib64/dri/iHD_drv_video.so
>>>> libva info: Found init function __vaDriverInit_1_21
>>>> libva info: va_openDriver() returns 0
>>>> libva info: VA-API version 1.22.0
>>>> libva info: Trying to open /usr/lib64/dri/iHD_drv_video.so
>>>> libva info: Found init function __vaDriverInit_1_21
>>>> libva info: va_openDriver() returns 0
>>>>
>>>> FFMPEG::open_encoder err: Internal bug, should not
>>>> have happened
>>>> int FFMPEG::open_encoder(const char*, const char*):
>>>> open failed h264_qsv:/Videoklipp/QSV/hdv09_04_h264_qsv.mp4
>>>> Render::render_single: Session finished.
>>>> --------------
>>>> 2a)
>>>> Loaded hdv09_04.m2t
>>>> Render:
>>>> Output to file: /Videoklipp/QSV/hdv09_04_h265_qsv.mp4
>>>> File format: FFMPEG-mp4
>>>>
>>>> Compression: h265_qsv.mp4
>>>> Pixels: qsv
>>>>
>>>> [hevc_qsv encoder @ 0x7f44e0d0bd80] [Eval @
>>>> 0x7f44e57eb6f0] Undefined constant or missing '(' in 'high'
>>>> [hevc_qsv encoder @ 0x7f44e0d0bd80] Unable to parse
>>>> option value "high"
>>>> [hevc_qsv encoder @ 0x7f44e0d0bd80] Error setting
>>>> option profile to value high.
>>>> FFMPEG::open_encoder err: Invalid argument
>>>> int FFMPEG::open_encoder(const char*, const char*):
>>>> open failed hevc_qsv:/Videoklipp/QSV/hdv09_04_h265_qsv.mp4
>>>> Render::render_single: Session finished.
>>>>
>>>
>>> # profile=high
>>> Pixels: qsv (yuv420 isn't available)
>>>
>>> Didn't render:
>>> FFMPEG::open_encoder err: Internal bug, should not have
>>> happened
>>> int FFMPEG::open_encoder(const char*, const char*):
>>> open failed hevc_qsv:/Videoklipp/QSV/hdv09_04_h265_qsv.mp4
>>> Render::render_single: Session finished.
>>>
>>>
>>>
>>>> ----------------
>>>> 2b)
>>>> Compression: h265_qsv.mp4
>>>> Pixels: p010le
>>>>
>>>> [hevc_qsv encoder @ 0x7f93dcdb3c00] [Eval @
>>>> 0x7f93cbff06f0] Undefined constant or missing '(' in 'high'
>>>> [hevc_qsv encoder @ 0x7f93dcdb3c00] Unable to parse
>>>> option value "high"
>>>> [hevc_qsv encoder @ 0x7f93dcdb3c00] Error setting
>>>> option profile to value high.
>>>> FFMPEG::open_encoder err: Invalid argument
>>>> int FFMPEG::open_encoder(const char*, const char*):
>>>> open failed hevc_qsv:/Videoklipp/QSV/hdv09_04_h265_qsv.mp4
>>>> Render::render_single: Session finished.
>>>>
>>>
>>> Some progress:
>>>
>>> # profile=high
>>> Pixels: yuvy422 (yuv420 isn't available)
>>> Settings>Appearance: BT.709/MPEG2
>>>
>>> Rendered:
>>> Render::render_single: Session finished.
>>> ** rendered 5972 frames in 33.999 secs, 175.652 fps
>>> audio0 pad 64 0 (64)
>>>
>>> VLC playback OK
>>>
>>> ffprobe -hide_banner hdv09_04_h265_qsv.mp4
>>> Input #0, mov,mp4,m4a,3gp,3g2,mj2, from 'hdv09_04_h265_qsv.mp4':
>>> Metadata:
>>> major_brand : isom
>>> minor_version : 512
>>> compatible_brands: isomiso2mp41
>>> encoder : Lavf61.1.100
>>> Duration: 00:03:58.88, start: 0.000000, bitrate: 3359 kb/s
>>> Stream #0:0[0x1](und): Video: hevc (Rext) (hev1 /
>>> 0x31766568), yuv422p(tv, bt709/unknown/unknown, top coded
>>> first (swapped)), 1440x1080 [SAR 4:3 DAR 16:9], 3223 kb/s,
>>> 25 fps, 25 tbr, 12800 tbn (default)
>>> Metadata:
>>> handler_name : VideoHandler
>>> vendor_id : [0][0][0][0]
>>> Stream #0:1[0x2](und): Audio: aac (LC) (mp4a /
>>> 0x6134706D), 48000 Hz, stereo, fltp, 129 kb/s (default)
>>> Metadata:
>>> handler_name : SoundHandler
>>> vendor_id : [0][0][0][0]
>>>
>>>
>>>
>>> ah, so it need tv range .. try also with Pixels nv12 (worked for
>>> me on mediacodec)
>>
>> Not really.,
>> Also the default at first startup, appearance BT.601-PAL/MJPEG,
>> worked, and then ffprobe output
>> Stream #0:0[0x1](und): Video: hevc (Rext) (hev1 / 0x31766568),
>> yuv422p(pc, bt470bg/unknown/unknown, top coded first (swapped)),
>> 1440x1080 [SAR 4:3 DAR 16:9], 3248 kb/s, 25 fps, 25 tbr, 12800
>> tbn (default)
>>
>> I just changed it to BT.701/MPEG which is for HD video, and I
>> also remembed you also suggested this in a previous thread.
>>
>> Both yuv422 and nv12 work.
>>
>> But why isn't also the usual yuv420p available for h264 and h265?
>>
>>
>> not sure, may be qsv library does not support this?
>>
>> at least I can't see it in source
>>
>> https://git.ffmpeg.org/gitweb/ffmpeg.git/blob/HEAD:/libavcodec/qsvenc_hevc.c#l399
>>
>>
>>
>> Possibly also rename h265 to hevc as ffmpeg use?
>>
>>
>> ok, I'll rename it and add nv12 as default pix format.
>>
>> can you also see if h264 works with nv12?
>
> No, h264 doesn't work with nv12, neither with # profile=high
>
> I've extracted three ffmpeg QSV code lines below with qsv and yuv420p
> used from
> https://trac.ffmpeg.org/wiki/Hardware/QuickSync#FullExamples
>
> ffmpeg -hwaccel qsv -c:v h264_qsv -i input.mp4 -vf
> hwdownload,format=nv12 -pix_fmt yuv420p output.yuv
> ffmpeg -hwaccel qsv -c:v h264_qsv -i input.mp4 -vf
> hwdownload,format=nv12 -pix_fmt yuv420p -f sdl -
> ffmpeg -init_hw_device qsv=hw -filter_hw_device hw -f rawvideo
> -pix_fmt yuv420p -s:v 1920x1080 -i input.yuv -vf
> hwupload=extra_hw_frames=64,format=qsv -c:v h264_qsv -b:v 5M output.mp4
>
>
> On the other hand the following VAAPI section and code lines from
> 'The encoders only accept input as VAAPI surfaces. If the input is in
> normal memory, it will need to be uploaded before giving the frames to
> the encoder - in the ffmpeg utility, the |hwupload| filter can be used
> for this. It will upload to a surface with the same layout as the
> software frame, so it may be necessary to add a |format| filter
> immediately before to get the input into the right format (hardware
> generally wants the |nv12| layout, but most software functions use the
> |yuv420p| layout). The |hwupload| filter also requires a device to
> upload to, which needs to be defined before the filter graph is created.'
>
> ffmpeg -vaapi_device /dev/dri/renderD128 -i input.mp4 -vf
> 'format=nv12,hwupload' -c:v h264_vaapi output.mp4
>
>
> and from my own ffmpeg test
>
> ffmpeg -hide_banner -hwaccel_output_format qsv -i hdv09_04.m2t
> hdv09_04_h264_qsv.mp4
>
> [mpeg2video @ 0x5575e097b4c0] Invalid frame dimensions 0x0.
> Last message repeated 3 times
> [mpegts @ 0x5575e0975e00] PES packet size mismatch
> [mpegts @ 0x5575e0975e00] Packet corrupt (stream = 1, dts = 258142320).
> [mpegts @ 0x5575e0975e00] Could not find codec parameters for stream 2
> (Unknown: none ([160][0][0][0] / 0x00A0)): unknown codec
> Consider increasing the value for the 'analyzeduration' (0) and
> 'probesize' (5000000) options
> [mpegts @ 0x5575e0975e00] Could not find codec parameters for stream 3
> (Unknown: none ([161][0][0][0] / 0x00A1)): unknown codec
> Consider increasing the value for the 'analyzeduration' (0) and
> 'probesize' (5000000) options
> Input #0, mpegts, from 'hdv09_04.m2t':
> Duration: 00:03:59.06, start: 2629.496000, bitrate: 26110 kb/s
> Program 100
> Stream #0:0[0x810]: Video: mpeg2video (Main) ([2][0][0][0] /
> 0x0002), yuv420p(tv, bt709, top first), 1440x1080 [SAR 4:3 DAR 16:9],
> 25000 kb/s, 25 fps, 25 tbr, 90k tbn
> Side data:
> cpb: bitrate max/min/avg: 25000000/0/0 buffer size: 7340032
> vbv_delay: N/A
> Stream #0:1[0x814]: Audio: mp2 (mp3float) ([3][0][0][0] / 0x0003),
> 48000 Hz, stereo, fltp, 384 kb/s
> Stream #0:2[0x815]: Unknown: none ([160][0][0][0] / 0x00A0)
> Stream #0:3[0x811]: Unknown: none ([161][0][0][0] / 0x00A1)
> File 'hdv09_04_h264_qsv.mp4' already exists. Overwrite? [y/N] y
> Stream mapping:
> Stream #0:0 -> #0:0 (mpeg2video (native) -> h264 (libx264))
> Stream #0:1 -> #0:1 (mp2 (native) -> aac (native))
> Press [q] to stop, [?] for help
> [libx264 @ 0x5575e097d5c0] using SAR=4/3
> [libx264 @ 0x5575e097d5c0] using cpu capabilities: MMX2 SSE2Fast SSSE3
> SSE4.2 AVX FMA3 BMI2 AVX2
> [libx264 @ 0x5575e097d5c0] profile High, level 4.0, 4:2:0, 8-bit
> [libx264 @ 0x5575e097d5c0] 264 - core 164 - H.264/MPEG-4 AVC codec -
> Copyleft 2003-2023 - http://www.videolan.org/x264.html - options:
> cabac=1 ref=3 deblock=1:0:0 analyse=0x3:0x113 me=hex subme=7 psy=1
> psy_rd=1.00:0.00 mixed_ref=1 me_range=16 chroma_me=1 trellis=1
> 8x8dct=1 cqm=0 deadzone=21,11 fast_pskip=1 chroma_qp_offset=-2
> threads=30 lookahead_threads=5 sliced_threads=0 nr=0 decimate=1
> interlaced=0 bluray_compat=0 constrained_intra=0 bframes=3 b_pyramid=2
> b_adapt=1 b_bias=0 direct=1 weightb=1 open_gop=0 weightp=2 keyint=250
> keyint_min=25 scenecut=40 intra_refresh=0 rc_lookahead=40 rc=crf
> mbtree=1 crf=23.0 qcomp=0.60 qpmin=0 qpmax=69 qpstep=4 ip_ratio=1.40
> aq=1:1.00
> Output #0, mp4, to 'hdv09_04_h264_qsv.mp4':
> Metadata:
> encoder : Lavf61.1.100
> Stream #0:0: Video: h264 (avc1 / 0x31637661), yuv420p(tv, bt709, top
> coded first (swapped)), 1440x1080 [SAR 4:3 DAR 16:9], q=2-31, 25 fps,
> 12800 tbn
> Metadata:
> encoder : Lavc61.3.100 libx264
> Side data:
> cpb: bitrate max/min/avg: 0/0/0 buffer size: 0 vbv_delay: N/A
> Stream #0:1: Audio: aac (LC) (mp4a / 0x6134706D), 48000 Hz, stereo,
> fltp, 128 kb/s
> Metadata:
> encoder : Lavc61.3.100 aac
> [mpegts @ 0x5575e0975e00] PES packet size mismatch0:03:51.80
> bitrate=8956.8kbits/s dup=12 drop=0 speed=6.35x
> [mpegts @ 0x5575e0975e00] Packet corrupt (stream = 1, dts = 258142320).
> [mpeg2video @ 0x5575e09a6b80] ac-tex damaged at 10 61
> [mpeg2video @ 0x5575e09a6b80] Warning MVs not available
> [mpeg2video @ 0x5575e09a6b80] concealing 630 DC, 630 AC, 630 MV errors
> in P frame
> [vist#0:0/mpeg2video @ 0x5575e097de80] [dec:mpeg2video @
> 0x5575e0a8c0c0] corrupt decoded frame=0 speed=6.36x
> [out#0/mp4 @ 0x5575e09ad380] video:255836KiB audio:3774KiB
> subtitle:0KiB other streams:0KiB global headers:0KiB muxing overhead:
> 0.068494%
> frame= 5977 fps=160 q=-1.0 Lsize= 259787KiB time=00:03:58.77
> bitrate=8912.9kbits/s dup=14 drop=0 speed=6.37x
> [libx264 @ 0x5575e097d5c0] frame I:54 Avg QP:22.80 size:193221
> [libx264 @ 0x5575e097d5c0] frame P:1658 Avg QP:25.06 size: 92898
> [libx264 @ 0x5575e097d5c0] frame B:4265 Avg QP:27.85 size: 22864
> [libx264 @ 0x5575e097d5c0] consecutive B-frames: 3.6% 2.4% 4.0% 89.9%
> [libx264 @ 0x5575e097d5c0] mb I I16..4: 4.9% 87.3% 7.7%
> [libx264 @ 0x5575e097d5c0] mb P I16..4: 1.2% 13.2% 1.0% P16..4:
> 41.6% 21.2% 13.9% 0.0% 0.0% skip: 7.8%
> [libx264 @ 0x5575e097d5c0] mb B I16..4: 0.2% 1.2% 0.1% B16..8:
> 45.7% 5.9% 1.8% direct: 7.2% skip:37.9% L0:43.2% L1:43.3% BI:13.5%
> [libx264 @ 0x5575e097d5c0] 8x8 transform intra:85.8% inter:80.8%
> [libx264 @ 0x5575e097d5c0] coded y,uvDC,uvAC intra: 79.9% 63.7% 20.4%
> inter: 33.1% 18.6% 1.6%
> [libx264 @ 0x5575e097d5c0] i16 v,h,dc,p: 16% 52% 15% 17%
> [libx264 @ 0x5575e097d5c0] i8 v,h,dc,ddl,ddr,vr,hd,vl,hu: 19% 16% 36%
> 4% 5% 5% 5% 5% 7%
> [libx264 @ 0x5575e097d5c0] i4 v,h,dc,ddl,ddr,vr,hd,vl,hu: 12% 57% 9%
> 3% 4% 4% 4% 3% 4%
> [libx264 @ 0x5575e097d5c0] i8c dc,h,v,p: 57% 19% 20% 4%
> [libx264 @ 0x5575e097d5c0] Weighted P-Frames: Y:15.3% UV:6.2%
> [libx264 @ 0x5575e097d5c0] ref P L0: 47.1% 15.9% 26.2% 9.9% 0.8%
> [libx264 @ 0x5575e097d5c0] ref B L0: 82.8% 14.6% 2.6%
> [libx264 @ 0x5575e097d5c0] ref B L1: 93.4% 6.6%
> [libx264 @ 0x5575e097d5c0] kb/s:8766.10
> [aac @ 0x5575e09abd80] Qavg: 488.617
>
>
which resulted in
ffprobe -hide_banner hdv09_04_h264_qsv.mp4
Input #0, mov,mp4,m4a,3gp,3g2,mj2, from 'hdv09_04_h264_qsv.mp4':
Metadata:
major_brand : isom
minor_version : 512
compatible_brands: isomiso2avc1mp41
encoder : Lavf61.1.100
Duration: 00:03:59.08, start: 0.000000, bitrate: 8901 kb/s
Stream #0:0[0x1](und): Video: h264 (High) (avc1 / 0x31637661),
yuv420p(tv, bt709, progressive), 1440x1080 [SAR 4:3 DAR 16:9], 8766
kb/s, 25 fps, 25 tbr, 12800 tbn (default)
Metadata:
handler_name : VideoHandler
vendor_id : [0][0][0][0]
encoder : Lavc61.3.100 libx264
Stream #0:1[0x2](und): Audio: aac (LC) (mp4a / 0x6134706D), 48000 Hz,
stereo, fltp, 129 kb/s (default)
Metadata:
handler_name : SoundHandler
vendor_id : [0][0][0][0]
>>
>>
>>
>>
>>>
>>>
>>>> ----------------
>>>> 3a)
>>>> Loaded hdv09_04.m2t
>>>> Render:
>>>> Output to file: /Videoklipp/QSV/hdv09_04_av1_qsv.mp4
>>>> File format: FFMPEG-mp4
>>>>
>>>> Compression: av1_qsv.mp4
>>>> Pixels: qsv
>>>>
>>>> FFMPEG::open_encoder err: Internal bug, should not
>>>> have happened
>>>> int FFMPEG::open_encoder(const char*, const char*):
>>>> open failed av1_qsv:/Videoklipp/QSV/hdv09_04_av1_qsv.mp4
>>>> Render::render_single: Session finished.
>>>> --------------
>>>> 3b)
>>>> Compression: av1_qsv.mp4
>>>> Pixels: p010le
>>>>
>>>> [av1_qsv @ 0x7f1c302e7080] Current picture structure is
>>>> unsupported
>>>> [av1_qsv @ 0x7f1c302e7080] some encoding parameters are
>>>> not supported by the QSV runtime. Please double check
>>>> the input parameters.
>>>> FFMPEG::open_encoder err: Function not implemented
>>>> int FFMPEG::open_encoder(const char*, const char*):
>>>> open failed av1_qsv:/Videoklipp/QSV/hdv09_04_av1_qsv.mp4
>>>> Render::render_single: Session finished.
>>>> -----------------
>>>> 4a)
>>>> Loaded hd01.mov
>>>> Render:
>>>> Output to file: /Videoklipp/QSV/hdv09_04_h265_qsv.mp4
>>>> File format: FFMPEG-mp4
>>>>
>>>> Compression: h265_qsv.mp4
>>>> Pixels: qsv
>>>>
>>>> [hevc_qsv encoder @ 0x7f4b8d6f9ac0] [Eval @
>>>> 0x7f4b62ff66f0] Undefined constant or missing '(' in 'high'
>>>> [hevc_qsv encoder @ 0x7f4b8d6f9ac0] Unable to parse
>>>> option value "high"
>>>> [hevc_qsv encoder @ 0x7f4b8d6f9ac0] Error setting
>>>> option profile to value high.
>>>> FFMPEG::open_encoder err: Invalid argument
>>>> int FFMPEG::open_encoder(const char*, const char*):
>>>> open failed hevc_qsv:/Videoklipp/MOV/hd01_qsv.mp4
>>>> Render::render_single: Session finished.
>>>>
>>>>
>>>> I think you can try to comment out (with #) line with
>>>> profile=high. in h265_qsv.mp4
>>>
>>> # profile=high
>>> Pixels: qsv (yuv420 isn't available)
>>>
>>> Didn't render:
>>> FFMPEG::open_encoder err: Internal bug, should not have
>>> happened
>>> int FFMPEG::open_encoder(const char*, const char*):
>>> open failed hevc_qsv:/Videoklipp/MOV/hd01_qsv.mp4
>>> Render::render_single: Session finished.
>>>
>>>
>>>>
>>>> You also probably can stick to yuv420p (if available)
>>>> because qsv implies image already in hw-specifuc format and
>>>> ffmpeg does not do this conversion for us
>>>>
>>>>
>>>> --------------------
>>>> 4b)
>>>> Compression: h265_qsv.mp4
>>>> Pixels: yuyv422
>>>>
>>>> [hevc_qsv encoder @ 0x7f4ba4070f00] [Eval @
>>>> 0x7f4b5bff86f0] Undefined constant or missing '(' in 'high'
>>>> [hevc_qsv encoder @ 0x7f4ba4070f00] Unable to parse
>>>> option value "high"
>>>> [hevc_qsv encoder @ 0x7f4ba4070f00] Error setting
>>>> option profile to value high.
>>>> FFMPEG::open_encoder err: Invalid argument
>>>> int FFMPEG::open_encoder(const char*, const char*):
>>>> open failed hevc_qsv:/Videoklipp/MOV/hd01_qsv.mp4
>>>> Render::render_single: Session finished.
>>>>
>>>
>>> Some progress:
>>>
>>> # profile=high
>>> Pixels: yuyv422 (yuv420 isn't available)
>>> Settings>Appearance: BT.709/MPEG2
>>>
>>> Rendered:
>>> FFStream::encode_frame: encode failed.
>>> file: /Videoklipp/MOV/hd01_qsv.mp4
>>> err: Resource temporarily unavailable
>>> FFStream::flush failed
>>> :file:/Videoklipp/MOV/hd01_qsv.mp4
>>> err: Operation not permitted
>>> Render::render_single: Session finished.
>>> ** rendered 1781 frames in 14.617 secs, 121.844 fps
>>> audio0 pad 128 0 (128)
>>>
>>> VLC playback OK
>>>
>>> ffprobe -hide_banner hd01_qsv.mp4
>>> Input #0, mov,mp4,m4a,3gp,3g2,mj2, from 'hd01_qsv.mp4':
>>> Metadata:
>>> major_brand : isom
>>> minor_version : 512
>>> compatible_brands: isomiso2mp41
>>> encoder : Lavf61.1.100
>>> Duration: 00:01:11.28, start: 0.000000, bitrate: 2744 kb/s
>>> Stream #0:0[0x1](und): Video: hevc (Rext) (hev1 /
>>> 0x31766568), yuv422p(tv, bt709/unknown/unknown, top coded
>>> first (swapped)), 1920x1080 [SAR 1:1 DAR 16:9], 2377 kb/s,
>>> 25 fps, 25 tbr, 12800 tbn (default)
>>> Metadata:
>>> handler_name : VideoHandler
>>> vendor_id : [0][0][0][0]
>>> Stream #0:1[0x2](und): Audio: aac (LC) (mp4a /
>>> 0x6134706D), 48000 Hz, 16 channels, fltp, 378 kb/s (default)
>>> Metadata:
>>> handler_name : SoundHandler
>>> vendor_id : [0][0][0][0]
>>>
>>>
>>>
>>>
>>>
>>>>
>>>>
>>>>
>>>
>>
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <https://lists.cinelerra-gg.org/pipermail/cin/attachments/20240927/9b96b888/attachment-0001.htm>
More information about the Cin
mailing list