00001 #include "srtwriter.h"
00002
00003
00004
00008 void SRTWriter::AddSubtitle(const OneSubtitle &sub, int number)
00009 {
00010 m_outStream << number << endl;
00011
00012 m_outStream << FormatTime(sub.start_time) << " --> ";
00013 m_outStream << FormatTime(sub.start_time + sub.length) << endl;
00014
00015 if (!sub.text.isEmpty())
00016 {
00017 QStringList::const_iterator it = sub.text.begin();
00018 for (; it != sub.text.end(); ++it)
00019 m_outStream << *it << endl;
00020 m_outStream << endl;
00021 }
00022 }
00023
00027 QString SRTWriter::FormatTime(uint64_t time_in_msec)
00028 {
00029 uint64_t msec = time_in_msec % 1000;
00030 time_in_msec /= 1000;
00031
00032 uint64_t ss = time_in_msec % 60;
00033 time_in_msec /= 60;
00034
00035 uint64_t mm = time_in_msec % 60;
00036 time_in_msec /= 60;
00037
00038 uint64_t hh = time_in_msec;
00039
00040 return QString("%1:%2:%3,%4")
00041 .arg(hh,2,10,QChar('0'))
00042 .arg(mm,2,10,QChar('0'))
00043 .arg(ss,2,10,QChar('0'))
00044 .arg(msec,3,10,QChar('0'));
00045 }