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 1/7] avutil/tests/imgutils: factorize basic tests to new function
@ 2023-12-03  0:27 Marton Balint
  2023-12-03  0:27 ` [FFmpeg-devel] [PATCH 2/7] avutil/tests/imgutils: add tests for av_image_fill_black() Marton Balint
                   ` (6 more replies)
  0 siblings, 7 replies; 45+ messages in thread
From: Marton Balint @ 2023-12-03  0:27 UTC (permalink / raw)
  To: ffmpeg-devel; +Cc: Marton Balint

Signed-off-by: Marton Balint <cus@passwd.hu>
---
 libavutil/tests/imgutils.c | 68 ++++++++++++++++++++++----------------
 1 file changed, 39 insertions(+), 29 deletions(-)

diff --git a/libavutil/tests/imgutils.c b/libavutil/tests/imgutils.c
index 748bd6c9d2..f3a433ac4a 100644
--- a/libavutil/tests/imgutils.c
+++ b/libavutil/tests/imgutils.c
@@ -19,6 +19,41 @@
 #include "libavutil/imgutils.c"
 
 #undef printf
+static int basic_tests(enum AVPixelFormat pix_fmt, int w, int h) {
+    uint8_t *data[4];
+    size_t sizes[4];
+    ptrdiff_t linesizes1[4], offsets[3] = { 0 };
+    int i, total_size, linesizes[4];
+
+    if (av_image_fill_linesizes(linesizes, pix_fmt, w) < 0)
+        return -1;
+    for (i = 0; i < 4; i++)
+        linesizes1[i] = linesizes[i];
+    if (av_image_fill_plane_sizes(sizes, pix_fmt, h, linesizes1) < 0)
+        return -1;
+    total_size = av_image_fill_pointers(data, pix_fmt, h, (void *)1, linesizes);
+    if (total_size < 0)
+        return -1;
+    for (i = 0; i < 4 && data[i]; i++);
+    printf("planes: %d", i);
+    // Test the output of av_image_fill_linesizes()
+    printf(", linesizes:");
+    for (i = 0; i < 4; i++)
+        printf(" %3d", linesizes[i]);
+    // Test the output of av_image_fill_plane_sizes()
+    printf(", plane_sizes:");
+    for (i = 0; i < 4; i++)
+        printf(" %5"SIZE_SPECIFIER, sizes[i]);
+    // Test the output of av_image_fill_pointers()
+    for (i = 0; i < 3 && data[i + 1]; i++)
+        offsets[i] = data[i + 1] - data[i];
+    printf(", plane_offsets:");
+    for (i = 0; i < 3; i++)
+        printf(" %5"PTRDIFF_SPECIFIER, offsets[i]);
+    printf(", total_size: %d", total_size);
+
+    return 0;
+}
 
 int main(void)
 {
@@ -35,39 +70,14 @@ int main(void)
     printf("\n");
 
     while (desc = av_pix_fmt_desc_next(desc)) {
-        uint8_t *data[4];
-        size_t sizes[4];
-        ptrdiff_t linesizes1[4], offsets[3] = { 0 };
-        int i, total_size, w = 64, h = 48, linesizes[4];
+        int w = 64, h = 48;
         enum AVPixelFormat pix_fmt = av_pix_fmt_desc_get_id(desc);
 
-        if (av_image_fill_linesizes(linesizes, pix_fmt, w) < 0)
-            continue;
-        for (i = 0; i < 4; i++)
-            linesizes1[i] = linesizes[i];
-        if (av_image_fill_plane_sizes(sizes, pix_fmt, h, linesizes1) < 0)
-            continue;
-        total_size = av_image_fill_pointers(data, pix_fmt, h, (void *)1, linesizes);
-        if (total_size < 0)
+        if (desc->flags & AV_PIX_FMT_FLAG_HWACCEL)
             continue;
         printf("%-16s", desc->name);
-        for (i = 0; i < 4 && data[i]; i++);
-        printf("planes: %d", i);
-        // Test the output of av_image_fill_linesizes()
-        printf(", linesizes:");
-        for (i = 0; i < 4; i++)
-            printf(" %3d", linesizes[i]);
-        // Test the output of av_image_fill_plane_sizes()
-        printf(", plane_sizes:");
-        for (i = 0; i < 4; i++)
-            printf(" %5"SIZE_SPECIFIER, sizes[i]);
-        // Test the output of av_image_fill_pointers()
-        for (i = 0; i < 3 && data[i + 1]; i++)
-            offsets[i] = data[i + 1] - data[i];
-        printf(", plane_offsets:");
-        for (i = 0; i < 3; i++)
-            printf(" %5"PTRDIFF_SPECIFIER, offsets[i]);
-        printf(", total_size: %d\n", total_size);
+        basic_tests(pix_fmt, w, h);
+        printf("\n");
     }
 
     return 0;
-- 
2.35.3

_______________________________________________
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] 45+ messages in thread

