Skip to content
体验新版
项目
组织
正在加载...
登录
切换导航
打开侧边栏
小白菜888
Ffmpeg
提交
a4ea00d0
F
Ffmpeg
项目概览
小白菜888
/
Ffmpeg
通知
3
Star
0
Fork
0
代码
文件
提交
分支
Tags
贡献者
分支图
Diff
Issue
0
列表
看板
标记
里程碑
合并请求
0
DevOps
流水线
流水线任务
计划
Wiki
0
Wiki
分析
仓库
DevOps
项目成员
Pages
F
Ffmpeg
项目概览
项目概览
详情
发布
仓库
仓库
文件
提交
分支
标签
贡献者
分支图
比较
Issue
0
Issue
0
列表
看板
标记
里程碑
合并请求
0
合并请求
0
Pages
DevOps
DevOps
流水线
流水线任务
计划
分析
分析
仓库分析
DevOps
Wiki
0
Wiki
成员
成员
收起侧边栏
关闭侧边栏
动态
分支图
创建新Issue
流水线任务
提交
Issue看板
体验新版 GitCode,发现更多精彩内容 >>
提交
a4ea00d0
编写于
10月 03, 2011
作者:
A
Anton Khirnov
浏览文件
操作
浏览文件
下载
电子邮件补丁
差异文件
lavc/lavf: use unique private classes.
This is needed by the new AVOptions API.
上级
0ba1e197
变更
3
隐藏空白更改
内联
并排
Showing
3 changed file
with
34 addition
and
16 deletion
+34
-16
libavcodec/ac3dec.c
libavcodec/ac3dec.c
+8
-2
libavformat/img2.c
libavformat/img2.c
+9
-4
libavformat/movenc.c
libavformat/movenc.c
+17
-10
未找到文件。
libavcodec/ac3dec.c
浏览文件 @
a4ea00d0
...
...
@@ -1444,7 +1444,7 @@ static const AVOption options[] = {
};
static
const
AVClass
ac3_decoder_class
=
{
.
class_name
=
"
(E-)
AC3 decoder"
,
.
class_name
=
"AC3 decoder"
,
.
item_name
=
av_default_item_name
,
.
option
=
options
,
.
version
=
LIBAVUTIL_VERSION_INT
,
...
...
@@ -1466,6 +1466,12 @@ AVCodec ff_ac3_decoder = {
};
#if CONFIG_EAC3_DECODER
static
const
AVClass
eac3_decoder_class
=
{
.
class_name
=
"E-AC3 decoder"
,
.
item_name
=
av_default_item_name
,
.
option
=
options
,
.
version
=
LIBAVUTIL_VERSION_INT
,
};
AVCodec
ff_eac3_decoder
=
{
.
name
=
"eac3"
,
.
type
=
AVMEDIA_TYPE_AUDIO
,
...
...
@@ -1478,6 +1484,6 @@ AVCodec ff_eac3_decoder = {
.
sample_fmts
=
(
const
enum
AVSampleFormat
[])
{
AV_SAMPLE_FMT_FLT
,
AV_SAMPLE_FMT_S16
,
AV_SAMPLE_FMT_NONE
},
.
priv_class
=
&
ac3_decoder_class
,
.
priv_class
=
&
e
ac3_decoder_class
,
};
#endif
libavformat/img2.c
浏览文件 @
a4ea00d0
...
...
@@ -458,15 +458,14 @@ static const AVOption options[] = {
{
NULL
},
};
/* input */
#if CONFIG_IMAGE2_DEMUXER
static
const
AVClass
img2_class
=
{
.
class_name
=
"image2 demuxer"
,
.
item_name
=
av_default_item_name
,
.
option
=
options
,
.
version
=
LIBAVUTIL_VERSION_INT
,
};
/* input */
#if CONFIG_IMAGE2_DEMUXER
AVInputFormat
ff_image2_demuxer
=
{
.
name
=
"image2"
,
.
long_name
=
NULL_IF_CONFIG_SMALL
(
"image2 sequence"
),
...
...
@@ -479,13 +478,19 @@ AVInputFormat ff_image2_demuxer = {
};
#endif
#if CONFIG_IMAGE2PIPE_DEMUXER
static
const
AVClass
img2pipe_class
=
{
.
class_name
=
"image2pipe demuxer"
,
.
item_name
=
av_default_item_name
,
.
option
=
options
,
.
version
=
LIBAVUTIL_VERSION_INT
,
};
AVInputFormat
ff_image2pipe_demuxer
=
{
.
name
=
"image2pipe"
,
.
long_name
=
NULL_IF_CONFIG_SMALL
(
"piped image2 sequence"
),
.
priv_data_size
=
sizeof
(
VideoData
),
.
read_header
=
read_header
,
.
read_packet
=
read_packet
,
.
priv_class
=
&
img2_class
,
.
priv_class
=
&
img2
pipe
_class
,
};
#endif
...
...
libavformat/movenc.c
浏览文件 @
a4ea00d0
...
...
@@ -48,11 +48,12 @@ static const AVOption options[] = {
{
NULL
},
};
static
const
AVClass
mov_muxer_class
=
{
.
class_name
=
"MOV/3GP/MP4/3G2 muxer"
,
.
item_name
=
av_default_item_name
,
.
option
=
options
,
.
version
=
LIBAVUTIL_VERSION_INT
,
#define MOV_CLASS(flavor)\
static const AVClass flavor ## _muxer_class = {\
.class_name = #flavor " muxer",\
.item_name = av_default_item_name,\
.option = options,\
.version = LIBAVUTIL_VERSION_INT,\
};
//FIXME support 64 bit variant with wide placeholders
...
...
@@ -2338,6 +2339,7 @@ static int mov_write_trailer(AVFormatContext *s)
}
#if CONFIG_MOV_MUXER
MOV_CLASS
(
mov
)
AVOutputFormat
ff_mov_muxer
=
{
.
name
=
"mov"
,
.
long_name
=
NULL_IF_CONFIG_SMALL
(
"MOV format"
),
...
...
@@ -2358,6 +2360,7 @@ AVOutputFormat ff_mov_muxer = {
};
#endif
#if CONFIG_TGP_MUXER
MOV_CLASS
(
tgp
)
AVOutputFormat
ff_tgp_muxer
=
{
.
name
=
"3gp"
,
.
long_name
=
NULL_IF_CONFIG_SMALL
(
"3GP format"
),
...
...
@@ -2370,10 +2373,11 @@ AVOutputFormat ff_tgp_muxer = {
.
write_trailer
=
mov_write_trailer
,
.
flags
=
AVFMT_GLOBALHEADER
,
.
codec_tag
=
(
const
AVCodecTag
*
const
[]){
codec_3gp_tags
,
0
},
.
priv_class
=
&
mov
_muxer_class
,
.
priv_class
=
&
tgp
_muxer_class
,
};
#endif
#if CONFIG_MP4_MUXER
MOV_CLASS
(
mp4
)
AVOutputFormat
ff_mp4_muxer
=
{
.
name
=
"mp4"
,
.
long_name
=
NULL_IF_CONFIG_SMALL
(
"MP4 format"
),
...
...
@@ -2391,10 +2395,11 @@ AVOutputFormat ff_mp4_muxer = {
.
write_trailer
=
mov_write_trailer
,
.
flags
=
AVFMT_GLOBALHEADER
,
.
codec_tag
=
(
const
AVCodecTag
*
const
[]){
ff_mp4_obj_type
,
0
},
.
priv_class
=
&
m
ov
_muxer_class
,
.
priv_class
=
&
m
p4
_muxer_class
,
};
#endif
#if CONFIG_PSP_MUXER
MOV_CLASS
(
psp
)
AVOutputFormat
ff_psp_muxer
=
{
.
name
=
"psp"
,
.
long_name
=
NULL_IF_CONFIG_SMALL
(
"PSP MP4 format"
),
...
...
@@ -2411,10 +2416,11 @@ AVOutputFormat ff_psp_muxer = {
.
write_trailer
=
mov_write_trailer
,
.
flags
=
AVFMT_GLOBALHEADER
,
.
codec_tag
=
(
const
AVCodecTag
*
const
[]){
ff_mp4_obj_type
,
0
},
.
priv_class
=
&
mov
_muxer_class
,
.
priv_class
=
&
psp
_muxer_class
,
};
#endif
#if CONFIG_TG2_MUXER
MOV_CLASS
(
tg2
)
AVOutputFormat
ff_tg2_muxer
=
{
.
name
=
"3g2"
,
.
long_name
=
NULL_IF_CONFIG_SMALL
(
"3GP2 format"
),
...
...
@@ -2427,10 +2433,11 @@ AVOutputFormat ff_tg2_muxer = {
.
write_trailer
=
mov_write_trailer
,
.
flags
=
AVFMT_GLOBALHEADER
,
.
codec_tag
=
(
const
AVCodecTag
*
const
[]){
codec_3gp_tags
,
0
},
.
priv_class
=
&
mov
_muxer_class
,
.
priv_class
=
&
tg2
_muxer_class
,
};
#endif
#if CONFIG_IPOD_MUXER
MOV_CLASS
(
ipod
)
AVOutputFormat
ff_ipod_muxer
=
{
.
name
=
"ipod"
,
.
long_name
=
NULL_IF_CONFIG_SMALL
(
"iPod H.264 MP4 format"
),
...
...
@@ -2444,6 +2451,6 @@ AVOutputFormat ff_ipod_muxer = {
.
write_trailer
=
mov_write_trailer
,
.
flags
=
AVFMT_GLOBALHEADER
,
.
codec_tag
=
(
const
AVCodecTag
*
const
[]){
codec_ipod_tags
,
0
},
.
priv_class
=
&
mov
_muxer_class
,
.
priv_class
=
&
ipod
_muxer_class
,
};
#endif
编辑
预览
Markdown
is supported
0%
请重试
或
添加新附件
.
添加附件
取消
You are about to add
0
people
to the discussion. Proceed with caution.
先完成此消息的编辑!
取消
想要评论请
注册
或
登录