Git Inbox Mirror of the ffmpeg-devel mailing list - see https://ffmpeg.org/mailman/listinfo/ffmpeg-devel
 help / color / mirror / Atom feed
* [FFmpeg-devel] [PATCH] libx265: support ATSC A/53 captions
@ 2022-10-17 16:28 Eran Kornblau
  2022-10-25  4:23 ` Eran Kornblau
  0 siblings, 1 reply; 9+ messages in thread
From: Eran Kornblau @ 2022-10-17 16:28 UTC (permalink / raw)
  To: FFmpeg development discussions and patches

[-- Attachment #1: Type: text/plain, Size: 189 bytes --]

Hi,

The attached patch adds rendering of ATSC A/53 captions as HEVC SEI messages.
The option name/implementation is aligned with the corresponding libx264 feature.

Thanks

Eran


[-- Attachment #2: 0001-libx265-support-ATSC-A-53-captions.patch --]
[-- Type: application/octet-stream, Size: 3893 bytes --]

[-- Attachment #3: Type: text/plain, Size: 251 bytes --]

_______________________________________________
ffmpeg-devel mailing list
ffmpeg-devel@ffmpeg.org
https://ffmpeg.org/mailman/listinfo/ffmpeg-devel

To unsubscribe, visit link above, or email
ffmpeg-devel-request@ffmpeg.org with subject "unsubscribe".

^ permalink raw reply	[flat|nested] 9+ messages in thread

* Re: [FFmpeg-devel] [PATCH] libx265: support ATSC A/53 captions
  2022-10-17 16:28 [FFmpeg-devel] [PATCH] libx265: support ATSC A/53 captions Eran Kornblau
@ 2022-10-25  4:23 ` Eran Kornblau
  2022-11-01  7:42   ` Eran Kornblau
  0 siblings, 1 reply; 9+ messages in thread
From: Eran Kornblau @ 2022-10-25  4:23 UTC (permalink / raw)
  To: FFmpeg development discussions and patches

Ping

From: Eran Kornblau
Sent: Monday, 17 October 2022 19:29
To: FFmpeg development discussions and patches <ffmpeg-devel@ffmpeg.org>
Subject: [PATCH] libx265: support ATSC A/53 captions

Hi,

The attached patch adds rendering of ATSC A/53 captions as HEVC SEI messages.
The option name/implementation is aligned with the corresponding libx264 feature.

Thanks

Eran

_______________________________________________
ffmpeg-devel mailing list
ffmpeg-devel@ffmpeg.org
https://ffmpeg.org/mailman/listinfo/ffmpeg-devel

To unsubscribe, visit link above, or email
ffmpeg-devel-request@ffmpeg.org with subject "unsubscribe".

^ permalink raw reply	[flat|nested] 9+ messages in thread

* Re: [FFmpeg-devel] [PATCH] libx265: support ATSC A/53 captions
  2022-10-25  4:23 ` Eran Kornblau
@ 2022-11-01  7:42   ` Eran Kornblau
  2022-11-08  6:49     ` Eran Kornblau
  0 siblings, 1 reply; 9+ messages in thread
From: Eran Kornblau @ 2022-11-01  7:42 UTC (permalink / raw)
  To: FFmpeg development discussions and patches

Another ping…

From: Eran Kornblau
Sent: Monday, 17 October 2022 19:29
To: FFmpeg development discussions and patches <ffmpeg-devel@ffmpeg.org<mailto:ffmpeg-devel@ffmpeg.org>>
Subject: [PATCH] libx265: support ATSC A/53 captions

Hi,

The attached patch adds rendering of ATSC A/53 captions as HEVC SEI messages.
The option name/implementation is aligned with the corresponding libx264 feature.

Thanks

Eran

_______________________________________________
ffmpeg-devel mailing list
ffmpeg-devel@ffmpeg.org
https://ffmpeg.org/mailman/listinfo/ffmpeg-devel

To unsubscribe, visit link above, or email
ffmpeg-devel-request@ffmpeg.org with subject "unsubscribe".

^ permalink raw reply	[flat|nested] 9+ messages in thread

* Re: [FFmpeg-devel] [PATCH] libx265: support ATSC A/53 captions
  2022-11-01  7:42   ` Eran Kornblau
@ 2022-11-08  6:49     ` Eran Kornblau
  2022-11-08 11:33       ` Timo Rothenpieler
  0 siblings, 1 reply; 9+ messages in thread
From: Eran Kornblau @ 2022-11-08  6:49 UTC (permalink / raw)
  To: FFmpeg development discussions and patches

[-- Attachment #1: Type: text/plain, Size: 428 bytes --]

Trying again…

From: Eran Kornblau
Sent: Monday, 17 October 2022 19:29
To: FFmpeg development discussions and patches <ffmpeg-devel@ffmpeg.org<mailto:ffmpeg-devel@ffmpeg.org>>
Subject: [PATCH] libx265: support ATSC A/53 captions

Hi,

The attached patch adds rendering of ATSC A/53 captions as HEVC SEI messages.
The option name/implementation is aligned with the corresponding libx264 feature.

Thanks

Eran


[-- Attachment #2: 0001-libx265-support-ATSC-A-53-captions.patch --]
[-- Type: application/octet-stream, Size: 3893 bytes --]

[-- Attachment #3: Type: text/plain, Size: 251 bytes --]

_______________________________________________
ffmpeg-devel mailing list
ffmpeg-devel@ffmpeg.org
https://ffmpeg.org/mailman/listinfo/ffmpeg-devel

To unsubscribe, visit link above, or email
ffmpeg-devel-request@ffmpeg.org with subject "unsubscribe".

^ permalink raw reply	[flat|nested] 9+ messages in thread

* Re: [FFmpeg-devel] [PATCH] libx265: support ATSC A/53 captions
  2022-11-08  6:49     ` Eran Kornblau
@ 2022-11-08 11:33       ` Timo Rothenpieler
  2022-11-08 14:25         ` Eran Kornblau
  0 siblings, 1 reply; 9+ messages in thread
From: Timo Rothenpieler @ 2022-11-08 11:33 UTC (permalink / raw)
  To: ffmpeg-devel

On 08.11.2022 07:49, Eran Kornblau wrote:
> Trying again…
> 
> From: Eran Kornblau
> Sent: Monday, 17 October 2022 19:29
> To: FFmpeg development discussions and patches <ffmpeg-devel@ffmpeg.org<mailto:ffmpeg-devel@ffmpeg.org>>
> Subject: [PATCH] libx265: support ATSC A/53 captions
> 
> Hi,
> 
> The attached patch adds rendering of ATSC A/53 captions as HEVC SEI messages.
> The option name/implementation is aligned with the corresponding libx264 feature.

What frees the sei data on success?
_______________________________________________
ffmpeg-devel mailing list
ffmpeg-devel@ffmpeg.org
https://ffmpeg.org/mailman/listinfo/ffmpeg-devel

To unsubscribe, visit link above, or email
ffmpeg-devel-request@ffmpeg.org with subject "unsubscribe".

^ permalink raw reply	[flat|nested] 9+ messages in thread

