diff options
Diffstat (limited to 'third_party/aom/common/video_writer.c')
-rw-r--r-- | third_party/aom/common/video_writer.c | 77 |
1 files changed, 0 insertions, 77 deletions
diff --git a/third_party/aom/common/video_writer.c b/third_party/aom/common/video_writer.c deleted file mode 100644 index a7ec309fc..000000000 --- a/third_party/aom/common/video_writer.c +++ /dev/null @@ -1,77 +0,0 @@ -/* - * Copyright (c) 2016, Alliance for Open Media. All rights reserved - * - * This source code is subject to the terms of the BSD 2 Clause License and - * the Alliance for Open Media Patent License 1.0. If the BSD 2 Clause License - * was not distributed with this source code in the LICENSE file, you can - * obtain it at www.aomedia.org/license/software. If the Alliance for Open - * Media Patent License 1.0 was not distributed with this source code in the - * PATENTS file, you can obtain it at www.aomedia.org/license/patent. - */ -#include "common/video_writer.h" - -#include <stdlib.h> - -#include "aom/aom_encoder.h" -#include "common/ivfenc.h" - -struct AvxVideoWriterStruct { - AvxVideoInfo info; - FILE *file; - int frame_count; -}; - -static void write_header(FILE *file, const AvxVideoInfo *info, - int frame_count) { - struct aom_codec_enc_cfg cfg; - cfg.g_w = info->frame_width; - cfg.g_h = info->frame_height; - cfg.g_timebase.num = info->time_base.numerator; - cfg.g_timebase.den = info->time_base.denominator; - - ivf_write_file_header(file, &cfg, info->codec_fourcc, frame_count); -} - -AvxVideoWriter *aom_video_writer_open(const char *filename, - AvxContainer container, - const AvxVideoInfo *info) { - if (container == kContainerIVF) { - AvxVideoWriter *writer = NULL; - FILE *const file = fopen(filename, "wb"); - if (!file) return NULL; - - writer = malloc(sizeof(*writer)); - if (!writer) return NULL; - - writer->frame_count = 0; - writer->info = *info; - writer->file = file; - - write_header(writer->file, info, 0); - - return writer; - } - - return NULL; -} - -void aom_video_writer_close(AvxVideoWriter *writer) { - if (writer) { - // Rewriting frame header with real frame count - rewind(writer->file); - write_header(writer->file, &writer->info, writer->frame_count); - - fclose(writer->file); - free(writer); - } -} - -int aom_video_writer_write_frame(AvxVideoWriter *writer, const uint8_t *buffer, - size_t size, int64_t pts) { - ivf_write_frame_header(writer->file, pts, size); - if (fwrite(buffer, 1, size, writer->file) != size) return 0; - - ++writer->frame_count; - - return 1; -} |