Skip to content
体验新版
项目
组织
正在加载...
登录
切换导航
打开侧边栏
小白菜888
Ffmpeg
提交
9ec05e36
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,发现更多精彩内容 >>
提交
9ec05e36
编写于
1月 31, 2003
作者:
F
Fabrice Bellard
浏览文件
操作
浏览文件
下载
电子邮件补丁
差异文件
added DVD LPCM decoding support
Originally committed as revision 1525 to
svn://svn.ffmpeg.org/ffmpeg/trunk
上级
f17457ac
变更
1
隐藏空白更改
内联
并排
Showing
1 changed file
with
20 addition
and
0 deletion
+20
-0
libavformat/mpeg.c
libavformat/mpeg.c
+20
-0
未找到文件。
libavformat/mpeg.c
浏览文件 @
9ec05e36
...
...
@@ -598,6 +598,9 @@ static int mpegps_read_packet(AVFormatContext *s,
}
else
if
(
startcode
>=
0x80
&&
startcode
<=
0x9f
)
{
type
=
CODEC_TYPE_AUDIO
;
codec_id
=
CODEC_ID_AC3
;
}
else
if
(
startcode
>=
0xa0
&&
startcode
<=
0xbf
)
{
type
=
CODEC_TYPE_AUDIO
;
codec_id
=
CODEC_ID_PCM_S16BE
;
}
else
{
skip:
/* skip packet */
...
...
@@ -611,6 +614,23 @@ static int mpegps_read_packet(AVFormatContext *s,
st
->
codec
.
codec_type
=
type
;
st
->
codec
.
codec_id
=
codec_id
;
found:
if
(
startcode
>=
0xa0
&&
startcode
<=
0xbf
)
{
int
b1
,
freq
;
static
const
int
lpcm_freq_tab
[
4
]
=
{
48000
,
96000
,
44100
,
32000
};
/* for LPCM, we just skip the header and consider it is raw
audio data */
if
(
len
<=
3
)
goto
skip
;
get_byte
(
&
s
->
pb
);
/* emphasis (1), muse(1), reserved(1), frame number(5) */
b1
=
get_byte
(
&
s
->
pb
);
/* quant (2), freq(2), reserved(1), channels(3) */
get_byte
(
&
s
->
pb
);
/* dynamic range control (0x80 = off) */
len
-=
3
;
freq
=
(
b1
>>
4
)
&
3
;
st
->
codec
.
sample_rate
=
lpcm_freq_tab
[
freq
];
st
->
codec
.
channels
=
1
+
(
b1
&
7
);
st
->
codec
.
bit_rate
=
st
->
codec
.
channels
*
st
->
codec
.
sample_rate
*
2
;
}
av_new_packet
(
pkt
,
len
);
//printf("\nRead Packet ID: %x PTS: %f Size: %d", startcode,
// (float)pts/90000, len);
...
...
编辑
预览
Markdown
is supported
0%
请重试
或
添加新附件
.
添加附件
取消
You are about to add
0
people
to the discussion. Proceed with caution.
先完成此消息的编辑!
取消
想要评论请
注册
或
登录