* Re: [FFmpeg-devel] [PATCH] libx265: support ATSC A/53 captions
  2022-11-08 11:33       ` Timo Rothenpieler
@ 2022-11-08 14:25         ` Eran Kornblau
  2022-11-08 14:48           ` Timo Rothenpieler
  0 siblings, 1 reply; 9+ messages in thread
From: Eran Kornblau @ 2022-11-08 14:25 UTC (permalink / raw)
  To: FFmpeg development discussions and patches

[-- Attachment #1: Type: text/plain, Size: 1246 bytes --]

> 
> -----Original Message-----
> From: ffmpeg-devel <ffmpeg-devel-bounces@ffmpeg.org> On Behalf Of Timo Rothenpieler
> Sent: Tuesday, 8 November 2022 13:33
> To: ffmpeg-devel@ffmpeg.org
> Subject: Re: [FFmpeg-devel] [PATCH] libx265: support ATSC A/53 captions
> 
> >
> > The attached patch adds rendering of ATSC A/53 captions as HEVC SEI messages.
> > The option name/implementation is aligned with the corresponding libx264 feature.
> 
> What frees the sei data on success?
> 
Thanks Timo, good point! 

I missed the fact that libx264 gets a callback for freeing the SEI payloads (sei_free).
It seems libx265 does not have this option, so I added some 'for' loop to free the payloads after the call to encoder_encode.

In addition:
1. I added av_memdup on the 'user-data-unregistered' side data so that it won't be freed twice.
2. I added a 'free_picture' function for freeing the x265_picture in case of error.
(both changes are aligned with the implementation in libx264.c)

Updated patch attached.

While checking the point you raised, I ran some libx265 transcode with valgrind, and it reported errors unrelated to this patch.
Attaching the full output, in case anyone wants to have a look.

Thanks!

Eran


[-- Attachment #2: 0001-libx265-support-ATSC-A-53-captions.patch --]
[-- Type: application/octet-stream, Size: 6855 bytes --]

[-- Attachment #3: libx265-valgrind.txt --]
[-- Type: text/plain, Size: 50756 bytes --]

$ valgrind -v --tool=memcheck --leak-check=yes --num-callers=128 ffmpeg -i /opt/kaltura/live/s32-merged.mp4 -t 0.5  -c:v libx265 -force_key_frames 'expr:gte(t,n_forced*2)' -x265-params min-keyint=1:keyint=60:vbv-maxrate=8400:vbv-bufsize=24000:pools=4:aq-mode=3:bframes=4:ref=2:limit-refs=3:rc-lookahead=15:subme=2:open-gop=0 -crf 26 -preset fast -c:a aac -b:a 128k -y /tmp/jap-h265.ts
==12400== Memcheck, a memory error detector
==12400== Copyright (C) 2002-2013, and GNU GPL'd, by Julian Seward et al.
==12400== Using Valgrind-3.10.1 and LibVEX; rerun with -h for copyright info
==12400== Command: ffmpeg -i /opt/kaltura/live/s32-merged.mp4 -t 0.5 -c:v libx265 -force_key_frames expr:gte(t,n_forced*2) -x265-params min-keyint=1:keyint=60:vbv-maxrate=8400:vbv-bufsize=24000:pools=4:aq-mode=3:bframes=4:ref=2:limit-refs=3:rc-lookahead=15:subme=2:open-gop=0 -crf 26 -preset fast -c:a aac -b:a 128k -y /tmp/jap-h265.ts
==12400==
--12400-- Valgrind options:
--12400--    -v
--12400--    --tool=memcheck
--12400--    --leak-check=yes
--12400--    --num-callers=128
--12400-- Contents of /proc/version:
--12400--   Linux version 3.13.0-49-generic (buildd@akateko) (gcc version 4.8.2 (Ubuntu 4.8.2-19ubuntu1) ) #83-Ubuntu SMP Fri Apr 10 20:11:33 UTC 2015
--12400-- Arch and hwcaps: AMD64, LittleEndian, amd64-cx16-lzcnt-rdtscp-sse3-avx-avx2-bmi
--12400-- Page sizes: currently 4096, max supported 4096
--12400-- Valgrind library directory: /usr/lib/valgrind
--12400-- Reading syms from /usr/local/bin/ffmpeg
--12400-- Reading syms from /lib/x86_64-linux-gnu/ld-2.19.so
--12400--   Considering /lib/x86_64-linux-gnu/ld-2.19.so ..
--12400--   .. CRC mismatch (computed aedc220e wanted 13895c11)
--12400--   Considering /usr/lib/debug/lib/x86_64-linux-gnu/ld-2.19.so ..
--12400--   .. CRC is valid
--12400-- Reading syms from /usr/lib/valgrind/memcheck-amd64-linux
--12400--   Considering /usr/lib/valgrind/memcheck-amd64-linux ..
--12400--   .. CRC mismatch (computed fed8e6c5 wanted e6be554a)
--12400--    object doesn't have a symbol table
--12400--    object doesn't have a dynamic symbol table
--12400-- Scheduler: using generic scheduler lock implementation.
--12400-- Reading suppressions file: /usr/lib/valgrind/default.supp
==12400== embedded gdbserver: reading from /tmp/vgdb-pipe-from-vgdb-to-12400-by-root-on-???
==12400== embedded gdbserver: writing to   /tmp/vgdb-pipe-to-vgdb-from-12400-by-root-on-???
==12400== embedded gdbserver: shared mem   /tmp/vgdb-pipe-shared-mem-vgdb-12400-by-root-on-???
==12400==
==12400== TO CONTROL THIS PROCESS USING vgdb (which you probably
==12400== don't want to do, unless you know exactly what you're doing,
==12400== or are doing some strange experiment):
==12400==   /usr/lib/valgrind/../../bin/vgdb --pid=12400 ...command...
==12400==
==12400== TO DEBUG THIS PROCESS USING GDB: start GDB like this
==12400==   /path/to/gdb ffmpeg
==12400== and then give GDB the following command
==12400==   target remote | /usr/lib/valgrind/../../bin/vgdb --pid=12400
==12400== --pid is optional if only one valgrind process is running
==12400==
--12400-- REDIR: 0x4019d70 (ld-linux-x86-64.so.2:strlen) redirected to 0x380764b1 (???)
--12400-- Reading syms from /usr/lib/valgrind/vgpreload_core-amd64-linux.so
--12400--   Considering /usr/lib/valgrind/vgpreload_core-amd64-linux.so ..
--12400--   .. CRC mismatch (computed 4bcdfe99 wanted 3143e841)
--12400--    object doesn't have a symbol table
--12400-- Reading syms from /usr/lib/valgrind/vgpreload_memcheck-amd64-linux.so
--12400--   Considering /usr/lib/valgrind/vgpreload_memcheck-amd64-linux.so ..
--12400--   .. CRC mismatch (computed 3df18bf1 wanted 14fefe1c)
--12400--    object doesn't have a symbol table
==12400== WARNING: new redirection conflicts with existing -- ignoring it
--12400--     old: 0x04019d70 (strlen              ) R-> (0000.0) 0x380764b1 ???
--12400--     new: 0x04019d70 (strlen              ) R-> (2007.0) 0x04c2e1a0 strlen
--12400-- REDIR: 0x4019b20 (ld-linux-x86-64.so.2:index) redirected to 0x4c2dd50 (index)
--12400-- REDIR: 0x4019d40 (ld-linux-x86-64.so.2:strcmp) redirected to 0x4c2f2f0 (strcmp)
--12400-- REDIR: 0x401aa90 (ld-linux-x86-64.so.2:mempcpy) redirected to 0x4c31da0 (mempcpy)
--12400-- Reading syms from /usr/local/lib/libavdevice.so.59.8.101
--12400-- Reading syms from /usr/local/lib/libavfilter.so.8.50.100
--12400-- Reading syms from /usr/local/lib/libavformat.so.59.34.101
--12400-- Reading syms from /usr/local/lib/libavcodec.so.59.52.100
--12400-- Reading syms from /usr/local/lib/libpostproc.so.56.7.100
--12400-- Reading syms from /usr/local/lib/libswresample.so.4.9.100
--12400-- Reading syms from /usr/local/lib/libswscale.so.6.8.112
--12400-- Reading syms from /usr/local/lib/libavutil.so.57.42.100
--12400-- Reading syms from /lib/x86_64-linux-gnu/libm-2.19.so
--12400--   Considering /lib/x86_64-linux-gnu/libm-2.19.so ..
--12400--   .. CRC mismatch (computed b3364301 wanted dda218b7)
--12400--   Considering /usr/lib/debug/lib/x86_64-linux-gnu/libm-2.19.so ..
--12400--   .. CRC is valid
--12400-- Reading syms from /lib/x86_64-linux-gnu/libpthread-2.19.so
--12400--   Considering /lib/x86_64-linux-gnu/libpthread-2.19.so ..
--12400--   .. CRC mismatch (computed e1887d3f wanted 5a97fdba)
--12400--   Considering /usr/lib/debug/lib/x86_64-linux-gnu/libpthread-2.19.so ..
--12400--   .. CRC is valid
--12400-- Reading syms from /lib/x86_64-linux-gnu/libc-2.19.so
--12400--   Considering /lib/x86_64-linux-gnu/libc-2.19.so ..
--12400--   .. CRC mismatch (computed 8932cdd8 wanted 3aceb420)
--12400--   Considering /usr/lib/debug/lib/x86_64-linux-gnu/libc-2.19.so ..
--12400--   .. CRC is valid
--12400-- Reading syms from /usr/lib/x86_64-linux-gnu/libva.so.1.3500.0
--12400--    object doesn't have a symbol table
--12400-- Reading syms from /lib/x86_64-linux-gnu/libbz2.so.1.0.4
--12400--    object doesn't have a symbol table
--12400-- Reading syms from /lib/x86_64-linux-gnu/libz.so.1.2.8
--12400--    object doesn't have a symbol table
--12400-- Reading syms from /lib/x86_64-linux-gnu/libssl.so.1.0.0
--12400--    object doesn't have a symbol table
--12400-- Reading syms from /lib/x86_64-linux-gnu/libcrypto.so.1.0.0
--12400--    object doesn't have a symbol table
--12400-- Reading syms from /usr/local/lib/x86_64-linux-gnu/libsrt.so.1.4.4
--12400-- Reading syms from /lib/x86_64-linux-gnu/liblzma.so.5.0.0
--12400--    object doesn't have a symbol table
--12400-- Reading syms from /usr/lib/x86_64-linux-gnu/libopencore-amrwb.so.0.0.3
--12400--    object doesn't have a symbol table
--12400-- Reading syms from /usr/lib/x86_64-linux-gnu/libgsm.so.1.0.12
--12400--    object doesn't have a symbol table
--12400-- Reading syms from /usr/lib/x86_64-linux-gnu/libmp3lame.so.0.0.0
--12400--    object doesn't have a symbol table
--12400-- Reading syms from /usr/lib/x86_64-linux-gnu/libopencore-amrnb.so.0.0.3
--12400--    object doesn't have a symbol table
--12400-- Reading syms from /usr/lib/x86_64-linux-gnu/libspeex.so.1.5.0
--12400--   Considering /usr/lib/x86_64-linux-gnu/libspeex.so.1.5.0 ..
--12400--   .. CRC mismatch (computed 5b15e160 wanted 6451f265)
--12400--    object doesn't have a symbol table
--12400-- Reading syms from /usr/lib/x86_64-linux-gnu/libtheoraenc.so.1.1.2
--12400--    object doesn't have a symbol table
--12400-- Reading syms from /usr/lib/x86_64-linux-gnu/libtheoradec.so.1.1.4
--12400--    object doesn't have a symbol table
--12400-- Reading syms from /usr/lib/x86_64-linux-gnu/libvorbis.so.0.4.5
--12400--    object doesn't have a symbol table
--12400-- Reading syms from /usr/lib/x86_64-linux-gnu/libvorbisenc.so.2.0.8
--12400--    object doesn't have a symbol table
--12400-- Reading syms from /usr/local/lib/libx264.so.148
--12400-- Reading syms from /usr/local/lib/libx265.so.198
--12400-- Reading syms from /usr/lib/x86_64-linux-gnu/libxvidcore.so.4.3
--12400--    object doesn't have a symbol table
--12400-- Reading syms from /usr/lib/x86_64-linux-gnu/libva-drm.so.1.3500.0
--12400--    object doesn't have a symbol table
--12400-- Reading syms from /usr/lib/x86_64-linux-gnu/libva-x11.so.1.3500.0
--12400--    object doesn't have a symbol table
--12400-- Reading syms from /usr/lib/x86_64-linux-gnu/libvdpau.so.1.0.0
--12400--    object doesn't have a symbol table
--12400-- Reading syms from /usr/lib/x86_64-linux-gnu/libX11.so.6.3.0
--12400--   Considering /usr/lib/x86_64-linux-gnu/libX11.so.6.3.0 ..
--12400--   .. CRC mismatch (computed c168660b wanted 161bd255)
--12400--    object doesn't have a symbol table
--12400-- Reading syms from /lib/x86_64-linux-gnu/libdl-2.19.so
--12400--   Considering /lib/x86_64-linux-gnu/libdl-2.19.so ..
--12400--   .. CRC mismatch (computed 0c96b094 wanted 65e011d2)
--12400--   Considering /usr/lib/debug/lib/x86_64-linux-gnu/libdl-2.19.so ..
--12400--   .. CRC is valid
--12400-- Reading syms from /usr/lib/x86_64-linux-gnu/libstdc++.so.6.0.19
--12400--   Considering /usr/lib/x86_64-linux-gnu/libstdc++.so.6.0.19 ..
--12400--   .. CRC mismatch (computed 960beb8b wanted 2be7b465)
--12400--    object doesn't have a symbol table
--12400-- Reading syms from /lib/x86_64-linux-gnu/libgcc_s.so.1
--12400--   Considering /lib/x86_64-linux-gnu/libgcc_s.so.1 ..
--12400--   .. CRC mismatch (computed 6116126e wanted 54e3f1f2)
--12400--    object doesn't have a symbol table
--12400-- Reading syms from /usr/lib/x86_64-linux-gnu/libogg.so.0.8.1
--12400--   Considering /usr/lib/x86_64-linux-gnu/libogg.so.0.8.1 ..
--12400--   .. CRC mismatch (computed a72e821d wanted 16075ea5)
--12400--    object doesn't have a symbol table
--12400-- Reading syms from /usr/lib/x86_64-linux-gnu/libdrm.so.2.4.0
--12400--    object doesn't have a symbol table
--12400-- Reading syms from /usr/lib/x86_64-linux-gnu/libXext.so.6.4.0
--12400--   Considering /usr/lib/x86_64-linux-gnu/libXext.so.6.4.0 ..
--12400--   .. CRC mismatch (computed 52bd6459 wanted a8305e86)
--12400--    object doesn't have a symbol table
--12400-- Reading syms from /usr/lib/x86_64-linux-gnu/libXfixes.so.3.1.0
--12400--    object doesn't have a symbol table
--12400-- Reading syms from /usr/lib/x86_64-linux-gnu/libxcb.so.1.1.0
--12400--    object doesn't have a symbol table
--12400-- Reading syms from /usr/lib/x86_64-linux-gnu/libXau.so.6.0.0
--12400--   Considering /usr/lib/x86_64-linux-gnu/libXau.so.6.0.0 ..
--12400--   .. CRC mismatch (computed 256f5df8 wanted 5d40ac88)
--12400--    object doesn't have a symbol table
--12400-- Reading syms from /usr/lib/x86_64-linux-gnu/libXdmcp.so.6.0.0
--12400--   Considering /usr/lib/x86_64-linux-gnu/libXdmcp.so.6.0.0 ..
--12400--   .. CRC mismatch (computed 15fc4130 wanted a06cb5c7)
--12400--    object doesn't have a symbol table
--12400-- REDIR: 0x8635070 (libc.so.6:strcasecmp) redirected to 0x4a25720 (_vgnU_ifunc_wrapper)
--12400-- REDIR: 0x8637360 (libc.so.6:strncasecmp) redirected to 0x4a25720 (_vgnU_ifunc_wrapper)
--12400-- REDIR: 0x8634840 (libc.so.6:memcpy@GLIBC_2.2.5) redirected to 0x4a25720 (_vgnU_ifunc_wrapper)
--12400-- REDIR: 0x8634270 (libc.so.6:bcmp) redirected to 0x4a25720 (_vgnU_ifunc_wrapper)
--12400-- REDIR: 0x8639a40 (libc.so.6:memcpy@@GLIBC_2.14) redirected to 0x4a25720 (_vgnU_ifunc_wrapper)
--12400-- REDIR: 0x862f380 (libc.so.6:strcmp) redirected to 0x4a25720 (_vgnU_ifunc_wrapper)
--12400-- REDIR: 0x8632ad0 (libc.so.6:rindex) redirected to 0x4c2da30 (rindex)
--12400-- REDIR: 0x8630dd0 (libc.so.6:strlen) redirected to 0x4c2e0e0 (strlen)
--12400-- REDIR: 0x86342b0 (libc.so.6:__GI_memcmp) redirected to 0x4c30b80 (__GI_memcmp)
--12400-- REDIR: 0x86eba80 (libc.so.6:__strcmp_ssse3) redirected to 0x4c2f1b0 (strcmp)
--12400-- REDIR: 0xc7fad90 (libstdc++.so.6:operator new(unsigned long)) redirected to 0x4c2b070 (operator new(unsigned long))
--12400-- REDIR: 0x86b48f0 (libc.so.6:__strcpy_chk) redirected to 0x4c31a30 (__strcpy_chk)
--12400-- REDIR: 0x862b550 (libc.so.6:calloc) redirected to 0x4c2cbf0 (calloc)
--12400-- REDIR: 0x863bbc0 (libc.so.6:rawmemchr) redirected to 0x4c319f0 (rawmemchr)
--12400-- REDIR: 0x862aa80 (libc.so.6:malloc) redirected to 0x4c2ab10 (malloc)
--12400-- REDIR: 0x862b220 (libc.so.6:realloc) redirected to 0x4c2ce10 (realloc)
--12400-- REDIR: 0x862b120 (libc.so.6:free) redirected to 0x4c2bd80 (free)
--12400-- REDIR: 0x8639a90 (libc.so.6:__GI_memcpy) redirected to 0x4c2fc90 (__GI_memcpy)
--12400-- REDIR: 0x8631240 (libc.so.6:__GI_strncmp) redirected to 0x4c2e930 (__GI_strncmp)
--12400-- REDIR: 0x8634f00 (libc.so.6:__GI_stpcpy) redirected to 0x4c30da0 (__GI_stpcpy)
--12400-- REDIR: 0x8632a90 (libc.so.6:strncpy) redirected to 0x4a25720 (_vgnU_ifunc_wrapper)
--12400-- REDIR: 0x8647c20 (libc.so.6:__strncpy_sse2_unaligned) redirected to 0x4c2e770 (__strncpy_sse2_unaligned)
--12400-- REDIR: 0x862cbb0 (libc.so.6:posix_memalign) redirected to 0x4c2d1f0 (posix_memalign)
--12400-- REDIR: 0x863bdd0 (libc.so.6:strchrnul) redirected to 0x4c319b0 (strchrnul)
--12400-- REDIR: 0x8630810 (libc.so.6:strcpy) redirected to 0x4a25720 (_vgnU_ifunc_wrapper)
--12400-- REDIR: 0x86475f0 (libc.so.6:__strcpy_sse2_unaligned) redirected to 0x4c2e1c0 (strcpy)
--12400-- REDIR: 0x8633ce0 (libc.so.6:strstr) redirected to 0x4a25720 (_vgnU_ifunc_wrapper)
--12400-- REDIR: 0x864bc90 (libc.so.6:__strstr_sse2_unaligned) redirected to 0x4c31fa0 (strstr)
ffmpeg version N-109029-g1800a0d Copyright (c) 2000-2022 the FFmpeg developers
  built with gcc 4.8 (Ubuntu 4.8.4-2ubuntu1~14.04.4)
  configuration: --disable-devices --enable-bzlib --enable-libgsm --enable-libmp3lame --enable-libtheora --enable-libvorbis --enable-libx264 --enable-libx265 --enable-libxvid --enable-filter=movie --enable-avfilter --enable-libopencore-amrnb --enable-libopencore-amrwb --enable-libspeex --enable-postproc --enable-pthreads --enable-static --enable-shared --enable-gpl --disable-debug --disable-optimizations --enable-gpl --enable-pthreads --enable-swscale --enable-vdpau --enable-bzlib --disable-devices --enable-filter=movie --enable-version3 --enable-shared --enable-indev=lavfi --disable-static --disable-optimizations --disable-mmx --disable-stripping --extra-cflags=-g --enable-openssl --enable-nonfree --enable-libsrt
  libavutil      57. 42.100 / 57. 42.100
  libavcodec     59. 52.100 / 59. 52.100
  libavformat    59. 34.101 / 59. 34.101
  libavdevice    59.  8.101 / 59.  8.101
  libavfilter     8. 50.100 /  8. 50.100
  libswscale      6.  8.112 /  6.  8.112
  libswresample   4.  9.100 /  4.  9.100
  libpostproc    56.  7.100 / 56.  7.100
--12400-- REDIR: 0x86348d0 (libc.so.6:memset) redirected to 0x4c31350 (memset)
--12400-- REDIR: 0x862f130 (libc.so.6:index) redirected to 0x4a25720 (_vgnU_ifunc_wrapper)
--12400-- REDIR: 0x862f160 (libc.so.6:__GI_strchr) redirected to 0x4c2db90 (__GI_strchr)
--12400-- REDIR: 0x8642a30 (libc.so.6:__memcpy_sse2_unaligned) redirected to 0x4c2f6b0 (memcpy@@GLIBC_2.14)
--12400-- REDIR: 0x86311f0 (libc.so.6:strncmp) redirected to 0x4a25720 (_vgnU_ifunc_wrapper)
--12400-- REDIR: 0x86ecce0 (libc.so.6:__strncmp_ssse3) redirected to 0x4c2e8c0 (strncmp)
--12400-- REDIR: 0x8633150 (libc.so.6:strspn) redirected to 0x4a25720 (_vgnU_ifunc_wrapper)
--12400-- REDIR: 0x86e8940 (libc.so.6:__strspn_sse42) redirected to 0x4c32220 (strspn)
--12400-- REDIR: 0x870b8e0 (libc.so.6:__memcmp_sse4_1) redirected to 0x4c30c00 (__memcmp_sse4_1)
--12400-- REDIR: 0x8630930 (libc.so.6:strcspn) redirected to 0x4a25720 (_vgnU_ifunc_wrapper)
--12400-- REDIR: 0x86e86e0 (libc.so.6:__strcspn_sse42) redirected to 0x4c321b0 (strcspn)
--12400-- memcheck GC: 1000 nodes, 0 survivors (  0.0%)
--12400-- memcheck GC: 1000 nodes, 0 survivors (  0.0%)
--12400-- memcheck GC: 1000 nodes, 0 survivors (  0.0%)
--12400-- memcheck GC: 1000 nodes, 0 survivors (  0.0%)
--12400-- memcheck GC: 1000 nodes, 0 survivors (  0.0%)
--12400-- memcheck GC: 1000 nodes, 0 survivors (  0.0%)
--12400-- memcheck GC: 1000 nodes, 0 survivors (  0.0%)
--12400-- memcheck GC: 1000 nodes, 0 survivors (  0.0%)
--12400-- memcheck GC: 1000 nodes, 0 survivors (  0.0%)
--12400-- memcheck GC: 1000 nodes, 0 survivors (  0.0%)
--12400-- memcheck GC: 1000 nodes, 0 survivors (  0.0%)
--12400-- memcheck GC: 1000 nodes, 0 survivors (  0.0%)
Input #0, mov,mp4,m4a,3gp,3g2,mj2, from '/opt/kaltura/live/s32-merged.mp4':
  Metadata:
    major_brand     : --12400-- REDIR: 0x8630f90 (libc.so.6:strnlen) redirected to 0x4c2e080 (strnlen)
isom
    minor_version   : 512
    compatible_brands: isomiso2avc1mp41
    encoder         : Lavf59.17.102
  Duration: 00:01:24.09, start: 0.000000, bitrate: 3671 kb/s
  Stream #0:0[0x1](und): Video: h264 (High) (avc1 / 0x31637661), yuv420p(tv, bt709, progressive), 1920x1080 [SAR 1:1 DAR 16:9], Closed Captions, 3536 kb/s, 29.97 fps, 29.97 tbr, 90k 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, 125 kb/s (default)
    Metadata:
      handler_name    : SoundHandler
      vendor_id       : [0][0][0][0]
Stream mapping:
  Stream #0:0 -> #0:0 (h264 (native) -> hevc (libx265))
  Stream #0:1 -> #0:1 (aac (native) -> aac (native))
Press [q] to stop, [?] for help
--12400-- REDIR: 0x86fb910 (libc.so.6:__memmove_ssse3_back) redirected to 0x4c2f450 (memcpy@GLIBC_2.2.5)
--12400-- REDIR: 0x86373d0 (libc.so.6:__GI___strncasecmp_l) redirected to 0x4c2f0b0 (__GI___strncasecmp_l)
x265 [info]: HEVC encoder version unknown
x265 [info]: build info [Linux][GCC 4.8.4][64 bit][noasm] 8bit
x265 [info]: using cpu capabilities: none!
x265 [info]: Main profile, Level-4 (High tier)
--12400-- REDIR: 0xffffffffff600400 (???:???) redirected to 0x3807649d (???)
--12400-- REDIR: 0x8633f20 (libc.so.6:memchr) redirected to 0x4c2f390 (memchr)
--12400-- REDIR: 0x86346b0 (libc.so.6:__GI_memmove) redirected to 0x4c31660 (__GI_memmove)
--12400-- REDIR: 0x86e8a60 (libc.so.6:__strcasecmp_avx) redirected to 0x4c2ea80 (strcasecmp)
--12400-- REDIR: 0xc7faea0 (libstdc++.so.6:operator new[](unsigned long)) redirected to 0x4c2b790 (operator new[](unsigned long))
x265 [info]: Thread pool created using 4 threads
x265 [info]: Slices                              : 1
x265 [info]: frame threads / pool features       : 2 / wpp(17 rows)
--12400-- REDIR: 0xffffffffff600000 (???:???) redirected to 0x38076493 (???)
x265 [info]: Coding QT: max CU size, min CU size : 64 / 8
x265 [info]: Residual QT: max TU size, max depth : 32 / 1 inter / 1 intra
x265 [info]: ME / range / subpel / merge         : hex / 57 / 2 / 2
x265 [info]: Keyframe min / max / scenecut / bias  : 1 / 60 / 40 / 5.00
x265 [info]: Lookahead / bframes / badapt        : 15 / 4 / 0
x265 [info]: b-pyramid / weightp / weightb       : 1 / 1 / 0
x265 [info]: References / ref-limit  cu / depth  : 2 / on / on
x265 [info]: AQ: mode / str / qg-size / cu-tree  : 3 / 1.0 / 32 / 1
x265 [info]: Rate Control / qCompress            : CRF-26.0 / 0.60
x265 [info]: VBV/HRD buffer / max-rate / init    : 24000 / 8400 / 0.900
--12400-- REDIR: 0x86b4650 (libc.so.6:__memcpy_chk) redirected to 0x4a25720 (_vgnU_ifunc_wrapper)
--12400-- REDIR: 0x86f6360 (libc.so.6:__memcpy_chk_ssse3_back) redirected to 0x4c31e90 (__memcpy_chk)
x265 [info]: tools: rd=2 psy-rd=2.00 rskip mode=1 signhide tmvp fast-intra
x265 [info]: tools: strong-intra-smoothing lslices=6 deblock sao
Output #0, mpegts, to '/tmp/jap-h265.ts':
  Metadata:
    major_brand     : isom
    minor_version   : 512
    compatible_brands: isomiso2avc1mp41
    encoder         : Lavf59.34.101
  Stream #0:0(und): Video: hevc, yuv420p(tv, bt709, progressive), 1920x1080 [SAR 1:1 DAR 16:9], q=2-31, 29.97 fps, 90k tbn (default)
    Metadata:
      handler_name    : VideoHandler
      vendor_id       : [0][0][0][0]
      encoder         : Lavc59.52.100 libx265
    Side data:
      cpb: bitrate max/min/avg: 0/0/0 buffer size: 0 vbv_delay: N/A
  Stream #0:1(und): Audio: aac (LC), 48000 Hz, stereo, fltp, 128 kb/s (default)
    Metadata:
      handler_name    : SoundHandler
      vendor_id       : [0][0][0][0]
      encoder         : Lavc59.52.100 aac
==12400== Thread 18:q=0.0 size=       0kB time=00:00:00.44 bitrate=   0.0kbits/s speed=0.0258x
==12400== Conditional jump or move depends on uninitialised value(s)
==12400==    at 0xB5AF72B: x265::Analysis::compressInterCU_rd0_4(x265::CUData const&, x265::CUGeom const&, int) (in /usr/local/lib/libx265.so.198)
==12400==    by 0xB5AE072: x265::Analysis::compressInterCU_rd0_4(x265::CUData const&, x265::CUGeom const&, int) (in /usr/local/lib/libx265.so.198)
==12400==    by 0xB5B555E: x265::Analysis::compressCTU(x265::CUData&, x265::Frame&, x265::CUGeom const&, x265::Entropy const&) (in /usr/local/lib/libx265.so.198)
==12400==    by 0xB5DFF38: x265::FrameEncoder::processRowEncoder(int, x265::ThreadLocalData&) (in /usr/local/lib/libx265.so.198)
==12400==    by 0xB5DD41D: x265::FrameEncoder::processRow(int, int) (in /usr/local/lib/libx265.so.198)
==12400==    by 0xB6B4FE1: x265::WaveFront::findJob(int) (in /usr/local/lib/libx265.so.198)
==12400==    by 0xB6B4449: x265::WorkerThread::threadMain() (in /usr/local/lib/libx265.so.198)
==12400==    by 0xB6B3D19: x265::ThreadShim(void*) (in /usr/local/lib/libx265.so.198)
==12400==    by 0x8392183: start_thread (pthread_create.c:312)
==12400==    by 0x86A603C: clone (clone.S:111)
==12400==
==12400== Conditional jump or move depends on uninitialised value(s)
==12400==    at 0xB5AF72B: x265::Analysis::compressInterCU_rd0_4(x265::CUData const&, x265::CUGeom const&, int) (in /usr/local/lib/libx265.so.198)
==12400==    by 0xB5B555E: x265::Analysis::compressCTU(x265::CUData&, x265::Frame&, x265::CUGeom const&, x265::Entropy const&) (in /usr/local/lib/libx265.so.198)
==12400==    by 0xB5DFF38: x265::FrameEncoder::processRowEncoder(int, x265::ThreadLocalData&) (in /usr/local/lib/libx265.so.198)
==12400==    by 0xB5DD41D: x265::FrameEncoder::processRow(int, int) (in /usr/local/lib/libx265.so.198)
==12400==    by 0xB6B4FE1: x265::WaveFront::findJob(int) (in /usr/local/lib/libx265.so.198)
==12400==    by 0xB6B4449: x265::WorkerThread::threadMain() (in /usr/local/lib/libx265.so.198)
==12400==    by 0xB6B3D19: x265::ThreadShim(void*) (in /usr/local/lib/libx265.so.198)
==12400==    by 0x8392183: start_thread (pthread_create.c:312)
==12400==    by 0x86A603C: clone (clone.S:111)
==12400==
==12400== Thread 17:
==12400== Conditional jump or move depends on uninitialised value(s)
==12400==    at 0xB5AF72B: x265::Analysis::compressInterCU_rd0_4(x265::CUData const&, x265::CUGeom const&, int) (in /usr/local/lib/libx265.so.198)
==12400==    by 0xB5AE072: x265::Analysis::compressInterCU_rd0_4(x265::CUData const&, x265::CUGeom const&, int) (in /usr/local/lib/libx265.so.198)
==12400==    by 0xB5AE072: x265::Analysis::compressInterCU_rd0_4(x265::CUData const&, x265::CUGeom const&, int) (in /usr/local/lib/libx265.so.198)
==12400==    by 0xB5B555E: x265::Analysis::compressCTU(x265::CUData&, x265::Frame&, x265::CUGeom const&, x265::Entropy const&) (in /usr/local/lib/libx265.so.198)
==12400==    by 0xB5DFF38: x265::FrameEncoder::processRowEncoder(int, x265::ThreadLocalData&) (in /usr/local/lib/libx265.so.198)
==12400==    by 0xB5DD41D: x265::FrameEncoder::processRow(int, int) (in /usr/local/lib/libx265.so.198)
==12400==    by 0xB6B4FE1: x265::WaveFront::findJob(int) (in /usr/local/lib/libx265.so.198)
==12400==    by 0xB6B4449: x265::WorkerThread::threadMain() (in /usr/local/lib/libx265.so.198)
==12400==    by 0xB6B3D19: x265::ThreadShim(void*) (in /usr/local/lib/libx265.so.198)
==12400==    by 0x8392183: start_thread (pthread_create.c:312)
==12400==    by 0x86A603C: clone (clone.S:111)
==12400==
==12400== Conditional jump or move depends on uninitialised value(s)
==12400==    at 0xB5AF72B: x265::Analysis::compressInterCU_rd0_4(x265::CUData const&, x265::CUGeom const&, int) (in /usr/local/lib/libx265.so.198)
==12400==    by 0xB5AE072: x265::Analysis::compressInterCU_rd0_4(x265::CUData const&, x265::CUGeom const&, int) (in /usr/local/lib/libx265.so.198)
==12400==    by 0xB5AE072: x265::Analysis::compressInterCU_rd0_4(x265::CUData const&, x265::CUGeom const&, int) (in /usr/local/lib/libx265.so.198)
==12400==    by 0xB5AE072: x265::Analysis::compressInterCU_rd0_4(x265::CUData const&, x265::CUGeom const&, int) (in /usr/local/lib/libx265.so.198)
==12400==    by 0xB5B555E: x265::Analysis::compressCTU(x265::CUData&, x265::Frame&, x265::CUGeom const&, x265::Entropy const&) (in /usr/local/lib/libx265.so.198)
==12400==    by 0xB5DFF38: x265::FrameEncoder::processRowEncoder(int, x265::ThreadLocalData&) (in /usr/local/lib/libx265.so.198)
==12400==    by 0xB5DD41D: x265::FrameEncoder::processRow(int, int) (in /usr/local/lib/libx265.so.198)
==12400==    by 0xB6B4FE1: x265::WaveFront::findJob(int) (in /usr/local/lib/libx265.so.198)
==12400==    by 0xB6B4449: x265::WorkerThread::threadMain() (in /usr/local/lib/libx265.so.198)
==12400==    by 0xB6B3D19: x265::ThreadShim(void*) (in /usr/local/lib/libx265.so.198)
==12400==    by 0x8392183: start_thread (pthread_create.c:312)
==12400==    by 0x86A603C: clone (clone.S:111)
==12400==
==12400==    at 0x7CD0797: VALGRIND_PRINTF_BACKTRACE (valgrind.h:6280)
==12400==    by 0x7CD1354: av_log_default_callback (log.c:399)
==12400==    by 0x7CD1597: av_vlog (log.c:434)
==12400==    by 0x7CD1438: av_log (log.c:413)
==12400==    by 0x431232: term_exit (ffmpeg.c:329)
==12400==    by 0x43E992: transcode (ffmpeg.c:3924)
==12400==    by 0x43EDD3: main (ffmpeg.c:4052)
frame=   15 fps=0.0 q=30.4 Lsize=      97kB time=00:00:00.49 bitrate=1625.4kbits/s speed=0.0013x
video:82kB audio:9kB subtitle:0kB other streams:0kB global headers:0kB muxing overhead: 7.719533%
x265 [info]: frame I:      1, Avg QP:20.85  kb/s: 5306.85
x265 [info]: frame P:      3, Avg QP:23.54  kb/s: 2312.09
x265 [info]: frame B:     11, Avg QP:31.32  kb/s: 629.02
x265 [info]: Weighted P-Frames: Y:0.0% UV:0.0%
x265 [info]: consecutive B-frames: 25.0% 0.0% 0.0% 25.0% 50.0%

encoded 15 frames in 373.39s (0.04 fps), 1277.49 kb/s, Avg QP:29.06
--12400-- REDIR: 0xc7f9120 (libstdc++.so.6:operator delete[](void*)) redirected to 0x4c2c7d0 (operator delete[](void*))
--12400-- REDIR: 0xc7f90f0 (libstdc++.so.6:operator delete(void*)) redirected to 0x4c2c250 (operator delete(void*))
[aac @ 0xe2fd300] Qavg: 6933.665
==12400==    at 0x7CD0797: VALGRIND_PRINTF_BACKTRACE (valgrind.h:6280)
==12400==    by 0x7CD1354: av_log_default_callback (log.c:399)
==12400==    by 0x7CD1597: av_vlog (log.c:434)
==12400==    by 0x7CD1438: av_log (log.c:413)
==12400==    by 0x431232: term_exit (ffmpeg.c:329)
==12400==    by 0x431B9A: ffmpeg_cleanup (ffmpeg.c:602)
==12400==    by 0x4297D3: exit_program (cmdutils.c:102)
==12400==    by 0x43EF47: main (in /usr/local/bin/ffmpeg)
==12400==
==12400== HEAP SUMMARY:
==12400==     in use at exit: 12,142,144 bytes in 2,823 blocks
==12400==   total heap usage: 11,496 allocs, 8,673 frees, 364,570,104 bytes allocated
==12400==
==12400== Searching for pointers to 2,823 not-freed blocks
==12400== Checked 21,167,952 bytes
==12400==
==12400== Thread 1:
==12400== 2 bytes in 1 blocks are definitely lost in loss record 1 of 216
==12400==    at 0x4C2AB80: malloc (in /usr/lib/valgrind/vgpreload_memcheck-amd64-linux.so)
==12400==    by 0x8630B49: strdup (strdup.c:42)
==12400==    by 0xB6BD5F0: x265_param_parse (in /usr/local/lib/libx265.so.198)
==12400==    by 0x63BFDAA: libx265_encode_init (libx265.c:373)
==12400==    by 0x5ED4A6C: avcodec_open2 (avcodec.c:317)
==12400==    by 0x43B70D: init_output_stream (ffmpeg.c:3083)
==12400==    by 0x43262E: init_output_stream_wrapper (ffmpeg.c:753)
==12400==    by 0x433E52: do_video_out (ffmpeg.c:1121)
==12400==    by 0x434BB4: reap_filters (ffmpeg.c:1341)
==12400==    by 0x43E7AE: transcode_step (ffmpeg.c:3868)
==12400==    by 0x43E87E: transcode (ffmpeg.c:3905)
==12400==    by 0x43EDD3: main (ffmpeg.c:4052)
==12400==
==12400== 2 bytes in 1 blocks are definitely lost in loss record 2 of 216
==12400==    at 0x4C2AB80: malloc (in /usr/lib/valgrind/vgpreload_memcheck-amd64-linux.so)
==12400==    by 0x8630B49: strdup (strdup.c:42)
==12400==    by 0xB6C7087: x265::x265_copy_params(x265_param*, x265_param*) (in /usr/local/lib/libx265.so.198)
==12400==    by 0xB61D298: x265_encoder_open_198 (in /usr/local/lib/libx265.so.198)
==12400==    by 0x63BFFE2: libx265_encode_init (libx265.c:407)
==12400==    by 0x5ED4A6C: avcodec_open2 (avcodec.c:317)
==12400==    by 0x43B70D: init_output_stream (ffmpeg.c:3083)
==12400==    by 0x43262E: init_output_stream_wrapper (ffmpeg.c:753)
==12400==    by 0x433E52: do_video_out (ffmpeg.c:1121)
==12400==    by 0x434BB4: reap_filters (ffmpeg.c:1341)
==12400==    by 0x43E7AE: transcode_step (ffmpeg.c:3868)
==12400==    by 0x43E87E: transcode (ffmpeg.c:3905)
==12400==    by 0x43EDD3: main (ffmpeg.c:4052)
==12400==
==12400== 2 bytes in 1 blocks are definitely lost in loss record 3 of 216
==12400==    at 0x4C2AB80: malloc (in /usr/lib/valgrind/vgpreload_memcheck-amd64-linux.so)
==12400==    by 0x8630B49: strdup (strdup.c:42)
==12400==    by 0xB6C7087: x265::x265_copy_params(x265_param*, x265_param*) (in /usr/local/lib/libx265.so.198)
==12400==    by 0xB61D2A3: x265_encoder_open_198 (in /usr/local/lib/libx265.so.198)
==12400==    by 0x63BFFE2: libx265_encode_init (libx265.c:407)
==12400==    by 0x5ED4A6C: avcodec_open2 (avcodec.c:317)
==12400==    by 0x43B70D: init_output_stream (ffmpeg.c:3083)
==12400==    by 0x43262E: init_output_stream_wrapper (ffmpeg.c:753)
==12400==    by 0x433E52: do_video_out (ffmpeg.c:1121)
==12400==    by 0x434BB4: reap_filters (ffmpeg.c:1341)
==12400==    by 0x43E7AE: transcode_step (ffmpeg.c:3868)
==12400==    by 0x43E87E: transcode (ffmpeg.c:3905)
==12400==    by 0x43EDD3: main (ffmpeg.c:4052)
==12400==
==12400== 2 bytes in 1 blocks are definitely lost in loss record 4 of 216
==12400==    at 0x4C2AB80: malloc (in /usr/lib/valgrind/vgpreload_memcheck-amd64-linux.so)
==12400==    by 0x8630B49: strdup (strdup.c:42)
==12400==    by 0xB6C7087: x265::x265_copy_params(x265_param*, x265_param*) (in /usr/local/lib/libx265.so.198)
==12400==    by 0xB61D48D: x265_encoder_open_198 (in /usr/local/lib/libx265.so.198)
==12400==    by 0x63BFFE2: libx265_encode_init (libx265.c:407)
==12400==    by 0x5ED4A6C: avcodec_open2 (avcodec.c:317)
==12400==    by 0x43B70D: init_output_stream (ffmpeg.c:3083)
==12400==    by 0x43262E: init_output_stream_wrapper (ffmpeg.c:753)
==12400==    by 0x433E52: do_video_out (ffmpeg.c:1121)
==12400==    by 0x434BB4: reap_filters (ffmpeg.c:1341)
==12400==    by 0x43E7AE: transcode_step (ffmpeg.c:3868)
==12400==    by 0x43E87E: transcode (ffmpeg.c:3905)
==12400==    by 0x43EDD3: main (ffmpeg.c:4052)
==12400==
==12400== 1,144 bytes in 1 blocks are definitely lost in loss record 189 of 216
==12400==    at 0x4C2D110: memalign (in /usr/lib/valgrind/vgpreload_memcheck-amd64-linux.so)
==12400==    by 0x4C2D227: posix_memalign (in /usr/lib/valgrind/vgpreload_memcheck-amd64-linux.so)
==12400==    by 0xB6B8E33: x265::x265_malloc(unsigned long) (in /usr/local/lib/libx265.so.198)
==12400==    by 0xB61D1CE: x265_encoder_open_198 (in /usr/local/lib/libx265.so.198)
==12400==    by 0x63BFFE2: libx265_encode_init (libx265.c:407)
==12400==    by 0x5ED4A6C: avcodec_open2 (avcodec.c:317)
==12400==    by 0x43B70D: init_output_stream (ffmpeg.c:3083)
==12400==    by 0x43262E: init_output_stream_wrapper (ffmpeg.c:753)
==12400==    by 0x433E52: do_video_out (ffmpeg.c:1121)
==12400==    by 0x434BB4: reap_filters (ffmpeg.c:1341)
==12400==    by 0x43E7AE: transcode_step (ffmpeg.c:3868)
==12400==    by 0x43E87E: transcode (ffmpeg.c:3905)
==12400==    by 0x43EDD3: main (ffmpeg.c:4052)
==12400==
==12400== 262,146 bytes in 1 blocks are possibly lost in loss record 208 of 216
==12400==    at 0x4C2D110: memalign (in /usr/lib/valgrind/vgpreload_memcheck-amd64-linux.so)
==12400==    by 0x4C2D227: posix_memalign (in /usr/lib/valgrind/vgpreload_memcheck-amd64-linux.so)
==12400==    by 0xB6B8E33: x265::x265_malloc(unsigned long) (in /usr/local/lib/libx265.so.198)
==12400==    by 0xB5C711A: x265::BitCost::setQP(unsigned int) (in /usr/local/lib/libx265.so.198)
==12400==    by 0xB5D4949: x265::Lookahead::create() (in /usr/local/lib/libx265.so.198)
==12400==    by 0xB60D26C: x265::Encoder::create() (in /usr/local/lib/libx265.so.198)
==12400==    by 0xB61D38A: x265_encoder_open_198 (in /usr/local/lib/libx265.so.198)
==12400==    by 0x63BFFE2: libx265_encode_init (libx265.c:407)
==12400==    by 0x5ED4A6C: avcodec_open2 (avcodec.c:317)
==12400==    by 0x43B70D: init_output_stream (ffmpeg.c:3083)
==12400==    by 0x43262E: init_output_stream_wrapper (ffmpeg.c:753)
==12400==    by 0x433E52: do_video_out (ffmpeg.c:1121)
==12400==    by 0x434BB4: reap_filters (ffmpeg.c:1341)
==12400==    by 0x43E7AE: transcode_step (ffmpeg.c:3868)
==12400==    by 0x43E87E: transcode (ffmpeg.c:3905)
==12400==    by 0x43EDD3: main (ffmpeg.c:4052)
==12400==
==12400== 262,152 bytes in 4 blocks are possibly lost in loss record 209 of 216
==12400==    at 0x4C2D110: memalign (in /usr/lib/valgrind/vgpreload_memcheck-amd64-linux.so)
==12400==    by 0x4C2D227: posix_memalign (in /usr/lib/valgrind/vgpreload_memcheck-amd64-linux.so)
==12400==    by 0xB6B8E33: x265::x265_malloc(unsigned long) (in /usr/local/lib/libx265.so.198)
==12400==    by 0xB5C6FC9: x265::BitCost::setQP(unsigned int) (in /usr/local/lib/libx265.so.198)
==12400==    by 0xB5D4949: x265::Lookahead::create() (in /usr/local/lib/libx265.so.198)
==12400==    by 0xB60D26C: x265::Encoder::create() (in /usr/local/lib/libx265.so.198)
==12400==    by 0xB61D38A: x265_encoder_open_198 (in /usr/local/lib/libx265.so.198)
==12400==    by 0x63BFFE2: libx265_encode_init (libx265.c:407)
==12400==    by 0x5ED4A6C: avcodec_open2 (avcodec.c:317)
==12400==    by 0x43B70D: init_output_stream (ffmpeg.c:3083)
==12400==    by 0x43262E: init_output_stream_wrapper (ffmpeg.c:753)
==12400==    by 0x433E52: do_video_out (ffmpeg.c:1121)
==12400==    by 0x434BB4: reap_filters (ffmpeg.c:1341)
==12400==    by 0x43E7AE: transcode_step (ffmpeg.c:3868)
==12400==    by 0x43E87E: transcode (ffmpeg.c:3905)
==12400==    by 0x43EDD3: main (ffmpeg.c:4052)
==12400==
==12400== 524,292 bytes in 1 blocks are possibly lost in loss record 210 of 216
==12400==    at 0x4C2D110: memalign (in /usr/lib/valgrind/vgpreload_memcheck-amd64-linux.so)
==12400==    by 0x4C2D227: posix_memalign (in /usr/lib/valgrind/vgpreload_memcheck-amd64-linux.so)
==12400==    by 0xB6B8E33: x265::x265_malloc(unsigned long) (in /usr/local/lib/libx265.so.198)
==12400==    by 0xB5C6E29: x265::BitCost::CalculateLogs() (in /usr/local/lib/libx265.so.198)
==12400==    by 0xB5C7110: x265::BitCost::setQP(unsigned int) (in /usr/local/lib/libx265.so.198)
==12400==    by 0xB5D4949: x265::Lookahead::create() (in /usr/local/lib/libx265.so.198)
==12400==    by 0xB60D26C: x265::Encoder::create() (in /usr/local/lib/libx265.so.198)
==12400==    by 0xB61D38A: x265_encoder_open_198 (in /usr/local/lib/libx265.so.198)
==12400==    by 0x63BFFE2: libx265_encode_init (libx265.c:407)
==12400==    by 0x5ED4A6C: avcodec_open2 (avcodec.c:317)
==12400==    by 0x43B70D: init_output_stream (ffmpeg.c:3083)
==12400==    by 0x43262E: init_output_stream_wrapper (ffmpeg.c:753)
==12400==    by 0x433E52: do_video_out (ffmpeg.c:1121)
==12400==    by 0x434BB4: reap_filters (ffmpeg.c:1341)
==12400==    by 0x43E7AE: transcode_step (ffmpeg.c:3868)
==12400==    by 0x43E87E: transcode (ffmpeg.c:3905)
==12400==    by 0x43EDD3: main (ffmpeg.c:4052)
==12400==
==12400== 1,048,584 bytes in 4 blocks are possibly lost in loss record 211 of 216
==12400==    at 0x4C2D110: memalign (in /usr/lib/valgrind/vgpreload_memcheck-amd64-linux.so)
==12400==    by 0x4C2D227: posix_memalign (in /usr/lib/valgrind/vgpreload_memcheck-amd64-linux.so)
==12400==    by 0xB6B8E33: x265::x265_malloc(unsigned long) (in /usr/local/lib/libx265.so.198)
==12400==    by 0xB5C711A: x265::BitCost::setQP(unsigned int) (in /usr/local/lib/libx265.so.198)
==12400==    by 0xB5B6240: x265::Search::setLambdaFromQP(x265::CUData const&, int, int) (in /usr/local/lib/libx265.so.198)
==12400==    by 0xB5B48AA: x265::Analysis::compressCTU(x265::CUData&, x265::Frame&, x265::CUGeom const&, x265::Entropy const&) (in /usr/local/lib/libx265.so.198)
==12400==    by 0xB5DFF38: x265::FrameEncoder::processRowEncoder(int, x265::ThreadLocalData&) (in /usr/local/lib/libx265.so.198)
==12400==    by 0xB5DD41D: x265::FrameEncoder::processRow(int, int) (in /usr/local/lib/libx265.so.198)
==12400==    by 0xB6B4FE1: x265::WaveFront::findJob(int) (in /usr/local/lib/libx265.so.198)
==12400==    by 0xB6B4449: x265::WorkerThread::threadMain() (in /usr/local/lib/libx265.so.198)
==12400==    by 0xB6B3D19: x265::ThreadShim(void*) (in /usr/local/lib/libx265.so.198)
==12400==    by 0x8392183: start_thread (pthread_create.c:312)
==12400==    by 0x86A603C: clone (clone.S:111)
==12400==
==12400== 1,048,584 bytes in 4 blocks are possibly lost in loss record 212 of 216
==12400==    at 0x4C2D110: memalign (in /usr/lib/valgrind/vgpreload_memcheck-amd64-linux.so)
==12400==    by 0x4C2D227: posix_memalign (in /usr/lib/valgrind/vgpreload_memcheck-amd64-linux.so)
==12400==    by 0xB6B8E33: x265::x265_malloc(unsigned long) (in /usr/local/lib/libx265.so.198)
==12400==    by 0xB5C711A: x265::BitCost::setQP(unsigned int) (in /usr/local/lib/libx265.so.198)
==12400==    by 0xB5B6240: x265::Search::setLambdaFromQP(x265::CUData const&, int, int) (in /usr/local/lib/libx265.so.198)
==12400==    by 0xB5AEE5B: x265::Analysis::compressInterCU_rd0_4(x265::CUData const&, x265::CUGeom const&, int) (in /usr/local/lib/libx265.so.198)
==12400==    by 0xB5B555E: x265::Analysis::compressCTU(x265::CUData&, x265::Frame&, x265::CUGeom const&, x265::Entropy const&) (in /usr/local/lib/libx265.so.198)
==12400==    by 0xB5DFF38: x265::FrameEncoder::processRowEncoder(int, x265::ThreadLocalData&) (in /usr/local/lib/libx265.so.198)
==12400==    by 0xB5DD41D: x265::FrameEncoder::processRow(int, int) (in /usr/local/lib/libx265.so.198)
==12400==    by 0xB6B4FE1: x265::WaveFront::findJob(int) (in /usr/local/lib/libx265.so.198)
==12400==    by 0xB6B4449: x265::WorkerThread::threadMain() (in /usr/local/lib/libx265.so.198)
==12400==    by 0xB6B3D19: x265::ThreadShim(void*) (in /usr/local/lib/libx265.so.198)
==12400==    by 0x8392183: start_thread (pthread_create.c:312)
==12400==    by 0x86A603C: clone (clone.S:111)
==12400==
==12400== 1,048,608 bytes in 16 blocks are possibly lost in loss record 213 of 216
==12400==    at 0x4C2D110: memalign (in /usr/lib/valgrind/vgpreload_memcheck-amd64-linux.so)
==12400==    by 0x4C2D227: posix_memalign (in /usr/lib/valgrind/vgpreload_memcheck-amd64-linux.so)
==12400==    by 0xB6B8E33: x265::x265_malloc(unsigned long) (in /usr/local/lib/libx265.so.198)
==12400==    by 0xB5C6FC9: x265::BitCost::setQP(unsigned int) (in /usr/local/lib/libx265.so.198)
==12400==    by 0xB5B6240: x265::Search::setLambdaFromQP(x265::CUData const&, int, int) (in /usr/local/lib/libx265.so.198)
==12400==    by 0xB5B48AA: x265::Analysis::compressCTU(x265::CUData&, x265::Frame&, x265::CUGeom const&, x265::Entropy const&) (in /usr/local/lib/libx265.so.198)
==12400==    by 0xB5DFF38: x265::FrameEncoder::processRowEncoder(int, x265::ThreadLocalData&) (in /usr/local/lib/libx265.so.198)
==12400==    by 0xB5DD41D: x265::FrameEncoder::processRow(int, int) (in /usr/local/lib/libx265.so.198)
==12400==    by 0xB6B4FE1: x265::WaveFront::findJob(int) (in /usr/local/lib/libx265.so.198)
==12400==    by 0xB6B4449: x265::WorkerThread::threadMain() (in /usr/local/lib/libx265.so.198)
==12400==    by 0xB6B3D19: x265::ThreadShim(void*) (in /usr/local/lib/libx265.so.198)
==12400==    by 0x8392183: start_thread (pthread_create.c:312)
==12400==    by 0x86A603C: clone (clone.S:111)
==12400==
==12400== 1,048,608 bytes in 16 blocks are possibly lost in loss record 214 of 216
==12400==    at 0x4C2D110: memalign (in /usr/lib/valgrind/vgpreload_memcheck-amd64-linux.so)
==12400==    by 0x4C2D227: posix_memalign (in /usr/lib/valgrind/vgpreload_memcheck-amd64-linux.so)
==12400==    by 0xB6B8E33: x265::x265_malloc(unsigned long) (in /usr/local/lib/libx265.so.198)
==12400==    by 0xB5C6FC9: x265::BitCost::setQP(unsigned int) (in /usr/local/lib/libx265.so.198)
==12400==    by 0xB5B6240: x265::Search::setLambdaFromQP(x265::CUData const&, int, int) (in /usr/local/lib/libx265.so.198)
==12400==    by 0xB5AEE5B: x265::Analysis::compressInterCU_rd0_4(x265::CUData const&, x265::CUGeom const&, int) (in /usr/local/lib/libx265.so.198)
==12400==    by 0xB5B555E: x265::Analysis::compressCTU(x265::CUData&, x265::Frame&, x265::CUGeom const&, x265::Entropy const&) (in /usr/local/lib/libx265.so.198)
==12400==    by 0xB5DFF38: x265::FrameEncoder::processRowEncoder(int, x265::ThreadLocalData&) (in /usr/local/lib/libx265.so.198)
==12400==    by 0xB5DD41D: x265::FrameEncoder::processRow(int, int) (in /usr/local/lib/libx265.so.198)
==12400==    by 0xB6B4FE1: x265::WaveFront::findJob(int) (in /usr/local/lib/libx265.so.198)
==12400==    by 0xB6B4449: x265::WorkerThread::threadMain() (in /usr/local/lib/libx265.so.198)
==12400==    by 0xB6B3D19: x265::ThreadShim(void*) (in /usr/local/lib/libx265.so.198)
==12400==    by 0x8392183: start_thread (pthread_create.c:312)
==12400==    by 0x86A603C: clone (clone.S:111)
==12400==
==12400== 3,407,898 bytes in 13 blocks are possibly lost in loss record 215 of 216
==12400==    at 0x4C2D110: memalign (in /usr/lib/valgrind/vgpreload_memcheck-amd64-linux.so)
==12400==    by 0x4C2D227: posix_memalign (in /usr/lib/valgrind/vgpreload_memcheck-amd64-linux.so)
==12400==    by 0xB6B8E33: x265::x265_malloc(unsigned long) (in /usr/local/lib/libx265.so.198)
==12400==    by 0xB5C711A: x265::BitCost::setQP(unsigned int) (in /usr/local/lib/libx265.so.198)
==12400==    by 0xB5B6240: x265::Search::setLambdaFromQP(x265::CUData const&, int, int) (in /usr/local/lib/libx265.so.198)
==12400==    by 0xB5AC1DB: x265::Analysis::compressIntraCU(x265::CUData const&, x265::CUGeom const&, int) (in /usr/local/lib/libx265.so.198)
==12400==    by 0xB5B4F35: x265::Analysis::compressCTU(x265::CUData&, x265::Frame&, x265::CUGeom const&, x265::Entropy const&) (in /usr/local/lib/libx265.so.198)
==12400==    by 0xB5DFF38: x265::FrameEncoder::processRowEncoder(int, x265::ThreadLocalData&) (in /usr/local/lib/libx265.so.198)
==12400==    by 0xB5DD41D: x265::FrameEncoder::processRow(int, int) (in /usr/local/lib/libx265.so.198)
==12400==    by 0xB6B4FE1: x265::WaveFront::findJob(int) (in /usr/local/lib/libx265.so.198)
==12400==    by 0xB6B4449: x265::WorkerThread::threadMain() (in /usr/local/lib/libx265.so.198)
==12400==    by 0xB6B3D19: x265::ThreadShim(void*) (in /usr/local/lib/libx265.so.198)
==12400==    by 0x8392183: start_thread (pthread_create.c:312)
==12400==    by 0x86A603C: clone (clone.S:111)
==12400==
==12400== 3,407,976 bytes in 52 blocks are possibly lost in loss record 216 of 216
==12400==    at 0x4C2D110: memalign (in /usr/lib/valgrind/vgpreload_memcheck-amd64-linux.so)
==12400==    by 0x4C2D227: posix_memalign (in /usr/lib/valgrind/vgpreload_memcheck-amd64-linux.so)
==12400==    by 0xB6B8E33: x265::x265_malloc(unsigned long) (in /usr/local/lib/libx265.so.198)
==12400==    by 0xB5C6FC9: x265::BitCost::setQP(unsigned int) (in /usr/local/lib/libx265.so.198)
==12400==    by 0xB5B6240: x265::Search::setLambdaFromQP(x265::CUData const&, int, int) (in /usr/local/lib/libx265.so.198)
==12400==    by 0xB5AC1DB: x265::Analysis::compressIntraCU(x265::CUData const&, x265::CUGeom const&, int) (in /usr/local/lib/libx265.so.198)
==12400==    by 0xB5B4F35: x265::Analysis::compressCTU(x265::CUData&, x265::Frame&, x265::CUGeom const&, x265::Entropy const&) (in /usr/local/lib/libx265.so.198)
==12400==    by 0xB5DFF38: x265::FrameEncoder::processRowEncoder(int, x265::ThreadLocalData&) (in /usr/local/lib/libx265.so.198)
==12400==    by 0xB5DD41D: x265::FrameEncoder::processRow(int, int) (in /usr/local/lib/libx265.so.198)
==12400==    by 0xB6B4FE1: x265::WaveFront::findJob(int) (in /usr/local/lib/libx265.so.198)
==12400==    by 0xB6B4449: x265::WorkerThread::threadMain() (in /usr/local/lib/libx265.so.198)
==12400==    by 0xB6B3D19: x265::ThreadShim(void*) (in /usr/local/lib/libx265.so.198)
==12400==    by 0x8392183: start_thread (pthread_create.c:312)
==12400==    by 0x86A603C: clone (clone.S:111)
==12400==
==12400== LEAK SUMMARY:
==12400==    definitely lost: 1,152 bytes in 5 blocks
==12400==    indirectly lost: 0 bytes in 0 blocks
==12400==      possibly lost: 12,058,848 bytes in 111 blocks
==12400==    still reachable: 82,144 bytes in 2,707 blocks
==12400==         suppressed: 0 bytes in 0 blocks
==12400== Reachable blocks (those to which a pointer was found) are not shown.
==12400== To see them, rerun with: --leak-check=full --show-leak-kinds=all
==12400==
==12400== Use --track-origins=yes to see where uninitialised values come from
==12400== ERROR SUMMARY: 43812 errors from 18 contexts (suppressed: 0 from 0)
==12400==
==12400== 4972 errors in context 1 of 18:
==12400== Thread 18:
==12400== Conditional jump or move depends on uninitialised value(s)
==12400==    at 0xB5AF72B: x265::Analysis::compressInterCU_rd0_4(x265::CUData const&, x265::CUGeom const&, int) (in /usr/local/lib/libx265.so.198)
==12400==    by 0xB5B555E: x265::Analysis::compressCTU(x265::CUData&, x265::Frame&, x265::CUGeom const&, x265::Entropy const&) (in /usr/local/lib/libx265.so.198)
==12400==    by 0xB5DFF38: x265::FrameEncoder::processRowEncoder(int, x265::ThreadLocalData&) (in /usr/local/lib/libx265.so.198)
==12400==    by 0xB5DD41D: x265::FrameEncoder::processRow(int, int) (in /usr/local/lib/libx265.so.198)
==12400==    by 0xB6B4FE1: x265::WaveFront::findJob(int) (in /usr/local/lib/libx265.so.198)
==12400==    by 0xB6B4449: x265::WorkerThread::threadMain() (in /usr/local/lib/libx265.so.198)
==12400==    by 0xB6B3D19: x265::ThreadShim(void*) (in /usr/local/lib/libx265.so.198)
==12400==    by 0x8392183: start_thread (pthread_create.c:312)
==12400==    by 0x86A603C: clone (clone.S:111)
==12400==
==12400==
==12400== 11108 errors in context 2 of 18:
==12400== Thread 17:
==12400== Conditional jump or move depends on uninitialised value(s)
==12400==    at 0xB5AF72B: x265::Analysis::compressInterCU_rd0_4(x265::CUData const&, x265::CUGeom const&, int) (in /usr/local/lib/libx265.so.198)
==12400==    by 0xB5AE072: x265::Analysis::compressInterCU_rd0_4(x265::CUData const&, x265::CUGeom const&, int) (in /usr/local/lib/libx265.so.198)
==12400==    by 0xB5AE072: x265::Analysis::compressInterCU_rd0_4(x265::CUData const&, x265::CUGeom const&, int) (in /usr/local/lib/libx265.so.198)
==12400==    by 0xB5B555E: x265::Analysis::compressCTU(x265::CUData&, x265::Frame&, x265::CUGeom const&, x265::Entropy const&) (in /usr/local/lib/libx265.so.198)
==12400==    by 0xB5DFF38: x265::FrameEncoder::processRowEncoder(int, x265::ThreadLocalData&) (in /usr/local/lib/libx265.so.198)
==12400==    by 0xB5DD41D: x265::FrameEncoder::processRow(int, int) (in /usr/local/lib/libx265.so.198)
==12400==    by 0xB6B4FE1: x265::WaveFront::findJob(int) (in /usr/local/lib/libx265.so.198)
==12400==    by 0xB6B4449: x265::WorkerThread::threadMain() (in /usr/local/lib/libx265.so.198)
==12400==    by 0xB6B3D19: x265::ThreadShim(void*) (in /usr/local/lib/libx265.so.198)
==12400==    by 0x8392183: start_thread (pthread_create.c:312)
==12400==    by 0x86A603C: clone (clone.S:111)
==12400==
==12400==
==12400== 12746 errors in context 3 of 18:
==12400== Thread 18:
==12400== Conditional jump or move depends on uninitialised value(s)
==12400==    at 0xB5AF72B: x265::Analysis::compressInterCU_rd0_4(x265::CUData const&, x265::CUGeom const&, int) (in /usr/local/lib/libx265.so.198)
==12400==    by 0xB5AE072: x265::Analysis::compressInterCU_rd0_4(x265::CUData const&, x265::CUGeom const&, int) (in /usr/local/lib/libx265.so.198)
==12400==    by 0xB5B555E: x265::Analysis::compressCTU(x265::CUData&, x265::Frame&, x265::CUGeom const&, x265::Entropy const&) (in /usr/local/lib/libx265.so.198)
==12400==    by 0xB5DFF38: x265::FrameEncoder::processRowEncoder(int, x265::ThreadLocalData&) (in /usr/local/lib/libx265.so.198)
==12400==    by 0xB5DD41D: x265::FrameEncoder::processRow(int, int) (in /usr/local/lib/libx265.so.198)
==12400==    by 0xB6B4FE1: x265::WaveFront::findJob(int) (in /usr/local/lib/libx265.so.198)
==12400==    by 0xB6B4449: x265::WorkerThread::threadMain() (in /usr/local/lib/libx265.so.198)
==12400==    by 0xB6B3D19: x265::ThreadShim(void*) (in /usr/local/lib/libx265.so.198)
==12400==    by 0x8392183: start_thread (pthread_create.c:312)
==12400==    by 0x86A603C: clone (clone.S:111)
==12400==
==12400==
==12400== 14972 errors in context 4 of 18:
==12400== Thread 17:
==12400== Conditional jump or move depends on uninitialised value(s)
==12400==    at 0xB5AF72B: x265::Analysis::compressInterCU_rd0_4(x265::CUData const&, x265::CUGeom const&, int) (in /usr/local/lib/libx265.so.198)
==12400==    by 0xB5AE072: x265::Analysis::compressInterCU_rd0_4(x265::CUData const&, x265::CUGeom const&, int) (in /usr/local/lib/libx265.so.198)
==12400==    by 0xB5AE072: x265::Analysis::compressInterCU_rd0_4(x265::CUData const&, x265::CUGeom const&, int) (in /usr/local/lib/libx265.so.198)
==12400==    by 0xB5AE072: x265::Analysis::compressInterCU_rd0_4(x265::CUData const&, x265::CUGeom const&, int) (in /usr/local/lib/libx265.so.198)
==12400==    by 0xB5B555E: x265::Analysis::compressCTU(x265::CUData&, x265::Frame&, x265::CUGeom const&, x265::Entropy const&) (in /usr/local/lib/libx265.so.198)
==12400==    by 0xB5DFF38: x265::FrameEncoder::processRowEncoder(int, x265::ThreadLocalData&) (in /usr/local/lib/libx265.so.198)
==12400==    by 0xB5DD41D: x265::FrameEncoder::processRow(int, int) (in /usr/local/lib/libx265.so.198)
==12400==    by 0xB6B4FE1: x265::WaveFront::findJob(int) (in /usr/local/lib/libx265.so.198)
==12400==    by 0xB6B4449: x265::WorkerThread::threadMain() (in /usr/local/lib/libx265.so.198)
==12400==    by 0xB6B3D19: x265::ThreadShim(void*) (in /usr/local/lib/libx265.so.198)
==12400==    by 0x8392183: start_thread (pthread_create.c:312)
==12400==    by 0x86A603C: clone (clone.S:111)
==12400==
==12400== ERROR SUMMARY: 43812 errors from 18 contexts (suppressed: 0 from 0)

[-- Attachment #4: Type: text/plain, Size: 251 bytes --]

_______________________________________________
ffmpeg-devel mailing list
ffmpeg-devel@ffmpeg.org
https://ffmpeg.org/mailman/listinfo/ffmpeg-devel

To unsubscribe, visit link above, or email
ffmpeg-devel-request@ffmpeg.org with subject "unsubscribe".

^ permalink raw reply	[flat|nested] 9+ messages in thread

* Re: [FFmpeg-devel] [PATCH] libx265: support ATSC A/53 captions
  2022-11-08 14:25         ` Eran Kornblau