end of thread, other threads:[~2023-12-14  8:03 UTC | newest]

Thread overview: 45+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2023-12-03  0:27 [FFmpeg-devel] [PATCH 1/7] avutil/tests/imgutils: factorize basic tests to new function Marton Balint
2023-12-03  0:27 ` [FFmpeg-devel] [PATCH 2/7] avutil/tests/imgutils: add tests for av_image_fill_black() Marton Balint
2023-12-03 23:47   ` Stefano Sabatini
2023-12-03  0:27 ` [FFmpeg-devel] [PATCH 3/7] avutil/imgutils: fix av_image_fill_black() for some pixel formats Marton Balint
2023-12-04  0:23   ` Stefano Sabatini
2023-12-03  0:27 ` [FFmpeg-devel] [PATCH 4/7] avutil/imgutils: add support for 32bit pixel format for av_image_fill_black() Marton Balint
2023-12-04  0:52   ` Stefano Sabatini
2023-12-03  0:27 ` [FFmpeg-devel] [PATCH 5/7] avutil/imgutils: factorize a fill color function Marton Balint
2023-12-04  1:04   ` Stefano Sabatini
2023-12-03  0:27 ` [FFmpeg-devel] [PATCH 6/7] avutil/imgutils: add new function av_image_fill_color() Marton Balint
2023-12-04  1:07   ` Stefano Sabatini
2023-12-03  0:27 ` [FFmpeg-devel] [PATCH 7/7] avcodec: add AV_CODEC_FLAG_CLEAR Marton Balint
2023-12-03 21:31 ` [FFmpeg-devel] [PATCH 1/7] avutil/tests/imgutils: factorize basic tests to new function Stefano Sabatini
2023-12-06  8:22   ` [FFmpeg-devel] [PATCH v2 " Marton Balint
2023-12-06  8:22     ` [FFmpeg-devel] [PATCH v2 2/7] avutil/tests/imgutils: add tests for av_image_fill_black() Marton Balint
2023-12-06 22:46       ` Stefano Sabatini
2023-12-06  8:22     ` [FFmpeg-devel] [PATCH v2 3/7] avutil/imgutils: fix av_image_fill_black() for some pixel formats Marton Balint
2023-12-06 22:47       ` Stefano Sabatini
2023-12-06  8:22     ` [FFmpeg-devel] [PATCH v2 4/7] avutil/imgutils: add support for 32bit pixel format for av_image_fill_black() Marton Balint
2023-12-06 22:48       ` Stefano Sabatini
2023-12-06  8:22     ` [FFmpeg-devel] [PATCH v2 5/7] avutil/imgutils: factorize a fill color function Marton Balint
2023-12-06 22:52       ` Stefano Sabatini
2023-12-06  8:22     ` [FFmpeg-devel] [PATCH v2 6/7] avutil/imgutils: add new function av_image_fill_color() Marton Balint
2023-12-06 22:53       ` Stefano Sabatini
2023-12-07 16:15       ` Anton Khirnov
2023-12-09 19:25         ` [FFmpeg-devel] [PATCH v3 " Marton Balint
2023-12-11 23:05           ` Stefano Sabatini
2023-12-12 18:45             ` Marton Balint
2023-12-06  8:22     ` [FFmpeg-devel] [PATCH v2 7/7] avcodec: add AV_CODEC_FLAG_CLEAR Marton Balint
2023-12-06 22:57       ` Stefano Sabatini
2023-12-07  1:44       ` Ronald S. Bultje
2023-12-07 16:19         ` Anton Khirnov
2023-12-07 22:47           ` Marton Balint
2023-12-08  5:12             ` Rémi Denis-Courmont
2023-12-07  2:37       ` Vittorio Giovara
2023-12-07 16:30       ` Anton Khirnov
2023-12-07 23:11         ` Marton Balint
2023-12-11 20:49           ` Mark Thompson
2023-12-12 11:23           ` Anton Khirnov
2023-12-12 18:37             ` Marton Balint
2023-12-13  8:59               ` Anton Khirnov
2023-12-13 17:09                 ` Marton Balint
2023-12-14  8:03                   ` Anton Khirnov
2023-12-12 22:18             ` Michael Niedermayer
2023-12-06 22:43     ` [FFmpeg-devel] [PATCH v2 1/7] avutil/tests/imgutils: factorize basic tests to new function Stefano Sabatini

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