summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--ivfenc.c3
-rw-r--r--vpxenc.c19
2 files changed, 14 insertions, 8 deletions
diff --git a/ivfenc.c b/ivfenc.c
index fa92566f8..611d6676f 100644
--- a/ivfenc.c
+++ b/ivfenc.c
@@ -20,9 +20,6 @@ void ivf_write_file_header(FILE *outfile,
int frame_cnt) {
char header[32];
- if (cfg->g_pass != VPX_RC_ONE_PASS && cfg->g_pass != VPX_RC_LAST_PASS)
- return;
-
header[0] = 'D';
header[1] = 'K';
header[2] = 'I';
diff --git a/vpxenc.c b/vpxenc.c
index 4c933ce6f..91a155cf6 100644
--- a/vpxenc.c
+++ b/vpxenc.c
@@ -1393,6 +1393,10 @@ static void show_stream_config(struct stream_state *stream,
static void open_output_file(struct stream_state *stream,
struct VpxEncoderConfig *global) {
const char *fn = stream->config.out_fn;
+ const struct vpx_codec_enc_cfg *const cfg = &stream->config.cfg;
+
+ if (cfg->g_pass == VPX_RC_FIRST_PASS)
+ return;
stream->file = strcmp(fn, "-") ? fopen(fn, "wb") : set_binary_mode(stdout);
@@ -1404,18 +1408,23 @@ static void open_output_file(struct stream_state *stream,
if (stream->config.write_webm) {
stream->ebml.stream = stream->file;
- write_webm_file_header(&stream->ebml, &stream->config.cfg,
+ write_webm_file_header(&stream->ebml, cfg,
&global->framerate,
stream->config.stereo_fmt,
global->codec->fourcc);
- } else
- ivf_write_file_header(stream->file, &stream->config.cfg,
- global->codec->fourcc, 0);
+ } else {
+ ivf_write_file_header(stream->file, cfg, global->codec->fourcc, 0);
+ }
}
static void close_output_file(struct stream_state *stream,
- unsigned int fourcc) {
+ unsigned int fourcc) {
+ const struct vpx_codec_enc_cfg *const cfg = &stream->config.cfg;
+
+ if (cfg->g_pass == VPX_RC_FIRST_PASS)
+ return;
+
if (stream->config.write_webm) {
write_webm_file_footer(&stream->ebml, stream->hash);
free(stream->ebml.cue_list);