[vlc-commits] demux: mp4: add dolby vision
Francois Cartegnie
git at videolan.org
Thu Sep 14 15:03:49 CEST 2017
vlc | branch: master | Francois Cartegnie <fcvlcdev at free.fr> | Thu Sep 14 13:37:24 2017 +0200| [dbb0f6c7353aad4cbbb14d88f9409c8419c26bcd] | committer: Francois Cartegnie
demux: mp4: add dolby vision
> http://git.videolan.org/gitweb.cgi/vlc.git/?a=commit;h=dbb0f6c7353aad4cbbb14d88f9409c8419c26bcd
---
modules/demux/mp4/essetup.c | 8 ++++++++
1 file changed, 8 insertions(+)
diff --git a/modules/demux/mp4/essetup.c b/modules/demux/mp4/essetup.c
index 1bdb350a4f..05e910ab89 100644
--- a/modules/demux/mp4/essetup.c
+++ b/modules/demux/mp4/essetup.c
@@ -601,6 +601,8 @@ int SetupVideoES( demux_t *p_demux, mp4_track_t *p_track, MP4_Box_t *p_sample )
/* avc1: send avcC (h264 without annexe B, ie without start code)*/
case VLC_FOURCC( 'a', 'v', 'c', '3' ):
case VLC_FOURCC( 'a', 'v', 'c', '1' ):
+ case VLC_FOURCC( 'd', 'v', 'a', '1' ): /* DolbyVision */
+ case VLC_FOURCC( 'd', 'v', 'a', 'v' ): /* DolbyVision */
{
MP4_Box_t *p_avcC = MP4_BoxGet( p_sample, "avcC" );
@@ -622,9 +624,15 @@ int SetupVideoES( demux_t *p_demux, mp4_track_t *p_track, MP4_Box_t *p_sample )
}
case VLC_FOURCC( 'h', 'v', 'c', '1' ):
case VLC_FOURCC( 'h', 'e', 'v', '1' ):
+ case VLC_FOURCC( 'd', 'v', 'h', 'e' ): /* DolbyVision */
+ case VLC_FOURCC( 'd', 'v', 'h', '1' ): /* DolbyVision */
{
MP4_Box_t *p_hvcC = MP4_BoxGet( p_sample, "hvcC" );
+ /* Handle DV fourcc collision at demux level */
+ if( p_sample->i_type == VLC_FOURCC( 'd', 'v', 'h', '1' ) )
+ p_track->fmt.i_codec = VLC_FOURCC( 'd', 'v', 'h', 'e' );
+
if( p_hvcC && p_hvcC->data.p_binary && p_hvcC->data.p_binary->i_blob )
{
p_track->fmt.p_extra = malloc( p_hvcC->data.p_binary->i_blob );
More information about the vlc-commits
mailing list