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
20c21f8b
Commit
20c21f8b
authored
Aug 23, 2011
by
Anton Khirnov
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
cmdutils: get rid of dummy contexts for examining AVOptions.
Replace it with newly introduced libavutil API.
parent
fb4ca26b
Hide whitespace changes
Inline
Side-by-side
Showing
5 changed files
with
32 additions
and
32 deletions
+32
-32
avconv.c
avconv.c
+7
-3
avplay.c
avplay.c
+7
-3
avprobe.c
avprobe.c
+2
-5
cmdutils.c
cmdutils.c
+9
-18
ffmpeg.c
ffmpeg.c
+7
-3
No files found.
avconv.c
View file @
20c21f8b
...
...
@@ -3782,6 +3782,7 @@ static void show_help(void)
AVCodec
*
c
;
AVOutputFormat
*
oformat
=
NULL
;
AVInputFormat
*
iformat
=
NULL
;
const
AVClass
*
class
;
av_log_set_callback
(
log_callback_help
);
show_usage
();
...
...
@@ -3809,7 +3810,8 @@ static void show_help(void)
OPT_GRAB
,
OPT_GRAB
);
printf
(
"
\n
"
);
av_opt_show2
(
avcodec_opts
[
0
],
NULL
,
AV_OPT_FLAG_ENCODING_PARAM
|
AV_OPT_FLAG_DECODING_PARAM
,
0
);
class
=
avcodec_get_class
();
av_opt_show2
(
&
class
,
NULL
,
AV_OPT_FLAG_ENCODING_PARAM
|
AV_OPT_FLAG_DECODING_PARAM
,
0
);
printf
(
"
\n
"
);
/* individual codec options */
...
...
@@ -3821,7 +3823,8 @@ static void show_help(void)
}
}
av_opt_show2
(
avformat_opts
,
NULL
,
AV_OPT_FLAG_ENCODING_PARAM
|
AV_OPT_FLAG_DECODING_PARAM
,
0
);
class
=
avformat_get_class
();
av_opt_show2
(
&
class
,
NULL
,
AV_OPT_FLAG_ENCODING_PARAM
|
AV_OPT_FLAG_DECODING_PARAM
,
0
);
printf
(
"
\n
"
);
/* individual muxer options */
...
...
@@ -3840,7 +3843,8 @@ static void show_help(void)
}
}
av_opt_show2
(
sws_opts
,
NULL
,
AV_OPT_FLAG_ENCODING_PARAM
|
AV_OPT_FLAG_DECODING_PARAM
,
0
);
class
=
sws_get_class
();
av_opt_show2
(
&
class
,
NULL
,
AV_OPT_FLAG_ENCODING_PARAM
|
AV_OPT_FLAG_DECODING_PARAM
,
0
);
}
static
int
opt_target
(
const
char
*
opt
,
const
char
*
arg
)
...
...
avplay.c
View file @
20c21f8b
...
...
@@ -2974,6 +2974,7 @@ static void show_usage(void)
static
void
show_help
(
void
)
{
const
AVClass
*
class
;
av_log_set_callback
(
log_callback_help
);
show_usage
();
show_help_options
(
options
,
"Main options:
\n
"
,
...
...
@@ -2981,14 +2982,17 @@ static void show_help(void)
show_help_options
(
options
,
"
\n
Advanced options:
\n
"
,
OPT_EXPERT
,
OPT_EXPERT
);
printf
(
"
\n
"
);
av_opt_show2
(
avcodec_opts
[
0
],
NULL
,
class
=
avcodec_get_class
();
av_opt_show2
(
&
class
,
NULL
,
AV_OPT_FLAG_DECODING_PARAM
,
0
);
printf
(
"
\n
"
);
av_opt_show2
(
avformat_opts
,
NULL
,
class
=
avformat_get_class
();
av_opt_show2
(
&
class
,
NULL
,
AV_OPT_FLAG_DECODING_PARAM
,
0
);
#if !CONFIG_AVFILTER
printf
(
"
\n
"
);
av_opt_show2
(
sws_opts
,
NULL
,
class
=
sws_get_class
();
av_opt_show2
(
&
class
,
NULL
,
AV_OPT_FLAG_ENCODING_PARAM
,
0
);
#endif
printf
(
"
\n
While playing:
\n
"
...
...
avprobe.c
View file @
20c21f8b
...
...
@@ -355,11 +355,12 @@ static void opt_input_file(const char *arg)
static
void
show_help
(
void
)
{
const
AVClass
*
class
=
avformat_get_class
();
av_log_set_callback
(
log_callback_help
);
show_usage
();
show_help_options
(
options
,
"Main options:
\n
"
,
0
,
0
);
printf
(
"
\n
"
);
av_opt_show2
(
avformat_opt
s
,
NULL
,
av_opt_show2
(
&
clas
s
,
NULL
,
AV_OPT_FLAG_DECODING_PARAM
,
0
);
}
...
...
@@ -399,8 +400,6 @@ int main(int argc, char **argv)
avdevice_register_all
();
#endif
avformat_opts
=
avformat_alloc_context
();
show_banner
();
parse_options
(
argc
,
argv
,
options
,
opt_input_file
);
...
...
@@ -413,7 +412,5 @@ int main(int argc, char **argv)
ret
=
probe_file
(
input_filename
);
av_free
(
avformat_opts
);
return
ret
;
}
cmdutils.c
View file @
20c21f8b
...
...
@@ -49,8 +49,6 @@
#include <sys/resource.h>
#endif
AVCodecContext
*
avcodec_opts
[
AVMEDIA_TYPE_NB
];
AVFormatContext
*
avformat_opts
;
struct
SwsContext
*
sws_opts
;
AVDictionary
*
format_opts
,
*
codec_opts
;
...
...
@@ -58,10 +56,6 @@ static const int this_year = 2011;
void
init_opts
(
void
)
{
int
i
;
for
(
i
=
0
;
i
<
AVMEDIA_TYPE_NB
;
i
++
)
avcodec_opts
[
i
]
=
avcodec_alloc_context3
(
NULL
);
avformat_opts
=
avformat_alloc_context
();
#if CONFIG_SWSCALE
sws_opts
=
sws_getContext
(
16
,
16
,
0
,
16
,
16
,
0
,
SWS_BICUBIC
,
NULL
,
NULL
,
NULL
);
#endif
...
...
@@ -69,11 +63,6 @@ void init_opts(void)
void
uninit_opts
(
void
)
{
int
i
;
for
(
i
=
0
;
i
<
AVMEDIA_TYPE_NB
;
i
++
)
av_freep
(
&
avcodec_opts
[
i
]);
av_freep
(
&
avformat_opts
->
key
);
av_freep
(
&
avformat_opts
);
#if CONFIG_SWSCALE
sws_freeContext
(
sws_opts
);
sws_opts
=
NULL
;
...
...
@@ -291,18 +280,19 @@ int opt_default(const char *opt, const char *arg)
const
AVOption
*
o
;
char
opt_stripped
[
128
];
const
char
*
p
;
const
AVClass
*
cc
=
avcodec_get_class
(),
*
fc
=
avformat_get_class
(),
*
sc
=
sws_get_class
();
if
(
!
(
p
=
strchr
(
opt
,
':'
)))
p
=
opt
+
strlen
(
opt
);
av_strlcpy
(
opt_stripped
,
opt
,
FFMIN
(
sizeof
(
opt_stripped
),
p
-
opt
+
1
));
if
((
o
=
av_opt_find
(
avcodec_opts
[
0
],
opt_stripped
,
NULL
,
0
,
AV_OPT_SEARCH_CHILDREN
))
||
if
((
o
=
av_opt_find
(
&
cc
,
opt_stripped
,
NULL
,
0
,
AV_OPT_SEARCH_CHILDREN
|
AV_OPT_SEARCH_FAKE_OBJ
))
||
((
opt
[
0
]
==
'v'
||
opt
[
0
]
==
'a'
||
opt
[
0
]
==
's'
)
&&
(
o
=
av_opt_find
(
avcodec_opts
[
0
],
opt
+
1
,
NULL
,
0
,
0
))))
(
o
=
av_opt_find
(
&
cc
,
opt
+
1
,
NULL
,
0
,
AV_OPT_SEARCH_FAKE_OBJ
))))
av_dict_set
(
&
codec_opts
,
opt
,
arg
,
FLAGS
);
else
if
((
o
=
av_opt_find
(
avformat_opts
,
opt
,
NULL
,
0
,
AV_OPT_SEARCH_CHILDREN
)))
else
if
((
o
=
av_opt_find
(
&
fc
,
opt
,
NULL
,
0
,
AV_OPT_SEARCH_CHILDREN
|
AV_OPT_SEARCH_FAKE_OBJ
)))
av_dict_set
(
&
format_opts
,
opt
,
arg
,
FLAGS
);
else
if
((
o
=
av_opt_find
(
sws_opts
,
opt
,
NULL
,
0
,
AV_OPT_SEARCH_CHILDREN
)))
{
else
if
((
o
=
av_opt_find
(
&
sc
,
opt
,
NULL
,
0
,
AV_OPT_SEARCH_CHILDREN
|
AV_OPT_SEARCH_FAKE_OBJ
)))
{
// XXX we only support sws_flags, not arbitrary sws options
int
ret
=
av_set_string3
(
sws_opts
,
opt
,
arg
,
1
,
NULL
);
if
(
ret
<
0
)
{
...
...
@@ -826,6 +816,7 @@ AVDictionary *filter_codec_opts(AVDictionary *opts, enum CodecID codec_id, AVFor
AVCodec
*
codec
=
s
->
oformat
?
avcodec_find_encoder
(
codec_id
)
:
avcodec_find_decoder
(
codec_id
);
int
flags
=
s
->
oformat
?
AV_OPT_FLAG_ENCODING_PARAM
:
AV_OPT_FLAG_DECODING_PARAM
;
char
prefix
=
0
;
const
AVClass
*
cc
=
avcodec_get_class
();
if
(
!
codec
)
return
NULL
;
...
...
@@ -847,10 +838,10 @@ AVDictionary *filter_codec_opts(AVDictionary *opts, enum CodecID codec_id, AVFor
default:
return
NULL
;
}
if
(
av_opt_find
(
avcodec_opts
[
0
],
t
->
key
,
NULL
,
flags
,
0
)
||
(
codec
&&
codec
->
priv_class
&&
av_opt_find
(
&
codec
->
priv_class
,
t
->
key
,
NULL
,
flags
,
0
)))
if
(
av_opt_find
(
&
cc
,
t
->
key
,
NULL
,
flags
,
AV_OPT_SEARCH_FAKE_OBJ
)
||
(
codec
&&
codec
->
priv_class
&&
av_opt_find
(
&
codec
->
priv_class
,
t
->
key
,
NULL
,
flags
,
AV_OPT_SEARCH_FAKE_OBJ
)))
av_dict_set
(
&
ret
,
t
->
key
,
t
->
value
,
0
);
else
if
(
t
->
key
[
0
]
==
prefix
&&
av_opt_find
(
avcodec_opts
[
0
],
t
->
key
+
1
,
NULL
,
flags
,
0
))
else
if
(
t
->
key
[
0
]
==
prefix
&&
av_opt_find
(
&
cc
,
t
->
key
+
1
,
NULL
,
flags
,
AV_OPT_SEARCH_FAKE_OBJ
))
av_dict_set
(
&
ret
,
t
->
key
+
1
,
t
->
value
,
0
);
if
(
p
)
...
...
ffmpeg.c
View file @
20c21f8b
...
...
@@ -3947,6 +3947,7 @@ static void show_help(void)
AVCodec
*
c
;
AVOutputFormat
*
oformat
=
NULL
;
AVInputFormat
*
iformat
=
NULL
;
const
AVClass
*
class
;
av_log_set_callback
(
log_callback_help
);
show_usage
();
...
...
@@ -3974,7 +3975,8 @@ static void show_help(void)
OPT_GRAB
,
OPT_GRAB
);
printf
(
"
\n
"
);
av_opt_show2
(
avcodec_opts
[
0
],
NULL
,
AV_OPT_FLAG_ENCODING_PARAM
|
AV_OPT_FLAG_DECODING_PARAM
,
0
);
class
=
avcodec_get_class
();
av_opt_show2
(
&
class
,
NULL
,
AV_OPT_FLAG_ENCODING_PARAM
|
AV_OPT_FLAG_DECODING_PARAM
,
0
);
printf
(
"
\n
"
);
/* individual codec options */
...
...
@@ -3986,7 +3988,8 @@ static void show_help(void)
}
}
av_opt_show2
(
avformat_opts
,
NULL
,
AV_OPT_FLAG_ENCODING_PARAM
|
AV_OPT_FLAG_DECODING_PARAM
,
0
);
class
=
avformat_get_class
();
av_opt_show2
(
&
class
,
NULL
,
AV_OPT_FLAG_ENCODING_PARAM
|
AV_OPT_FLAG_DECODING_PARAM
,
0
);
printf
(
"
\n
"
);
/* individual muxer options */
...
...
@@ -4005,7 +4008,8 @@ static void show_help(void)
}
}
av_opt_show2
(
sws_opts
,
NULL
,
AV_OPT_FLAG_ENCODING_PARAM
|
AV_OPT_FLAG_DECODING_PARAM
,
0
);
class
=
sws_get_class
();
av_opt_show2
(
&
class
,
NULL
,
AV_OPT_FLAG_ENCODING_PARAM
|
AV_OPT_FLAG_DECODING_PARAM
,
0
);
}
static
int
opt_target
(
const
char
*
opt
,
const
char
*
arg
)
...
...
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