Skip to content
体验新版
项目
组织
正在加载...
登录
切换导航
打开侧边栏
小白菜888
Ffmpeg
提交
626904b7
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,发现更多精彩内容 >>
提交
626904b7
编写于
2月 24, 2015
作者:
M
Michael Niedermayer
浏览文件
操作
浏览文件
下载
电子邮件补丁
差异文件
avformat/dss: set bitrate
Signed-off-by:
N
Michael Niedermayer
<
michaelni@gmx.at
>
上级
5634ca6d
变更
1
隐藏空白更改
内联
并排
Showing
1 changed file
with
8 addition
and
0 deletion
+8
-0
libavformat/dss.c
libavformat/dss.c
+8
-0
未找到文件。
libavformat/dss.c
浏览文件 @
626904b7
...
...
@@ -54,6 +54,8 @@ typedef struct DSSDemuxContext {
int
swap
;
int
dss_sp_swap_byte
;
int8_t
*
dss_sp_buf
;
int
packet_size
;
}
DSSDemuxContext
;
static
int
dss_probe
(
AVProbeData
*
p
)
...
...
@@ -210,6 +212,7 @@ static void dss_sp_byte_swap(DSSDemuxContext *ctx,
static
int
dss_sp_read_packet
(
AVFormatContext
*
s
,
AVPacket
*
pkt
)
{
DSSDemuxContext
*
ctx
=
s
->
priv_data
;
AVStream
*
st
=
s
->
streams
[
0
];
int
read_size
,
ret
,
offset
=
0
,
buff_offset
=
0
;
int64_t
pos
=
avio_tell
(
s
->
pb
);
...
...
@@ -223,6 +226,7 @@ static int dss_sp_read_packet(AVFormatContext *s, AVPacket *pkt)
read_size
=
DSS_FRAME_SIZE
;
ctx
->
counter
-=
read_size
;
ctx
->
packet_size
=
DSS_FRAME_SIZE
-
1
;
ret
=
av_new_packet
(
pkt
,
DSS_FRAME_SIZE
);
if
(
ret
<
0
)
...
...
@@ -231,6 +235,7 @@ static int dss_sp_read_packet(AVFormatContext *s, AVPacket *pkt)
pkt
->
duration
=
264
;
pkt
->
pos
=
pos
;
pkt
->
stream_index
=
0
;
s
->
bit_rate
=
8LL
*
ctx
->
packet_size
*
st
->
codec
->
sample_rate
*
512
/
(
506
*
pkt
->
duration
);
if
(
ctx
->
counter
<
0
)
{
int
size2
=
ctx
->
counter
+
read_size
;
...
...
@@ -264,6 +269,7 @@ error_eof:
static
int
dss_723_1_read_packet
(
AVFormatContext
*
s
,
AVPacket
*
pkt
)
{
DSSDemuxContext
*
ctx
=
s
->
priv_data
;
AVStream
*
st
=
s
->
streams
[
0
];
int
size
,
byte
,
ret
,
offset
;
int64_t
pos
=
avio_tell
(
s
->
pb
);
...
...
@@ -277,6 +283,7 @@ static int dss_723_1_read_packet(AVFormatContext *s, AVPacket *pkt)
size
=
frame_size
[
byte
&
3
];
ctx
->
packet_size
=
size
;
ctx
->
counter
-=
size
;
ret
=
av_new_packet
(
pkt
,
size
);
...
...
@@ -287,6 +294,7 @@ static int dss_723_1_read_packet(AVFormatContext *s, AVPacket *pkt)
pkt
->
data
[
0
]
=
byte
;
offset
=
1
;
pkt
->
duration
=
240
;
s
->
bit_rate
=
8LL
*
size
*
st
->
codec
->
sample_rate
*
512
/
(
506
*
pkt
->
duration
);
pkt
->
stream_index
=
0
;
...
...
编辑
预览
Markdown
is supported
0%
请重试
或
添加新附件
.
添加附件
取消
You are about to add
0
people
to the discussion. Proceed with caution.
先完成此消息的编辑!
取消
想要评论请
注册
或
登录