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
a2aeeb22
Commit
a2aeeb22
authored
Nov 06, 2011
by
Anton Khirnov
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
avconv: move copy_initial_nonkeyframes to the options context.
Also document it.
parent
9a414d89
Hide whitespace changes
Inline
Side-by-side
Showing
2 changed files
with
12 additions
and
3 deletions
+12
-3
avconv.c
avconv.c
+8
-3
avconv.texi
doc/avconv.texi
+4
-0
No files found.
avconv.c
View file @
a2aeeb22
...
@@ -117,7 +117,6 @@ static int copy_tb;
...
@@ -117,7 +117,6 @@ static int copy_tb;
static
int
opt_shortest
=
0
;
static
int
opt_shortest
=
0
;
static
char
*
vstats_filename
;
static
char
*
vstats_filename
;
static
FILE
*
vstats_file
;
static
FILE
*
vstats_file
;
static
int
copy_initial_nonkeyframes
=
0
;
static
int
audio_volume
=
256
;
static
int
audio_volume
=
256
;
...
@@ -229,6 +228,7 @@ typedef struct OutputStream {
...
@@ -229,6 +228,7 @@ typedef struct OutputStream {
int
is_past_recording_time
;
int
is_past_recording_time
;
int
stream_copy
;
int
stream_copy
;
const
char
*
attachment_filename
;
const
char
*
attachment_filename
;
int
copy_initial_nonkeyframes
;
}
OutputStream
;
}
OutputStream
;
...
@@ -334,6 +334,8 @@ typedef struct OptionsContext {
...
@@ -334,6 +334,8 @@ typedef struct OptionsContext {
int
nb_top_field_first
;
int
nb_top_field_first
;
SpecifierOpt
*
presets
;
SpecifierOpt
*
presets
;
int
nb_presets
;
int
nb_presets
;
SpecifierOpt
*
copy_initial_nonkeyframes
;
int
nb_copy_initial_nonkeyframes
;
#if CONFIG_AVFILTER
#if CONFIG_AVFILTER
SpecifierOpt
*
filters
;
SpecifierOpt
*
filters
;
int
nb_filters
;
int
nb_filters
;
...
@@ -1817,7 +1819,8 @@ static int output_packet(InputStream *ist, int ist_index,
...
@@ -1817,7 +1819,8 @@ static int output_packet(InputStream *ist, int ist_index,
av_init_packet
(
&
opkt
);
av_init_packet
(
&
opkt
);
if
((
!
ost
->
frame_number
&&
!
(
pkt
->
flags
&
AV_PKT_FLAG_KEY
))
&&
!
copy_initial_nonkeyframes
)
if
((
!
ost
->
frame_number
&&
!
(
pkt
->
flags
&
AV_PKT_FLAG_KEY
))
&&
!
ost
->
copy_initial_nonkeyframes
)
#if !CONFIG_AVFILTER
#if !CONFIG_AVFILTER
continue
;
continue
;
#else
#else
...
@@ -3327,6 +3330,8 @@ static OutputStream *new_video_stream(OptionsContext *o, AVFormatContext *oc)
...
@@ -3327,6 +3330,8 @@ static OutputStream *new_video_stream(OptionsContext *o, AVFormatContext *oc)
MATCH_PER_STREAM_OPT
(
top_field_first
,
i
,
top_field_first
,
oc
,
st
);
MATCH_PER_STREAM_OPT
(
top_field_first
,
i
,
top_field_first
,
oc
,
st
);
ost
->
top_field_first
=
top_field_first
;
ost
->
top_field_first
=
top_field_first
;
MATCH_PER_STREAM_OPT
(
copy_initial_nonkeyframes
,
i
,
ost
->
copy_initial_nonkeyframes
,
oc
,
st
);
#if CONFIG_AVFILTER
#if CONFIG_AVFILTER
MATCH_PER_STREAM_OPT
(
filters
,
str
,
filters
,
oc
,
st
);
MATCH_PER_STREAM_OPT
(
filters
,
str
,
filters
,
oc
,
st
);
if
(
filters
)
if
(
filters
)
...
@@ -4126,7 +4131,7 @@ static const OptionDef options[] = {
...
@@ -4126,7 +4131,7 @@ static const OptionDef options[] = {
{
"shortest"
,
OPT_BOOL
|
OPT_EXPERT
,
{(
void
*
)
&
opt_shortest
},
"finish encoding within shortest input"
},
//
{
"shortest"
,
OPT_BOOL
|
OPT_EXPERT
,
{(
void
*
)
&
opt_shortest
},
"finish encoding within shortest input"
},
//
{
"dts_delta_threshold"
,
HAS_ARG
|
OPT_FLOAT
|
OPT_EXPERT
,
{(
void
*
)
&
dts_delta_threshold
},
"timestamp discontinuity delta threshold"
,
"threshold"
},
{
"dts_delta_threshold"
,
HAS_ARG
|
OPT_FLOAT
|
OPT_EXPERT
,
{(
void
*
)
&
dts_delta_threshold
},
"timestamp discontinuity delta threshold"
,
"threshold"
},
{
"xerror"
,
OPT_BOOL
,
{(
void
*
)
&
exit_on_error
},
"exit on error"
,
"error"
},
{
"xerror"
,
OPT_BOOL
,
{(
void
*
)
&
exit_on_error
},
"exit on error"
,
"error"
},
{
"copyinkf"
,
OPT_BOOL
|
OPT_EXPERT
,
{(
void
*
)
&
copy_initial_nonkeyframes
},
"copy initial non-keyframes"
},
{
"copyinkf"
,
OPT_BOOL
|
OPT_EXPERT
|
OPT_SPEC
,
{.
off
=
OFFSET
(
copy_initial_nonkeyframes
)
},
"copy initial non-keyframes"
},
{
"frames"
,
OPT_INT64
|
HAS_ARG
|
OPT_SPEC
,
{.
off
=
OFFSET
(
max_frames
)},
"set the number of frames to record"
,
"number"
},
{
"frames"
,
OPT_INT64
|
HAS_ARG
|
OPT_SPEC
,
{.
off
=
OFFSET
(
max_frames
)},
"set the number of frames to record"
,
"number"
},
{
"tag"
,
OPT_STRING
|
HAS_ARG
|
OPT_SPEC
,
{.
off
=
OFFSET
(
codec_tags
)},
"force codec tag/fourcc"
,
"fourcc/tag"
},
{
"tag"
,
OPT_STRING
|
HAS_ARG
|
OPT_SPEC
,
{.
off
=
OFFSET
(
codec_tags
)},
"force codec tag/fourcc"
,
"fourcc/tag"
},
{
"q"
,
HAS_ARG
|
OPT_EXPERT
|
OPT_DOUBLE
|
OPT_SPEC
,
{.
off
=
OFFSET
(
qscale
)},
"use fixed quality scale (VBR)"
,
"q"
},
{
"q"
,
HAS_ARG
|
OPT_EXPERT
|
OPT_DOUBLE
|
OPT_SPEC
,
{.
off
=
OFFSET
(
qscale
)},
"use fixed quality scale (VBR)"
,
"q"
},
...
...
doc/avconv.texi
View file @
a2aeeb22
...
@@ -546,6 +546,10 @@ frames after each specified time.
...
@@ -546,6 +546,10 @@ frames after each specified time.
This option can be useful to ensure that a seek point is present at a
This option can be useful to ensure that a seek point is present at a
chapter mark or any other designated place in the output file.
chapter mark or any other designated place in the output file.
The timestamps must be specified in ascending order.
The timestamps must be specified in ascending order.
@item -copyinkf[:@var
{
stream
_
specifier
}
] (@emph
{
output,per-stream
}
)
When doing stream copy, copy also non-key frames found at the
beginning.
@end table
@end table
@section Audio Options
@section Audio Options
...
...
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