Skip to content
Projects
Groups
Snippets
Help
Loading...
Help
Support
Keyboard shortcuts
?
Submit feedback
Contribute to GitLab
Sign in
Toggle navigation
V
vlc-gpu
Project overview
Project overview
Details
Activity
Releases
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Issues
0
Issues
0
List
Boards
Labels
Milestones
Redmine
Redmine
Merge Requests
0
Merge Requests
0
CI / CD
CI / CD
Pipelines
Jobs
Schedules
Operations
Operations
Metrics
Environments
Analytics
Analytics
CI / CD
Repository
Value Stream
Wiki
Wiki
Snippets
Snippets
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Create a new issue
Jobs
Commits
Issue Boards
Open sidebar
videolan
vlc-gpu
Commits
6e8ab4d5
Commit
6e8ab4d5
authored
Apr 26, 2005
by
Steve Lhomme
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
mkv.cpp: do an EnterAndLeave before seeking in Matroska Script
parent
05d36b60
Changes
1
Show whitespace changes
Inline
Side-by-side
Showing
1 changed file
with
11 additions
and
8 deletions
+11
-8
modules/demux/mkv.cpp
modules/demux/mkv.cpp
+11
-8
No files found.
modules/demux/mkv.cpp
View file @
6e8ab4d5
...
@@ -857,7 +857,7 @@ public:
...
@@ -857,7 +857,7 @@ public:
return
linked_segments
[
i_current_segment
];
return
linked_segments
[
i_current_segment
];
}
}
inline
c
onst
chapter_item_c
*
CurrentChapter
()
const
{
inline
c
hapter_item_c
*
CurrentChapter
()
{
return
psz_current_chapter
;
return
psz_current_chapter
;
}
}
...
@@ -1226,6 +1226,7 @@ static int Control( demux_t *p_demux, int i_query, va_list args )
...
@@ -1226,6 +1226,7 @@ static int Control( demux_t *p_demux, int i_query, va_list args )
case
DEMUX_SET_SEEKPOINT
:
case
DEMUX_SET_SEEKPOINT
:
i_skp
=
(
int
)
va_arg
(
args
,
int
);
i_skp
=
(
int
)
va_arg
(
args
,
int
);
// TODO change the way it works with the << & >> buttons on the UI (+1/-1 instead of a number)
if
(
p_sys
->
titles
.
size
()
&&
i_skp
<
p_sys
->
titles
[
p_sys
->
i_current_title
].
i_seekpoint
)
if
(
p_sys
->
titles
.
size
()
&&
i_skp
<
p_sys
->
titles
[
p_sys
->
i_current_title
].
i_seekpoint
)
{
{
Seek
(
p_demux
,
(
int64_t
)
p_sys
->
titles
[
p_sys
->
i_current_title
].
seekpoint
[
i_skp
]
->
i_time_offset
,
-
1
,
NULL
);
Seek
(
p_demux
,
(
int64_t
)
p_sys
->
titles
[
p_sys
->
i_current_title
].
seekpoint
[
i_skp
]
->
i_time_offset
,
-
1
,
NULL
);
...
@@ -4560,20 +4561,21 @@ bool chapter_item_c::EnterAndLeave( chapter_item_c *p_item )
...
@@ -4560,20 +4561,21 @@ bool chapter_item_c::EnterAndLeave( chapter_item_c *p_item )
{
{
do
do
{
{
if
(
p_common_parent
==
this
)
return
Enter
(
true
);
for
(
size_t
i
=
0
;
i
<
p_common_parent
->
sub_chapters
.
size
();
i
++
)
for
(
size_t
i
=
0
;
i
<
p_common_parent
->
sub_chapters
.
size
();
i
++
)
{
{
if
(
p_common_parent
->
sub_chapters
[
i
]
->
ParentOf
(
*
this
)
)
if
(
p_common_parent
->
sub_chapters
[
i
]
->
ParentOf
(
*
this
)
)
{
{
p_common_parent
=
p_common_parent
->
sub_chapters
[
i
];
p_common_parent
=
p_common_parent
->
sub_chapters
[
i
];
if
(
p_common_parent
!=
this
)
if
(
p_common_parent
->
Enter
(
false
)
)
return
true
;
break
;
break
;
}
}
}
}
if
(
p_common_parent
==
this
)
break
;
if
(
p_common_parent
->
Enter
(
false
)
)
return
true
;
}
while
(
1
);
}
while
(
1
);
}
}
...
@@ -4946,6 +4948,7 @@ bool matroska_script_interpretor_c::Interpret( const binary * p_command, size_t
...
@@ -4946,6 +4948,7 @@ bool matroska_script_interpretor_c::Interpret( const binary * p_command, size_t
msg_Dbg
(
&
sys
.
demuxer
,
"Chapter "
I64Fd
" not found"
,
i_chapter_uid
);
msg_Dbg
(
&
sys
.
demuxer
,
"Chapter "
I64Fd
" not found"
,
i_chapter_uid
);
else
else
{
{
if
(
!
p_chapter
->
EnterAndLeave
(
sys
.
p_current_segment
->
CurrentChapter
()
)
)
p_segment
->
Seek
(
sys
.
demuxer
,
p_chapter
->
i_user_start_time
,
-
1
,
p_chapter
);
p_segment
->
Seek
(
sys
.
demuxer
,
p_chapter
->
i_user_start_time
,
-
1
,
p_chapter
);
b_result
=
true
;
b_result
=
true
;
}
}
...
...
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