Skip to content
GitLab
Projects
Groups
Snippets
/
Help
Help
Support
Community forum
Keyboard shortcuts
?
Submit feedback
Sign in
Toggle navigation
Menu
Open sidebar
Steve Lhomme
VLC
Commits
e4ea0558
Commit
e4ea0558
authored
Jan 18, 2000
by
Sam Hocevar
Browse files
ah ben forc�ment, �a risquait pas de compiler si j'inversais new et old
parent
cc44598d
Changes
1
Hide whitespace changes
Inline
Side-by-side
src/video_parser/vpar_synchro.c
View file @
e4ea0558
...
...
@@ -59,12 +59,13 @@ double vpar_SynchroUpdateTab( video_synchro_tab_t * tab, int count )
tab
->
deviation
=
(
(
tab
->
count
-
1
)
*
tab
->
deviation
+
abs
(
tab
->
mean
-
count
)
)
/
tab
->
count
;
return
tab
->
deviation
;
}
/*****************************************************************************
* vpar_SynchroUpdateStructures : Update the synchro structures
*****************************************************************************/
void
vpar_SynchroUpdateStructures
(
v
ideo_synchro_tab_t
*
tab
,
void
vpar_SynchroUpdateStructures
(
v
par_thread_t
*
p_vpar
,
int
i_coding_type
)
{
double
candidate_deviation
;
...
...
@@ -88,21 +89,21 @@ void vpar_SynchroUpdateStructures( video_synchro_tab_t * tab,
predict
=
p_vpar
->
synchro
.
tab_p
[
0
].
mean
;
candidate_deviation
=
vpar_SynchroUpdateTab
(
&
p_vpar
->
synchro
.
tab_p
[
1
+
(
modulo
&
0x1
)],
&
p_vpar
->
synchro
.
tab_p
[
1
+
(
p_vpar
->
synchro
.
modulo
&
0x1
)],
p_vpar
->
synchro
.
current_p_count
);
if
(
candidate_deviation
<
optimal_deviation
)
{
optimal_deviation
=
candidate_deviation
;
predict
=
p_vpar
->
synchro
.
tab_p
[
1
+
(
modulo
&
0x1
)].
mean
;
predict
=
p_vpar
->
synchro
.
tab_p
[
1
+
(
p_vpar
->
synchro
.
modulo
&
0x1
)].
mean
;
}
candidate_deviation
=
vpar_SynchroUpdateTab
(
&
p_vpar
->
synchro
.
tab_p
[
3
+
(
modulo
%
3
)],
&
p_vpar
->
synchro
.
tab_p
[
3
+
(
p_vpar
->
synchro
.
modulo
%
3
)],
p_vpar
->
synchro
.
current_p_count
);
if
(
candidate_deviation
<
optimal_deviation
)
{
optimal_deviation
=
candidate_deviation
;
predict
=
p_vpar
->
synchro
.
tab_p
[
1
+
(
modulo
&
0x1
)].
mean
;
predict
=
p_vpar
->
synchro
.
tab_p
[
1
+
(
p_vpar
->
synchro
.
modulo
%
3
)].
mean
;
}
p_vpar
->
synchro
.
p_count_predict
=
predict
;
...
...
@@ -115,21 +116,21 @@ void vpar_SynchroUpdateStructures( video_synchro_tab_t * tab,
predict
=
p_vpar
->
synchro
.
tab_b
[
0
].
mean
;
candidate_deviation
=
vpar_SynchroUpdateTab
(
&
p_vpar
->
synchro
.
tab_b
[
1
+
(
modulo
&
0x1
)],
&
p_vpar
->
synchro
.
tab_b
[
1
+
(
p_vpar
->
synchro
.
modulo
&
0x1
)],
p_vpar
->
synchro
.
current_b_count
);
if
(
candidate_deviation
<
optimal_deviation
)
{
optimal_deviation
=
candidate_deviation
;
predict
=
p_vpar
->
synchro
.
tab_b
[
1
+
(
modulo
&
0x1
)].
mean
;
predict
=
p_vpar
->
synchro
.
tab_b
[
1
+
(
p_vpar
->
synchro
.
modulo
&
0x1
)].
mean
;
}
candidate_deviation
=
vpar_SynchroUpdateTab
(
&
p_vpar
->
synchro
.
tab_b
[
3
+
(
modulo
%
3
)],
&
p_vpar
->
synchro
.
tab_b
[
3
+
(
p_vpar
->
synchro
.
modulo
%
3
)],
p_vpar
->
synchro
.
current_b_count
);
if
(
candidate_deviation
<
optimal_deviation
)
{
optimal_deviation
=
candidate_deviation
;
predict
=
p_vpar
->
synchro
.
tab_b
[
1
+
(
modulo
&
0x1
)].
mean
;
predict
=
p_vpar
->
synchro
.
tab_b
[
1
+
(
p_vpar
->
synchro
.
modulo
%
3
)].
mean
;
}
p_vpar
->
synchro
.
b_count_predict
=
predict
;
...
...
@@ -147,7 +148,7 @@ void vpar_SynchroUpdateStructures( video_synchro_tab_t * tab,
boolean_t
vpar_SynchroChoose
(
vpar_thread_t
*
p_vpar
,
int
i_coding_type
,
int
i_structure
)
{
//
return( 1 );
return
(
1
);
return
(
i_coding_type
==
I_CODING_TYPE
||
i_coding_type
==
P_CODING_TYPE
);
//return( i_coding_type == I_CODING_TYPE );
}
...
...
@@ -158,7 +159,7 @@ boolean_t vpar_SynchroChoose( vpar_thread_t * p_vpar, int i_coding_type,
void
vpar_SynchroTrash
(
vpar_thread_t
*
p_vpar
,
int
i_coding_type
,
int
i_structure
)
{
vpar_SynchroUpdateStructures
(
p_vpar
,
i_coding_type
,
i_structure
);
vpar_SynchroUpdateStructures
(
p_vpar
,
i_coding_type
);
}
...
...
@@ -168,7 +169,7 @@ void vpar_SynchroTrash( vpar_thread_t * p_vpar, int i_coding_type,
mtime_t
vpar_SynchroDecode
(
vpar_thread_t
*
p_vpar
,
int
i_coding_type
,
int
i_structure
)
{
vpar_SynchroUpdateStructures
(
p_vpar
,
i_coding_type
,
i_structure
);
vpar_SynchroUpdateStructures
(
p_vpar
,
i_coding_type
);
return
mdate
()
+
3000000
;
}
...
...
Write
Preview
Supports
Markdown
0%
Try again
or
attach a new 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