Clip Web videos.
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

17 lines
620 B

  1. export const convertSecondsToDuration = (s: number) => {
  2. const milliseconds = (s - Math.floor(s)) * 1000;
  3. const seconds = s % 60;
  4. const minutes = Math.floor(s / 60) % 60;
  5. const hours = Math.floor(s / 3600);
  6. const sss = milliseconds.toString().padStart(3, '0');
  7. const ss = seconds.toString().padStart(2, '0');
  8. const mm = minutes.toString().padStart(2, '0');
  9. const hh = hours.toString().padStart(2, '0');
  10. return `${hh}:${mm}:${ss}.${sss}`;
  11. };
  12. export const convertDurationToSeconds = (d: string) => {
  13. const [hh, mm, ss] = d.split(':');
  14. return (Number(hh) * 3600) + (Number(mm) * 60) + Number(ss);
  15. };