On Mon, Dec 12, 2022 at 10:42:09PM +0100, Timo Rothenpieler wrote: > From: Anton Khirnov > > Reorganize the code such that the frame threading code does not call the > decoders directly, but instead calls back into the generic decoding > code. This avoids duplicating the logic that wraps the decoder > invocation and will be useful in the following commits. > --- > libavcodec/decode.c | 62 ++++++--- > libavcodec/decode.h | 7 + > libavcodec/internal.h | 7 + > libavcodec/pthread_frame.c | 265 ++++++++++++++++++++++++------------- > libavcodec/thread.h | 18 +-- > 5 files changed, 236 insertions(+), 123 deletions(-) this breaks some files but seems not 100% reproduceable this is what i see after the patch when it fails: [ogg @ 0x56170f3d67c0] Broken file, keyframe not correctly marked.peed= 242x Error while decoding stream #0:1: Operation not permitted Last message repeated 128784 times Error while decoding stream #0:1: Operation not permittedate=N/A speed=9.94x Last message repeated 118013 times Error while decoding stream #0:1: Operation not permittedate=N/A speed=4.98x Last message repeated 131881 times Error while decoding stream #0:1: Operation not permittedate=N/A speed=3.32x Last message repeated 131490 times Error while decoding stream #0:1: Operation not permittedate=N/A speed=2.49x Last message repeated 26968 times frame= 106 fps= 50 q=-0.0 Lsize=N/A time=00:00:04.98 bitrate=N/A speed=2.37x video:50kB audio:215kB subtitle:0kB other streams:0kB global headers:0kB muxing overhead: unknown Exiting normally, received signal 2. i will mail you the file privatly thx [...] -- Michael GnuPG fingerprint: 9FF2128B147EF6730BADF133611EC787040B0FAB it is not once nor twice but times without number that the same ideas make their appearance in the world. -- Aristotle