@ 2022-11-08 14:48           ` Timo Rothenpieler
  2022-11-08 15:19             ` Eran Kornblau
  0 siblings, 1 reply; 9+ messages in thread
From: Timo Rothenpieler @ 2022-11-08 14:48 UTC (permalink / raw)
  To: ffmpeg-devel

On 08.11.2022 15:25, Eran Kornblau wrote:
>>
>> -----Original Message-----
>> From: ffmpeg-devel <ffmpeg-devel-bounces@ffmpeg.org> On Behalf Of Timo Rothenpieler
>> Sent: Tuesday, 8 November 2022 13:33
>> To: ffmpeg-devel@ffmpeg.org
>> Subject: Re: [FFmpeg-devel] [PATCH] libx265: support ATSC A/53 captions
>>
>>>
>>> The attached patch adds rendering of ATSC A/53 captions as HEVC SEI messages.
>>> The option name/implementation is aligned with the corresponding libx264 feature.
>>
>> What frees the sei data on success?
>>
> Thanks Timo, good point!
> 
> I missed the fact that libx264 gets a callback for freeing the SEI payloads (sei_free).
> It seems libx265 does not have this option, so I added some 'for' loop to free the payloads after the call to encoder_encode.
> 
> In addition:
> 1. I added av_memdup on the 'user-data-unregistered' side data so that it won't be freed twice.
> 2. I added a 'free_picture' function for freeing the x265_picture in case of error.
> (both changes are aligned with the implementation in libx264.c)
> 
> Updated patch attached.

