mirror of
https://github.com/nyanmisaka/ffmpeg-rockchip.git
synced 2025-10-08 18:21:14 +08:00
timecode: fix drop frame in avpriv_timecode_to_string().
This commit is contained in:
@@ -83,13 +83,14 @@ char *avpriv_timecode_to_string(char *buf, const struct ff_timecode *tc, unsigne
|
|||||||
{
|
{
|
||||||
int frame_num = tc->start + frame;
|
int frame_num = tc->start + frame;
|
||||||
int fps = (tc->rate.num + tc->rate.den/2) / tc->rate.den;
|
int fps = (tc->rate.num + tc->rate.den/2) / tc->rate.den;
|
||||||
int ff = frame_num % fps;
|
int hh, mm, ss, ff;
|
||||||
int ss = frame_num / fps % 60;
|
|
||||||
int mm = frame_num / (fps*60) % 60;
|
|
||||||
int hh = frame_num / (fps*3600) % 24;
|
|
||||||
|
|
||||||
if (tc->drop)
|
if (tc->drop)
|
||||||
frame_num = avpriv_framenum_to_drop_timecode(frame_num);
|
frame_num = avpriv_framenum_to_drop_timecode(frame_num);
|
||||||
|
ff = frame_num % fps;
|
||||||
|
ss = frame_num / fps % 60;
|
||||||
|
mm = frame_num / (fps*60) % 60;
|
||||||
|
hh = frame_num / (fps*3600) % 24;
|
||||||
snprintf(buf, sizeof("hh:mm:ss.ff"), "%02d:%02d:%02d%c%02d",
|
snprintf(buf, sizeof("hh:mm:ss.ff"), "%02d:%02d:%02d%c%02d",
|
||||||
hh, mm, ss, tc->drop ? ';' : ':', ff);
|
hh, mm, ss, tc->drop ? ';' : ':', ff);
|
||||||
return buf;
|
return buf;
|
||||||
|
Reference in New Issue
Block a user