[vlc-devel] [PATCH] [RESEND] demux: mp4: fix can't recognize clcp media type's closed caption

Hyeon-Ju Lee zorurione at gmail.com
Mon May 20 06:15:39 CEST 2019


Resend of submission sent on May 13th.

----------------------------------------

in TrackCreateES() don't compare case of i_handler is ATOM_clcp
It makes can't create track for clcp media type
print this debug messages and vlc player can't recognize closed caption

debug messages:
    mp4 demux debug: track[Id 0x4] read 32 samples length:80s
    mp4 demux error: cannot create es for track[Id 0x4]
    mp4 demux debug: ignoring track[Id 0x4]

I tested by using this sample videos:
    https://sampleplatform.ccextractor.org/sample/download/45
    https://sampleplatform.ccextractor.org/sample/download/130

reference:
    https://developer.apple.com/library/archive/documentation/QuickTime/QTFF/QTFFChap3/qtff3.html#//apple_ref/doc/uid/TP40000939-CH205-SW87

---
 modules/demux/mp4/mp4.c | 3 ++-
 1 file changed, 2 insertions(+), 1 deletion(-)

diff --git a/modules/demux/mp4/mp4.c b/modules/demux/mp4/mp4.c
index 5d4febe..def160e 100644
--- a/modules/demux/mp4/mp4.c
+++ b/modules/demux/mp4/mp4.c
@@ -3000,7 +3000,8 @@ static int TrackCreateES( demux_t *p_demux,
mp4_track_t *p_track,
     case SPU_ES:
         if ( ( p_sample->i_handler != ATOM_text &&
                p_sample->i_handler != ATOM_subt &&
-               p_sample->i_handler != ATOM_sbtl ) ||
+               p_sample->i_handler != ATOM_sbtl &&
+               p_sample->i_handler != ATOM_clcp ) ||
              !SetupSpuES( p_demux, p_track, p_sample ) )
            return VLC_EGENERIC;
         break;
-- 
2.7.4
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://mailman.videolan.org/pipermail/vlc-devel/attachments/20190520/6bd5a00a/attachment.html>


More information about the vlc-devel mailing list