One nit: splitting the first line of free_picture() in two isn't really 
neccesary and makes the function a bit uglier.

One small problem: libx265 now needs to select atsc_a53 in configure, 
analog to how libx264 and all the others do.
Otherwise the file containing the a53 code might not get compiled.

LGTM otherwise

> While checking the point you raised, I ran some libx265 transcode with valgrind, and it reported errors unrelated to this patch.
> Attaching the full output, in case anyone wants to have a look.

x265 has a bunch of issues related to SEI data.
See for example https://trac.ffmpeg.org/ticket/9666#comment:1

i.e. if the number of per-frame sei data ever increases past its initial 
count, it'll just straight up explode.
_______________________________________________
ffmpeg-devel mailing list
ffmpeg-devel@ffmpeg.org
https://ffmpeg.org/mailman/listinfo/ffmpeg-devel

To unsubscribe, visit link above, or email
ffmpeg-devel-request@ffmpeg.org with subject "unsubscribe".

^ permalink raw reply	[flat|nested] 9+ messages in thread

* Re: [FFmpeg-devel] [PATCH] libx265: support ATSC A/53 captions
  2022-11-08 14:48           ` Timo Rothenpieler
@ 2022-11-08 15:19             ` Eran Kornblau
  2022-11-10 15:29               ` Timo Rothenpieler
  0 siblings, 1 reply; 9+ messages in thread
From: Eran Kornblau @ 2022-11-08 15:19 UTC (permalink / raw)
  To: FFmpeg development discussions and patches

[-- Attachment #1: Type: text/plain, Size: 2405 bytes --]

> 
> On 08.11.2022 15:25, Eran Kornblau wrote:
> >>
> >> -----Original Message-----
> >> From: ffmpeg-devel <ffmpeg-devel-bounces@ffmpeg.org> On Behalf Of 
> >> Timo Rothenpieler
> >> Sent: Tuesday, 8 November 2022 13:33
> >> To: ffmpeg-devel@ffmpeg.org
> >> Subject: Re: [FFmpeg-devel] [PATCH] libx265: support ATSC A/53 
> >> captions
> >>
> >>>
> >>> The attached patch adds rendering of ATSC A/53 captions as HEVC SEI messages.
> >>> The option name/implementation is aligned with the corresponding libx264 feature.
> >>
> >> What frees the sei data on success?
> >>
> > Thanks Timo, good point!
> >
> > I missed the fact that libx264 gets a callback for freeing the SEI payloads (sei_free).
> > It seems libx265 does not have this option, so I added some 'for' loop to free the payloads after the call to encoder_encode.
> >
> > In addition:
> > 1. I added av_memdup on the 'user-data-unregistered' side data so that it won't be freed twice.
> > 2. I added a 'free_picture' function for freeing the x265_picture in case of error.
> > (both changes are aligned with the implementation in libx264.c)
> >
> > Updated patch attached.
> 
> One nit: splitting the first line of free_picture() in two isn't really neccesary and makes the function a bit uglier.
> 
Fixed

> One small problem: libx265 now needs to select atsc_a53 in configure, analog to how libx264 and all the others do.
> Otherwise the file containing the a53 code might not get compiled.
> 
Fixed

> LGTM otherwise
> 
Thanks!

Eran

> > While checking the point you raised, I ran some libx265 transcode with valgrind, and it reported errors unrelated to this patch.
> > Attaching the full output, in case anyone wants to have a look.
> 
> x265 has a bunch of issues related to SEI data.
> See for example https://eur02.safelinks.protection.outlook.com/?url=https%3A%2F%2Ftrac.ffmpeg.org%2Fticket%2F9666%23comment%3A1&amp;data=05%7C01%7C%7C5cd31da5382f4946e0c508dac198454d%7C0c503748de3f4e2597e26819d53a42b6%7C1%7C0%7C638035156992542567%7CUnknown%7CTWFpbGZsb3d8eyJWIjoiMC4wLjAwMDAiLCJQIjoiV2luMzIiLCJBTiI6Ik1haWwiLCJXVCI6Mn0%3D%7C3000%7C%7C%7C&amp;sdata=9AdmTE%2B4dzHED8KLN0ps2GvvynacXfrWjhVJk4SBWJo%3D&amp;reserved=0
> 
> i.e. if the number of per-frame sei data ever increases past its initial count, it'll just straight up explode.
> _______________________________________________


[-- Attachment #2: 0001-libx265-support-ATSC-A-53-captions.patch --]
[-- Type: application/octet-stream, Size: 7277 bytes --]

[-- Attachment #3: Type: text/plain, Size: 251 bytes --]

_______________________________________________
ffmpeg-devel mailing list
ffmpeg-devel@ffmpeg.org
https://ffmpeg.org/mailman/listinfo/ffmpeg-devel

To unsubscribe, visit link above, or email
ffmpeg-devel-request@ffmpeg.org with subject "unsubscribe".

^ permalink raw reply	[flat|nested] 9+ messages in thread

* Re: [FFmpeg-devel] [PATCH] libx265: support ATSC A/53 captions
  2022-11-08 15:19             ` Eran Kornblau
