+std::wstring MediaInfo(const boost::filesystem::wpath& path)\r
+{\r
+ if(boost::filesystem::is_regular_file(path))\r
+ {\r
+ std::wstring clipttype = TEXT(" N/A ");\r
+ std::wstring extension = boost::to_upper_copy(path.extension());\r
+ if(extension == TEXT(".TGA") || extension == TEXT(".COL") || extension == L".PNG" || extension == L".JPEG" || extension == L".JPG" ||\r
+ extension == L"GIF" || extension == L"BMP")\r
+ clipttype = TEXT(" STILL ");\r
+ else if(extension == TEXT(".SWF") || extension == TEXT(".DV") || extension == TEXT(".MOV") || extension == TEXT(".MPG") || \r
+ extension == TEXT(".AVI") || extension == TEXT(".FLV") || extension == TEXT(".F4V") || extension == TEXT(".MP4") ||\r
+ extension == L".M2V" || extension == L".H264" || extension == L".MKV" || extension == L".WMV" || extension == L".DIVX" || \r
+ extension == L".XVID" || extension == L".OGG")\r
+ clipttype = TEXT(" MOVIE ");\r
+ else if(extension == TEXT(".WAV") || extension == TEXT(".MP3"))\r
+ clipttype = TEXT(" STILL ");\r
+\r
+ if(clipttype != TEXT(" N/A "))\r
+ { \r
+ auto is_not_digit = [](char c){ return std::isdigit(c) == 0; };\r
+\r
+ auto relativePath = boost::filesystem::wpath(path.file_string().substr(env::media_folder().size()-1, path.file_string().size()));\r
+\r
+ auto writeTimeStr = boost::posix_time::to_iso_string(boost::posix_time::from_time_t(boost::filesystem::last_write_time(path)));\r
+ writeTimeStr.erase(std::remove_if(writeTimeStr.begin(), writeTimeStr.end(), is_not_digit), writeTimeStr.end());\r
+ auto writeTimeWStr = std::wstring(writeTimeStr.begin(), writeTimeStr.end());\r
+\r
+ auto sizeStr = boost::lexical_cast<std::wstring>(boost::filesystem::file_size(path));\r
+ sizeStr.erase(std::remove_if(sizeStr.begin(), sizeStr.end(), is_not_digit), sizeStr.end());\r
+ auto sizeWStr = std::wstring(sizeStr.begin(), sizeStr.end());\r
+ \r
+ auto str = relativePath.replace_extension(TEXT("")).external_file_string();\r
+ if(str[0] == '\\' || str[0] == '/')\r
+ str = std::wstring(str.begin() + 1, str.end());\r
+\r
+ return std::wstring() + TEXT("\"") + str +\r
+ + TEXT("\" ") + clipttype +\r
+ + TEXT(" ") + sizeStr +\r
+ + TEXT(" ") + writeTimeWStr +\r
+ + TEXT("\r\n"); \r
+ } \r
+ }\r
+ return L"";\r
+}\r
+\r