blob: 62b3a91501532e13d4e9803fd25afe6ebfaef9da [file] [log] [blame]
Tom Finegan00a35aa2013-11-14 12:37:42 -08001/*
Yaowu Xu9c01aa12016-09-01 14:32:49 -07002 * Copyright (c) 2016, Alliance for Open Media. All rights reserved
Tom Finegan00a35aa2013-11-14 12:37:42 -08003 *
Yaowu Xu9c01aa12016-09-01 14:32:49 -07004 * This source code is subject to the terms of the BSD 2 Clause License and
5 * the Alliance for Open Media Patent License 1.0. If the BSD 2 Clause License
6 * was not distributed with this source code in the LICENSE file, you can
7 * obtain it at www.aomedia.org/license/software. If the Alliance for Open
8 * Media Patent License 1.0 was not distributed with this source code in the
9 * PATENTS file, you can obtain it at www.aomedia.org/license/patent.
Tom Finegan00a35aa2013-11-14 12:37:42 -080010 */
11#ifndef IVFENC_H_
12#define IVFENC_H_
13
14#include "./tools_common.h"
15
Yaowu Xuf883b422016-08-30 14:01:10 -070016struct aom_codec_enc_cfg;
17struct aom_codec_cx_pkt;
Tom Finegan00a35aa2013-11-14 12:37:42 -080018
19#ifdef __cplusplus
20extern "C" {
21#endif
22
Yaowu Xuf883b422016-08-30 14:01:10 -070023void ivf_write_file_header(FILE *outfile, const struct aom_codec_enc_cfg *cfg,
clang-format6c4d83e2016-08-08 19:03:30 -070024 uint32_t fourcc, int frame_cnt);
Dmitry Kovalev373b0f92014-01-29 17:57:21 -080025
26void ivf_write_frame_header(FILE *outfile, int64_t pts, size_t frame_size);
27
28void ivf_write_frame_size(FILE *outfile, size_t frame_size);
Tom Finegan00a35aa2013-11-14 12:37:42 -080029
30#ifdef __cplusplus
clang-format6c4d83e2016-08-08 19:03:30 -070031} /* extern "C" */
Tom Finegan00a35aa2013-11-14 12:37:42 -080032#endif
33
James Zern0f512782013-12-15 18:40:23 -080034#endif // IVFENC_H_