Skip to content
Projects
Groups
Snippets
Help
Loading...
Help
Contribute to GitLab
Sign in / Register
Toggle navigation
F
ffmpeg.wasm-core
Project
Project
Details
Activity
Cycle Analytics
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Charts
Issues
0
Issues
0
List
Board
Labels
Milestones
Merge Requests
0
Merge Requests
0
CI / CD
CI / CD
Pipelines
Jobs
Schedules
Charts
Wiki
Wiki
Snippets
Snippets
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Charts
Create a new issue
Jobs
Commits
Issue Boards
Open sidebar
Linshizhi
ffmpeg.wasm-core
Commits
8941971a
Commit
8941971a
authored
Oct 27, 2013
by
Anton Khirnov
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
lavc: make error_rate a private option of mpegvideo encoders
parent
728c4658
Hide whitespace changes
Inline
Side-by-side
Showing
6 changed files
with
29 additions
and
7 deletions
+29
-7
APIchanges
doc/APIchanges
+4
-0
avcodec.h
libavcodec/avcodec.h
+5
-3
mpegvideo.h
libavcodec/mpegvideo.h
+5
-1
mpegvideo_enc.c
libavcodec/mpegvideo_enc.c
+9
-2
options_table.h
libavcodec/options_table.h
+2
-0
version.h
libavcodec/version.h
+4
-1
No files found.
doc/APIchanges
View file @
8941971a
...
...
@@ -13,6 +13,10 @@ libavutil: 2012-10-22
API changes, most recent first:
2013-10-xx - xxxxxxx - lavc 55.27.0 - avcodec.h
Deprecate AVCodecContext.error_rate, it is replaced by the 'error_rate'
private option of the mpegvideo encoder family.
2013-11-xx - xxxxxxx - lavc 55.26.0 - vdpau.h
Add av_vdpau_get_profile().
Add av_vdpau_alloc_context(). This function must from now on be
...
...
libavcodec/avcodec.h
View file @
8941971a
...
...
@@ -2686,12 +2686,14 @@ typedef struct AVCodecContext {
uint8_t
*
subtitle_header
;
int
subtitle_header_size
;
#if FF_API_ERROR_RATE
/**
* Simulates errors in the bitstream to test error concealment.
* - encoding: Set by user.
* - decoding: unused
* @deprecated use the 'error_rate' private AVOption of the mpegvideo
* encoders
*/
attribute_deprecated
int
error_rate
;
#endif
#if FF_API_CODEC_PKT
/**
...
...
libavcodec/mpegvideo.h
View file @
8941971a
...
...
@@ -727,6 +727,8 @@ typedef struct MpegEncContext {
int
context_reinit
;
ERContext
er
;
int
error_rate
;
}
MpegEncContext
;
#define REBASE_PICTURE(pic, new_ctx, old_ctx) \
...
...
@@ -752,7 +754,9 @@ typedef struct MpegEncContext {
FF_MPV_OFFSET(luma_elim_threshold), AV_OPT_TYPE_INT, { .i64 = 0 }, INT_MIN, INT_MAX, FF_MPV_OPT_FLAGS },\
{ "chroma_elim_threshold", "single coefficient elimination threshold for chrominance (negative values also consider dc coefficient)",\
FF_MPV_OFFSET(chroma_elim_threshold), AV_OPT_TYPE_INT, { .i64 = 0 }, INT_MIN, INT_MAX, FF_MPV_OPT_FLAGS },\
{ "quantizer_noise_shaping", NULL, FF_MPV_OFFSET(quantizer_noise_shaping), AV_OPT_TYPE_INT, { .i64 = 0 }, 0, INT_MAX, FF_MPV_OPT_FLAGS },
{ "quantizer_noise_shaping", NULL, FF_MPV_OFFSET(quantizer_noise_shaping), AV_OPT_TYPE_INT, { .i64 = 0 }, 0, INT_MAX, FF_MPV_OPT_FLAGS },\
{ "error_rate", "Simulate errors in the bitstream to test error concealment.", \
FF_MPV_OFFSET(error_rate), AV_OPT_TYPE_INT, { .i64 = 0 }, 0, INT_MAX, FF_MPV_OPT_FLAGS },
extern
const
AVOption
ff_mpv_generic_options
[];
...
...
libavcodec/mpegvideo_enc.c
View file @
8941971a
...
...
@@ -769,6 +769,13 @@ av_cold int ff_MPV_encode_init(AVCodecContext *avctx)
if
(
ff_rate_control_init
(
s
)
<
0
)
return
-
1
;
#if FF_API_ERROR_RATE
FF_DISABLE_DEPRECATION_WARNINGS
if
(
avctx
->
error_rate
)
s
->
error_rate
=
avctx
->
error_rate
;
FF_ENABLE_DEPRECATION_WARNINGS
;
#endif
return
0
;
}
...
...
@@ -2421,9 +2428,9 @@ static int encode_thread(AVCodecContext *c, void *arg){
assert
((
put_bits_count
(
&
s
->
pb
)
&
7
)
==
0
);
current_packet_size
=
put_bits_ptr
(
&
s
->
pb
)
-
s
->
ptr_lastgob
;
if
(
s
->
avctx
->
error_rate
&&
s
->
resync_mb_x
+
s
->
resync_mb_y
>
0
)
{
if
(
s
->
error_rate
&&
s
->
resync_mb_x
+
s
->
resync_mb_y
>
0
)
{
int
r
=
put_bits_count
(
&
s
->
pb
)
/
8
+
s
->
picture_number
+
16
+
s
->
mb_x
+
s
->
mb_y
;
int
d
=
100
/
s
->
avctx
->
error_rate
;
int
d
=
100
/
s
->
error_rate
;
if
(
r
%
d
==
0
){
current_packet_size
=
0
;
s
->
pb
.
buf_ptr
=
s
->
ptr_lastgob
;
...
...
libavcodec/options_table.h
View file @
8941971a
...
...
@@ -287,7 +287,9 @@ static const AVOption avcodec_options[] = {
{
"nr"
,
"noise reduction"
,
OFFSET
(
noise_reduction
),
AV_OPT_TYPE_INT
,
{.
i64
=
DEFAULT
},
INT_MIN
,
INT_MAX
,
V
|
E
},
{
"rc_init_occupancy"
,
"number of bits which should be loaded into the rc buffer before decoding starts"
,
OFFSET
(
rc_initial_buffer_occupancy
),
AV_OPT_TYPE_INT
,
{.
i64
=
DEFAULT
},
INT_MIN
,
INT_MAX
,
V
|
E
},
{
"flags2"
,
NULL
,
OFFSET
(
flags2
),
AV_OPT_TYPE_FLAGS
,
{.
i64
=
DEFAULT
},
0
,
UINT_MAX
,
V
|
A
|
E
|
D
,
"flags2"
},
#if FF_API_ERROR_RATE
{
"error"
,
NULL
,
OFFSET
(
error_rate
),
AV_OPT_TYPE_INT
,
{.
i64
=
DEFAULT
},
INT_MIN
,
INT_MAX
,
V
|
E
},
#endif
{
"threads"
,
NULL
,
OFFSET
(
thread_count
),
AV_OPT_TYPE_INT
,
{.
i64
=
1
},
0
,
INT_MAX
,
V
|
E
|
D
,
"threads"
},
{
"auto"
,
"autodetect a suitable number of threads to use"
,
0
,
AV_OPT_TYPE_CONST
,
{.
i64
=
0
},
INT_MIN
,
INT_MAX
,
V
|
E
|
D
,
"threads"
},
{
"me_threshold"
,
"motion estimation threshold"
,
OFFSET
(
me_threshold
),
AV_OPT_TYPE_INT
,
{.
i64
=
DEFAULT
},
INT_MIN
,
INT_MAX
,
V
|
E
},
...
...
libavcodec/version.h
View file @
8941971a
...
...
@@ -27,7 +27,7 @@
*/
#define LIBAVCODEC_VERSION_MAJOR 55
#define LIBAVCODEC_VERSION_MINOR 2
6
#define LIBAVCODEC_VERSION_MINOR 2
7
#define LIBAVCODEC_VERSION_MICRO 0
#define LIBAVCODEC_VERSION_INT AV_VERSION_INT(LIBAVCODEC_VERSION_MAJOR, \
...
...
@@ -100,5 +100,8 @@
#ifndef FF_API_XVMC
#define FF_API_XVMC (LIBAVCODEC_VERSION_MAJOR < 56)
#endif
#ifndef FF_API_ERROR_RATE
#define FF_API_ERROR_RATE (LIBAVCODEC_VERSION_MAJOR < 56)
#endif
#endif
/* AVCODEC_VERSION_H */
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