Skip to content
GitLab
Projects
Groups
Snippets
Help
Loading...
Help
Help
Support
Community forum
Keyboard shortcuts
?
Submit feedback
Contribute to GitLab
Sign in / Register
Toggle navigation
A
aom-rav1e
Project overview
Project overview
Details
Activity
Releases
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Issues
0
Issues
0
List
Boards
Labels
Service Desk
Milestones
Merge Requests
0
Merge Requests
0
CI / CD
CI / CD
Pipelines
Jobs
Schedules
Operations
Operations
Incidents
Environments
Packages & Registries
Packages & Registries
Container Registry
Analytics
Analytics
CI / CD
Repository
Value Stream
Wiki
Wiki
Snippets
Snippets
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Create a new issue
Jobs
Commits
Issue Boards
Open sidebar
Xiph.Org
aom-rav1e
Commits
c95eb4c7
Commit
c95eb4c7
authored
Jan 29, 2016
by
James Zern
Committed by
Gerrit Code Review
Jan 29, 2016
Browse files
Options
Browse Files
Download
Plain Diff
Merge "vp10: fix encoder crash on flush"
parents
421bb4d4
a7beb23d
Changes
3
Hide whitespace changes
Inline
Side-by-side
Showing
3 changed files
with
70 additions
and
1 deletion
+70
-1
test/encode_api_test.cc
test/encode_api_test.cc
+68
-0
test/test.mk
test/test.mk
+1
-0
vp10/encoder/lookahead.c
vp10/encoder/lookahead.c
+1
-1
No files found.
test/encode_api_test.cc
0 → 100644
View file @
c95eb4c7
/*
* Copyright (c) 2016 The WebM project authors. All Rights Reserved.
*
* Use of this source code is governed by a BSD-style license
* that can be found in the LICENSE file in the root of the source
* tree. An additional intellectual property rights grant can be found
* in the file PATENTS. All contributing project authors may
* be found in the AUTHORS file in the root of the source tree.
*/
#include "third_party/googletest/src/include/gtest/gtest.h"
#include "./vpx_config.h"
#include "vpx/vp8cx.h"
#include "vpx/vpx_encoder.h"
namespace
{
#define NELEMENTS(x) static_cast<int>(sizeof(x) / sizeof(x[0]))
TEST
(
EncodeAPI
,
InvalidParams
)
{
static
const
vpx_codec_iface_t
*
kCodecs
[]
=
{
#if CONFIG_VP8_ENCODER
&
vpx_codec_vp8_cx_algo
,
#endif
#if CONFIG_VP9_ENCODER
&
vpx_codec_vp9_cx_algo
,
#endif
#if CONFIG_VP10_ENCODER
&
vpx_codec_vp10_cx_algo
,
#endif
};
uint8_t
buf
[
1
]
=
{
0
};
vpx_image_t
img
;
vpx_codec_ctx_t
enc
;
vpx_codec_enc_cfg_t
cfg
;
EXPECT_EQ
(
&
img
,
vpx_img_wrap
(
&
img
,
VPX_IMG_FMT_I420
,
1
,
1
,
1
,
buf
));
EXPECT_EQ
(
VPX_CODEC_INVALID_PARAM
,
vpx_codec_enc_init
(
NULL
,
NULL
,
NULL
,
0
));
EXPECT_EQ
(
VPX_CODEC_INVALID_PARAM
,
vpx_codec_enc_init
(
&
enc
,
NULL
,
NULL
,
0
));
EXPECT_EQ
(
VPX_CODEC_INVALID_PARAM
,
vpx_codec_encode
(
NULL
,
NULL
,
0
,
0
,
0
,
0
));
EXPECT_EQ
(
VPX_CODEC_INVALID_PARAM
,
vpx_codec_encode
(
NULL
,
&
img
,
0
,
0
,
0
,
0
));
EXPECT_EQ
(
VPX_CODEC_INVALID_PARAM
,
vpx_codec_destroy
(
NULL
));
EXPECT_EQ
(
VPX_CODEC_INVALID_PARAM
,
vpx_codec_enc_config_default
(
NULL
,
NULL
,
0
));
EXPECT_EQ
(
VPX_CODEC_INVALID_PARAM
,
vpx_codec_enc_config_default
(
NULL
,
&
cfg
,
0
));
EXPECT_TRUE
(
vpx_codec_error
(
NULL
)
!=
NULL
);
for
(
int
i
=
0
;
i
<
NELEMENTS
(
kCodecs
);
++
i
)
{
SCOPED_TRACE
(
vpx_codec_iface_name
(
kCodecs
[
i
]));
EXPECT_EQ
(
VPX_CODEC_INVALID_PARAM
,
vpx_codec_enc_init
(
NULL
,
kCodecs
[
i
],
NULL
,
0
));
EXPECT_EQ
(
VPX_CODEC_INVALID_PARAM
,
vpx_codec_enc_init
(
&
enc
,
kCodecs
[
i
],
NULL
,
0
));
EXPECT_EQ
(
VPX_CODEC_INVALID_PARAM
,
vpx_codec_enc_config_default
(
kCodecs
[
i
],
&
cfg
,
1
));
EXPECT_EQ
(
VPX_CODEC_OK
,
vpx_codec_enc_config_default
(
kCodecs
[
i
],
&
cfg
,
0
));
EXPECT_EQ
(
VPX_CODEC_OK
,
vpx_codec_enc_init
(
&
enc
,
kCodecs
[
i
],
&
cfg
,
0
));
EXPECT_EQ
(
VPX_CODEC_OK
,
vpx_codec_encode
(
&
enc
,
NULL
,
0
,
0
,
0
,
0
));
EXPECT_EQ
(
VPX_CODEC_OK
,
vpx_codec_destroy
(
&
enc
));
}
}
}
// namespace
test/test.mk
View file @
c95eb4c7
...
...
@@ -18,6 +18,7 @@ LIBVPX_TEST_SRCS-$(CONFIG_DECODERS) += ivf_video_source.h
LIBVPX_TEST_SRCS-$(CONFIG_ENCODERS)
+=
../y4minput.h ../y4minput.c
LIBVPX_TEST_SRCS-$(CONFIG_ENCODERS)
+=
aq_segment_test.cc
LIBVPX_TEST_SRCS-$(CONFIG_ENCODERS)
+=
datarate_test.cc
LIBVPX_TEST_SRCS-$(CONFIG_ENCODERS)
+=
encode_api_test.cc
LIBVPX_TEST_SRCS-$(CONFIG_ENCODERS)
+=
error_resilience_test.cc
LIBVPX_TEST_SRCS-$(CONFIG_ENCODERS)
+=
i420_video_source.h
##TODO(jimbankoski): Figure out why resize is failing.
...
...
vp10/encoder/lookahead.c
View file @
c95eb4c7
...
...
@@ -192,7 +192,7 @@ struct lookahead_entry *vp10_lookahead_pop(struct lookahead_ctx *ctx,
int
drain
)
{
struct
lookahead_entry
*
buf
=
NULL
;
if
(
ctx
->
sz
&&
(
drain
||
ctx
->
sz
==
ctx
->
max_sz
-
MAX_PRE_FRAMES
))
{
if
(
ctx
&&
ctx
->
sz
&&
(
drain
||
ctx
->
sz
==
ctx
->
max_sz
-
MAX_PRE_FRAMES
))
{
buf
=
pop
(
ctx
,
&
ctx
->
read_idx
);
ctx
->
sz
--
;
}
...
...
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
.
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment