blob: b6b1fed4e4789e8b01c22be5f841e3f6ec3cc8e7 [file] [log] [blame]
Jingning Han3ee6db62015-08-05 19:00:31 -07001/*
Yaowu Xu9c01aa12016-09-01 14:32:49 -07002 * Copyright (c) 2016, Alliance for Open Media. All rights reserved
Jingning Han3ee6db62015-08-05 19:00:31 -07003 *
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.
Jingning Han3ee6db62015-08-05 19:00:31 -070010 */
11
Yaowu Xuf883b422016-08-30 14:01:10 -070012#ifndef AV1_ENCODER_ETHREAD_H_
13#define AV1_ENCODER_ETHREAD_H_
Jingning Han3ee6db62015-08-05 19:00:31 -070014
James Zern55f5d552015-09-09 21:05:42 -070015#ifdef __cplusplus
16extern "C" {
17#endif
18
Yaowu Xuf883b422016-08-30 14:01:10 -070019struct AV1_COMP;
Jingning Han3ee6db62015-08-05 19:00:31 -070020struct ThreadData;
21
22typedef struct EncWorkerData {
Yaowu Xuf883b422016-08-30 14:01:10 -070023 struct AV1_COMP *cpi;
Jingning Han3ee6db62015-08-05 19:00:31 -070024 struct ThreadData *td;
25 int start;
26} EncWorkerData;
27
Yaowu Xuf883b422016-08-30 14:01:10 -070028void av1_encode_tiles_mt(struct AV1_COMP *cpi);
Jingning Han3ee6db62015-08-05 19:00:31 -070029
Yue Chencc6a6ef2018-05-21 16:21:05 -070030void av1_accumulate_frame_counts(struct FRAME_COUNTS *acc_counts,
31 const struct FRAME_COUNTS *counts);
32
James Zern55f5d552015-09-09 21:05:42 -070033#ifdef __cplusplus
34} // extern "C"
35#endif
36
Yaowu Xuf883b422016-08-30 14:01:10 -070037#endif // AV1_ENCODER_ETHREAD_H_