- sub->start_display_time = parse_timecode(buf + 1);
- sub->end_display_time = parse_timecode(buf + 14);
+ if (avpkt->pts != AV_NOPTS_VALUE)
+ packet_time = av_rescale_q(avpkt->pts, AV_TIME_BASE_Q, (AVRational){1, 1000});
+ sub->start_display_time = parse_timecode(buf + 1, packet_time);
+ sub->end_display_time = parse_timecode(buf + 14, packet_time);