[vlc-commits] demux:mkv: improve Cues loading dramatically

2018-02-13 Thread Steve Lhomme
vlc/vlc-3.0 | branch: master | Steve Lhomme  | Tue Feb 13 
09:16:29 2018 +0100| [8b0547a29dad0c0f189726ac0ec35eeebdb9343e] | committer: 
Hugo Beauzée-Luyssen

demux:mkv: improve Cues loading dramatically

By reading the data we ignore, rather than skipping over the data.

(cherry picked from commit 419dcfcdd7639cdaf2bb3932a4eac5085ee04a2c)
Signed-off-by: Hugo Beauzée-Luyssen 

> http://git.videolan.org/gitweb.cgi/vlc/vlc-3.0.git/?a=commit;h=8b0547a29dad0c0f189726ac0ec35eeebdb9343e
---

 modules/demux/mkv/matroska_segment.cpp | 12 
 1 file changed, 8 insertions(+), 4 deletions(-)

diff --git a/modules/demux/mkv/matroska_segment.cpp 
b/modules/demux/mkv/matroska_segment.cpp
index 75dfb3abd1..a8ebd8b76d 100644
--- a/modules/demux/mkv/matroska_segment.cpp
+++ b/modules/demux/mkv/matroska_segment.cpp
@@ -166,21 +166,25 @@ void matroska_segment_c::LoadCues( KaxCues *cues )
 VLC_UNUSED( kcbn_ptr );
 }
 #if LIBMATROSKA_VERSION >= 0x010401
-else if( MKV_IS_ID( el, KaxCueRelativePosition ) )
+else if( MKV_CHECKED_PTR_DECL( ignored, 
KaxCueRelativePosition, el ) )
 {
 // IGNORE
+ignored->ReadData( es.I_O() );
 }
-else if( MKV_IS_ID( el, KaxCueBlockNumber ) )
+else if( MKV_CHECKED_PTR_DECL( ignored, 
KaxCueBlockNumber, el ) )
 {
 // IGNORE
+ignored->ReadData( es.I_O() );
 }
-else if( MKV_IS_ID( el, KaxCueReference ) )
+else if( MKV_CHECKED_PTR_DECL( ignored, 
KaxCueReference, el ) )
 {
 // IGNORE
+ignored->ReadData( es.I_O(), SCOPE_ALL_DATA );
 }
-else if( MKV_IS_ID( el, KaxCueDuration ) )
+else if( MKV_CHECKED_PTR_DECL( ignored, 
KaxCueDuration, el ) )
 {
 /* For future use */
+ignored->ReadData( es.I_O() );
 }
 #endif
 else

___
vlc-commits mailing list
vlc-commits@videolan.org
https://mailman.videolan.org/listinfo/vlc-commits


[vlc-commits] demux:mkv: improve Cues loading dramatically

2018-02-13 Thread Steve Lhomme
vlc | branch: master | Steve Lhomme  | Tue Feb 13 09:16:29 
2018 +0100| [419dcfcdd7639cdaf2bb3932a4eac5085ee04a2c] | committer: Steve Lhomme

demux:mkv: improve Cues loading dramatically

By reading the data we ignore, rather than skipping over the data.

> http://git.videolan.org/gitweb.cgi/vlc.git/?a=commit;h=419dcfcdd7639cdaf2bb3932a4eac5085ee04a2c
---

 modules/demux/mkv/matroska_segment.cpp | 12 
 1 file changed, 8 insertions(+), 4 deletions(-)

diff --git a/modules/demux/mkv/matroska_segment.cpp 
b/modules/demux/mkv/matroska_segment.cpp
index 86c07b9900..9f6d43edda 100644
--- a/modules/demux/mkv/matroska_segment.cpp
+++ b/modules/demux/mkv/matroska_segment.cpp
@@ -166,21 +166,25 @@ void matroska_segment_c::LoadCues( KaxCues *cues )
 VLC_UNUSED( kcbn_ptr );
 }
 #if LIBMATROSKA_VERSION >= 0x010401
-else if( MKV_IS_ID( el, KaxCueRelativePosition ) )
+else if( MKV_CHECKED_PTR_DECL( ignored, 
KaxCueRelativePosition, el ) )
 {
 // IGNORE
+ignored->ReadData( es.I_O() );
 }
-else if( MKV_IS_ID( el, KaxCueBlockNumber ) )
+else if( MKV_CHECKED_PTR_DECL( ignored, 
KaxCueBlockNumber, el ) )
 {
 // IGNORE
+ignored->ReadData( es.I_O() );
 }
-else if( MKV_IS_ID( el, KaxCueReference ) )
+else if( MKV_CHECKED_PTR_DECL( ignored, 
KaxCueReference, el ) )
 {
 // IGNORE
+ignored->ReadData( es.I_O(), SCOPE_ALL_DATA );
 }
-else if( MKV_IS_ID( el, KaxCueDuration ) )
+else if( MKV_CHECKED_PTR_DECL( ignored, 
KaxCueDuration, el ) )
 {
 /* For future use */
+ignored->ReadData( es.I_O() );
 }
 #endif
 else

___
vlc-commits mailing list
vlc-commits@videolan.org
https://mailman.videolan.org/listinfo/vlc-commits