2 * This file is part of FFmpeg.
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.
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.
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
19#ifndef FFTOOLS_FFMPEG_UTILS_H
20#define FFTOOLS_FFMPEG_UTILS_H
36 * Merge two return codes - return one of the error codes if at least one of
37 * them was negative, 0 otherwise.
41 // prefer "real" errors over EOF
44 return (err0 < 0) ? err0 :
FFMIN(err1, 0);
48 * Wrapper calling av_frame_side_data_clone() in a loop for all source entries.
49 * It does not clear dst beforehand. */
54 for (
int i = 0;
i < nb_src;
i++) {
63#endif // FFTOOLS_FFMPEG_UTILS_H
uint8_t ptrdiff_t const uint8_t ptrdiff_t int intptr_t intptr_t int int16_t * dst
#define flags(name, subs,...)
#define i(width, name, range_min, range_max)
common internal and external API header
static int err_merge(int err0, int err1)
Merge two return codes - return one of the error codes if at least one of them was negative,...
static int clone_side_data(AVFrameSideData ***dst, int *nb_dst, AVFrameSideData *const *src, int nb_src, unsigned int flags)
Wrapper calling av_frame_side_data_clone() in a loop for all source entries.
reference-counted frame API
#define AVERROR_EOF
End of file.
int av_frame_side_data_clone(AVFrameSideData ***sd, int *nb_sd, const AVFrameSideData *src, unsigned int flags)
Add a new side data entry to an array based on existing side data, taking a reference towards the con...
Utilities for rational number calculation.
Structure to hold side data for an AVFrame.
Rational number (pair of numerator and denominator).