From: A. David Date: Thu, 2 Jul 2020 17:45:50 +0000 (+0200) Subject: mp4: Update GPAC support to v0.8.0 or later X-Git-Tag: archive/raspbian/2%0.160.3011+gitcde9a93-2.1+rpi1^2~1 X-Git-Url: https://dgit.raspbian.org/?a=commitdiff_plain;h=2ce663f037d520e023917d0f10bef65298cd63c0;p=x264.git mp4: Update GPAC support to v0.8.0 or later Gbp-Pq: Name 0001-mp4-Update-GPAC-support-to-v0.8.0-or-later.patch --- diff --git a/configure b/configure index ec0932c..dfb517a 100755 --- a/configure +++ b/configure @@ -1240,15 +1240,16 @@ if [ "$gpac" = "auto" -a "$lsmash" != "yes" ] ; then gpac="no" GPAC_LIBS="-lgpac" cc_check "" -lz && GPAC_LIBS="$GPAC_LIBS -lz" + cc_check "" -ldl && GPAC_LIBS="$GPAC_LIBS -ldl" if [ "$SYS" = "WINDOWS" ] ; then cc_check "" -lws2_32 && GPAC_LIBS="$GPAC_LIBS -lws2_32" cc_check "" -lwinmm && GPAC_LIBS="$GPAC_LIBS -lwinmm" fi if cc_check gpac/isomedia.h "$GPAC_LIBS" "gf_isom_close(0);" ; then - if cc_check gpac/isomedia.h "$GPAC_LIBS" "gf_isom_set_pixel_aspect_ratio(0,0,0,0,0);" ; then + if cc_check gpac/isomedia.h "$GPAC_LIBS" "gf_isom_set_pixel_aspect_ratio(0,0,0,0,0,0);" ; then gpac="yes" else - echo "Warning: gpac is too old, update to 2007-06-21 UTC or later" + echo "Warning: gpac is too old, update to v0.8.0 or later" fi fi fi diff --git a/output/mp4.c b/output/mp4.c index 944e777..200cb33 100644 --- a/output/mp4.c +++ b/output/mp4.c @@ -147,7 +147,11 @@ static int close_file( hnd_t handle, int64_t largest_pts, int64_t second_largest { uint32_t mvhd_timescale = gf_isom_get_timescale( p_mp4->p_file ); uint64_t tkhd_duration = (uint64_t)( mdhd_duration * ( (double)mvhd_timescale / p_mp4->i_time_res ) ); +#if GPAC_VERSION_MAJOR > 8 + gf_isom_append_edit( p_mp4->p_file, p_mp4->i_track, tkhd_duration, sample->CTS_Offset, GF_ISOM_EDIT_NORMAL ); +#else gf_isom_append_edit_segment( p_mp4->p_file, p_mp4->i_track, tkhd_duration, sample->CTS_Offset, GF_ISOM_EDIT_NORMAL ); +#endif } gf_isom_sample_del( &sample ); @@ -233,7 +237,7 @@ static int set_param( hnd_t handle, x264_param_t *p_param ) dw *= sar; else dh /= sar; - gf_isom_set_pixel_aspect_ratio( p_mp4->p_file, p_mp4->i_track, p_mp4->i_descidx, p_param->vui.i_sar_width, p_param->vui.i_sar_height ); + gf_isom_set_pixel_aspect_ratio( p_mp4->p_file, p_mp4->i_track, p_mp4->i_descidx, p_param->vui.i_sar_width, p_param->vui.i_sar_height, 0 ); gf_isom_set_track_layout_info( p_mp4->p_file, p_mp4->i_track, dw, dh, 0, 0, 0 ); }