2 * Copyright (c) 2005 Robert Edele <yartrebo@earthlink.net>
4 * This file is part of FFmpeg.
6 * FFmpeg is free software; you can redistribute it and/or
7 * modify it under the terms of the GNU Lesser General Public
8 * License as published by the Free Software Foundation; either
9 * version 2.1 of the License, or (at your option) any later version.
11 * FFmpeg is distributed in the hope that it will be useful,
12 * but WITHOUT ANY WARRANTY; without even the implied warranty of
13 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
14 * Lesser General Public License for more details.
16 * You should have received a copy of the GNU Lesser General Public
17 * License along with FFmpeg; if not, write to the Free Software
18 * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
23 int ff_calculate_bounding_box(FFBoundingBox
*bbox
,
24 const uint8_t *data
, int linesize
, int w
, int h
,
35 for (start_x
= 0; start_x
< w
; start_x
++)
36 for (y
= 0; y
< h
; y
++)
37 if ((data
[y
* linesize
+ start_x
] > min_val
))
40 if (start_x
== w
) /* no points found */
44 for (end_x
= w
- 1; end_x
>= start_x
; end_x
--)
45 for (y
= 0; y
< h
; y
++)
46 if ((data
[y
* linesize
+ end_x
] > min_val
))
52 for (start_y
= 0; start_y
< h
; start_y
++) {
53 for (x
= 0; x
< w
; x
++)
54 if (line
[x
] > min_val
)
61 line
= data
+ (h
-1)*linesize
;
62 for (end_y
= h
- 1; end_y
>= start_y
; end_y
--) {
63 for (x
= 0; x
< w
; x
++)
64 if (line
[x
] > min_val
)