@ 2022-11-10 15:29               ` Timo Rothenpieler
  0 siblings, 0 replies; 9+ messages in thread
From: Timo Rothenpieler @ 2022-11-10 15:29 UTC (permalink / raw)
  To: ffmpeg-devel

applied
_______________________________________________
ffmpeg-devel mailing list
ffmpeg-devel@ffmpeg.org
https://ffmpeg.org/mailman/listinfo/ffmpeg-devel

To unsubscribe, visit link above, or email
ffmpeg-devel-request@ffmpeg.org with subject "unsubscribe".

^ permalink raw reply	[flat|nested] 9+ messages in thread

end of thread, other threads:[~2022-11-10 15:29 UTC | newest]

Thread overview: 9+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2022-10-17 16:28 [FFmpeg-devel] [PATCH] libx265: support ATSC A/53 captions Eran Kornblau
2022-10-25  4:23 ` Eran Kornblau
2022-11-01  7:42   ` Eran Kornblau
2022-11-08  6:49     ` Eran Kornblau
2022-11-08 11:33       ` Timo Rothenpieler
2022-11-08 14:25         ` Eran Kornblau
2022-11-08 14:48           ` Timo Rothenpieler
2022-11-08 15:19             ` Eran Kornblau
2022-11-10 15:29               ` Timo Rothenpieler

Git Inbox Mirror of the ffmpeg-devel mailing list - see https://ffmpeg.org/mailman/listinfo/ffmpeg-devel

This inbox may be cloned and mirrored by anyone:

	git clone --mirror https://master.gitmailbox.com/ffmpegdev/0 ffmpegdev/git/0.git

	# If you have public-inbox 1.1+ installed, you may
	# initialize and index your mirror using the following commands:
	public-inbox-init -V2 ffmpegdev ffmpegdev/ https://master.gitmailbox.com/ffmpegdev \
		ffmpegdev@gitmailbox.com
	public-inbox-index ffmpegdev

Example config snippet for mirrors.


AGPL code for this site: git clone https://public-inbox.org/public-inbox.git