FFmpeg
libavutil
mips
pixelutils.h
Go to the documentation of this file.
1
/*
2
* This file is part of FFmpeg.
3
*
4
* FFmpeg is free software; you can redistribute it and/or
5
* modify it under the terms of the GNU Lesser General Public
6
* License as published by the Free Software Foundation; either
7
* version 2.1 of the License, or (at your option) any later version.
8
*
9
* FFmpeg is distributed in the hope that it will be useful,
10
* but WITHOUT ANY WARRANTY; without even the implied warranty of
11
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
12
* Lesser General Public License for more details.
13
*
14
* You should have received a copy of the GNU Lesser General Public
15
* License along with FFmpeg; if not, write to the Free Software
16
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
17
*/
18
19
#ifndef AVUTIL_MIPS_PIXELUTILS_H
20
#define AVUTIL_MIPS_PIXELUTILS_H
21
22
#include <stddef.h>
23
#include <stdint.h>
24
25
#include "
cpu.h
"
26
#include "
libavutil/attributes.h
"
27
#include "
libavutil/cpu.h
"
28
#include "
libavutil/pixelutils.h
"
29
30
int
ff_pixelutils_sad16_msa
(
const
uint8_t *
src1
, ptrdiff_t stride1,
31
const
uint8_t *
src2
, ptrdiff_t stride2);
32
33
static
inline
av_cold
void
ff_pixelutils_sad_init_mips
(
av_pixelutils_sad_fn
*sad,
int
aligned
)
34
{
35
int
cpu_flags
=
av_get_cpu_flags
();
36
37
if
(
have_msa
(
cpu_flags
)) {
38
sad[3] =
ff_pixelutils_sad16_msa
;
39
}
40
}
41
#endif
src1
const pixel * src1
Definition:
h264pred_template.c:420
ff_pixelutils_sad16_msa
int ff_pixelutils_sad16_msa(const uint8_t *src1, ptrdiff_t stride1, const uint8_t *src2, ptrdiff_t stride2)
Definition:
pixelutils_msa.c:27
av_pixelutils_sad_fn
int(* av_pixelutils_sad_fn)(const uint8_t *src1, ptrdiff_t stride1, const uint8_t *src2, ptrdiff_t stride2)
Sum of abs(src1[x] - src2[x])
Definition:
pixelutils.h:28
av_get_cpu_flags
int av_get_cpu_flags(void)
Return the flags which specify extensions supported by the CPU.
Definition:
cpu.c:109
cpu_flags
static atomic_int cpu_flags
Definition:
cpu.c:56
aligned
static int aligned(int val)
Definition:
dashdec.c:172
av_cold
#define av_cold
Definition:
attributes.h:106
have_msa
#define have_msa(flags)
Definition:
cpu.h:26
ff_pixelutils_sad_init_mips
static av_cold void ff_pixelutils_sad_init_mips(av_pixelutils_sad_fn *sad, int aligned)
Definition:
pixelutils.h:33
cpu.h
pixelutils.h
attributes.h
src2
const pixel * src2
Definition:
h264pred_template.c:421
Generated on Sun Mar 15 2026 19:23:36 for FFmpeg by
1.8.17