int ConvertH264() { int nOffset = 0; int count = 0; if (g_cnvt.Open(g_flvFile) == 0) return 0; unsigned int nTimeStamp = 0; while (1) { int nNaluSize = 0; if (Cnvt::GetOneNalu(g_pBufferIn + nOffset, g_nFileSize - nOffset, g_pBufferOut, nNaluSize) == 0) break; g_cnvt.ConvertH264((char *)g_pBufferOut, nNaluSize, nTimeStamp); if (g_pBufferOut[4] != 0x67 && g_pBufferOut[4]!=0x68) nTimeStamp += 33; nOffset += nNaluSize; if (nOffset >= g_nFileSize - 4) break; count++; } g_cnvt.Close(); return 1; }
int ConvertAAC() { int nOffset = 0; int count = 0; if (g_cnvt.Open(g_flvFile, 1, 0) == 0) return 0; unsigned int nTimeStamp = 0; while (1) { int nAACFrameSize = 0; if (Cnvt::GetOneAACFrame(g_pBufferIn + nOffset, g_nFileSize - nOffset, g_pBufferOut, nAACFrameSize) == 0) break; printf("nAACFrameSize = %d\n", nAACFrameSize); g_cnvt.ConvertAAC((char *)g_pBufferOut, nAACFrameSize, nTimeStamp); nTimeStamp += double(1024*1000) / double(44100); nOffset += nAACFrameSize; if (nOffset >= g_nFileSize - 4) break; count++; } g_cnvt.Close(); return 1; }
/** * \brief Conversion function * \param[in] chInputFile Input file name to convert from * \param[in] chOutputFile Output file name to convert to * \return Result code * * This is the actual conversion function with input and output file name. */ HRESULT CDBF2DBCConverter::ConvertFile(string& chInputFile, string& chOutputFile) { HRESULT hResult = S_OK; CConverter ouConverter; INT nRetVal = ouConverter.Convert(chInputFile.c_str(), chOutputFile.c_str()); ouConverter.GetResultString(m_omstrConversionStatus); if(nRetVal != 0) { m_omstrConversionStatus += ouConverter.m_omLogFilePath; m_hResult = nRetVal; } return hResult; }
HRESULT CDBF2DBCConverter::ConvertFile(TCHAR* chInputFile, TCHAR* chOutputFile) { HRESULT hResult = S_OK; /*extern FILE* yyin; extern FILE* yyout; */ CConverter ouConverter; INT nRetVal = ouConverter.Convert((LPCTSTR)chInputFile,(LPCTSTR)chOutputFile); m_omstrConversionStatus = ouConverter.GetResultString(); if(nRetVal != 0) { m_omstrConversionStatus += ouConverter.m_omLogFilePath; m_hResult = nRetVal; } return hResult; }
int main(int argc, const char** argv) { CParser cParser; CConverter cConv; if(argc<3) { usage(); return 0; } cParser.Parse(argc,argv); cConv = CConverter(&cParser); if (cConv.GenerateTextures() != EXIT_SUCCESS) return EXIT_FAILURE; if (cConv.WriteTextures() != EXIT_SUCCESS) return EXIT_FAILURE; return 0; }