RealTime RealTime::frame2RealTime(long frame, unsigned int sampleRate) { if (frame < 0) return -frame2RealTime(-frame, sampleRate); RealTime rt; rt.sec = frame / long(sampleRate); frame -= rt.sec * long(sampleRate); rt.nsec = (int)(((double(frame) * 1000000.0) / sampleRate) * 1000.0); return rt; }
RealTime RealTime::frame2RealTime(long long frame, unsigned int sr) { if (frame < 0) return -frame2RealTime(-frame, sr); long long sampleRate = sr; RealTime rt; rt.sec = frame / sampleRate; frame -= rt.sec * sampleRate; rt.nsec = (int)(((float(frame) * 1000000) / sampleRate) * 1000); return rt; }