diff --git a/modules/packetizer/h264.c b/modules/packetizer/h264.c
index 56e1e604d0e58c7d2b79751cfac4f602dd7b3831..4cb28d123d8a3d7566aed7f9cd593de72dbac9f6 100644
--- a/modules/packetizer/h264.c
+++ b/modules/packetizer/h264.c
@@ -798,7 +798,7 @@ static block_t *OutputPicture( decoder_t *p_dec )
         p_sys->i_frame_dts = VLC_TS_INVALID;
         p_sys->i_frame_pts = VLC_TS_INVALID;
     }
-    else if( p_sys->b_timing_info_present_flag )
+    else if( p_sys->b_timing_info_present_flag && p_sys->i_time_scale )
     {
         p_sys->i_frame_pts += CLOCK_FREQ * p_sys->i_num_units_in_tick / p_sys->i_time_scale;
     }