[FFmpeg-devel] [PATCH v4] lavc: convert frame threading to the receive_frame() pattern
Michael Niedermayer
michael at niedermayer.cc
Sat Dec 10 01:46:36 EET 2022
On Fri, Dec 09, 2022 at 02:37:04PM +0100, Timo Rothenpieler wrote:
> From: Anton Khirnov <anton at khirnov.net>
>
> 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 | 58 +++++----
> libavcodec/decode.h | 7 +
> libavcodec/internal.h | 7 +
> libavcodec/pthread_frame.c | 256 ++++++++++++++++++++++++-------------
> libavcodec/thread.h | 18 +--
> 5 files changed, 223 insertions(+), 123 deletions(-)
this patch changes the output with this:
./ffmpeg -ss 1 -i Enigma_Principles_of_Lust.flv -t 1 -bitexact -f framecrc
If someone wants to look into this ill send him the file,
it should be online but i failed to find it.
--- /tmp/test 2022-12-10 00:29:18.585089416 +0100
+++ /tmp/ref 2022-12-10 00:21:14.177412007 +0100
@@ -11,46 +11,53 @@
0, 0, 0, 1, 153360, 0x887a0c84
1, 0, 0, 482, 1928, 0x9228f7f2
1, 485, 485, 1024, 4096, 0x60c21370
+0, 1, 1, 1, 153360, 0x49c60bc4
0, 2, 2, 1, 153360, 0x22740bd4
1, 1509, 1509, 1024, 4096, 0x77933b11
0, 3, 3, 1, 153360, 0x244d0bb4
1, 2536, 2536, 1024, 4096, 0xe15e8d59
+0, 4, 4, 1, 153360, 0x5f660b94
1, 3560, 3560, 1024, 4096, 0x545cdd61
0, 5, 5, 1, 153360, 0xb628fd45
0, 6, 6, 1, 153360, 0x3839e5cd
1, 4576, 4576, 1024, 4096, 0x47154132
+0, 7, 7, 1, 153360, 0xf015da05
1, 5601, 5601, 1024, 4096, 0x7822f57e
0, 8, 8, 1, 153360, 0x70f1d8db
0, 9, 9, 1, 153360, 0x8968d203
1, 6625, 6625, 1024, 4096, 0xb786e7ff
-0, 10, 10, 1, 153360, 0x5902c6cb
+0, 10, 10, 1, 153360, 0x9e73caed
1, 7651, 7651, 1024, 4096, 0x0b467ce8
-0, 11, 11, 1, 153360, 0x68e43893
+0, 11, 11, 1, 153360, 0x5902c6cb
1, 8675, 8675, 1024, 4096, 0x79229a46
-0, 12, 12, 1, 153360, 0x065c5e22
-0, 13, 13, 1, 153360, 0x6c2962a9
+0, 12, 12, 1, 153360, 0x68e43893
+0, 13, 13, 1, 153360, 0x065c5e22
1, 9702, 9702, 1024, 4096, 0x63b1e107
+0, 14, 14, 1, 153360, 0x6c2962a9
1, 10726, 10726, 1024, 4096, 0x9f4355eb
0, 15, 15, 1, 153360, 0xff0a88e3
1, 11753, 11753, 1024, 4096, 0xcdbae3fe
-0, 16, 16, 1, 153360, 0xd1395d5c
-0, 17, 17, 1, 153360, 0x0e1f6bc5
+0, 16, 16, 1, 153360, 0x07025790
+0, 17, 17, 1, 153360, 0xd1395d5c
1, 12777, 12777, 1024, 4096, 0x48a38fc7
-0, 18, 18, 1, 153360, 0x1972db1e
+0, 18, 18, 1, 153360, 0x0e1f6bc5
1, 13793, 13793, 1024, 4096, 0x3baef67f
+0, 19, 19, 1, 153360, 0x1972db1e
0, 20, 20, 1, 153360, 0x1d6eef56
1, 14818, 14818, 1024, 4096, 0x1009f25c
0, 21, 21, 1, 153360, 0x7581f07c
1, 15842, 15842, 1024, 4096, 0x01bedb12
-0, 22, 22, 1, 153360, 0xae79cdac
+0, 22, 22, 1, 153360, 0xe1a9d022
1, 16868, 16868, 1024, 4096, 0xa00c62b0
+0, 23, 23, 1, 153360, 0xae79cdac
0, 24, 24, 1, 153360, 0x9d05ebf3
1, 17892, 17892, 1024, 4096, 0x9e2f639e
0, 25, 25, 1, 153360, 0x48e4e890
1, 18919, 18919, 1024, 4096, 0x0a627322
-0, 26, 26, 1, 153360, 0x37e0e5d7
-0, 27, 27, 1, 153360, 0x6c20f174
+0, 26, 26, 1, 153360, 0x0b35e41a
+0, 27, 27, 1, 153360, 0x37e0e5d7
1, 19943, 19943, 1024, 4096, 0x5f670b1d
-0, 28, 28, 1, 153360, 0x727bf68a
+0, 28, 28, 1, 153360, 0x6c20f174
1, 20959, 20959, 1024, 4096, 0xb6486ba8
+0, 29, 29, 1, 153360, 0x727bf68a
1, 21984, 21984, 66, 264, 0x00000000
[...]
--
Michael GnuPG fingerprint: 9FF2128B147EF6730BADF133611EC787040B0FAB
Those who are best at talking, realize last or never when they are wrong.
-------------- next part --------------
A non-text attachment was scrubbed...
Name: signature.asc
Type: application/pgp-signature
Size: 195 bytes
Desc: not available
URL: <https://ffmpeg.org/pipermail/ffmpeg-devel/attachments/20221210/3cba96f2/attachment.sig>
More information about the ffmpeg-devel
mailing list