public static void CopyTestData(string testfilesPath, string datafilesPath) { Directory.CreateDirectory(datafilesPath + "\\" + "RECEIVED"); // These are the test files that we will copy. string[] files = new string[] { // This meeting exists in MeetingRepository_Stub.cs // as meeting #4 and status = "Received" "USA_PA_Philadelphia_Philadelphia_CityCouncil_en_2017-12-07.pdf", // TODO - This is about 58MB. Github prefers < 50. // This meeting exists in MeetingRepository_Stub.cs // as meeting #5 and status = "Received" "USA_ME_LincolnCounty_BoothbayHarbor_Selectmen_en_2017-01-09.mp4", // This meeting is not present in MeetingRepository_Stub.cs. // ProcessIncomingFiles in WorkflowApp should recognize that fact, // and create a new meeting record for this file. "USA_ME_LincolnCounty_BoothbayHarbor_Selectmen_en_2017-02-15.mp4" }; foreach (string file in files) { string destination = datafilesPath + "\\" + "RECEIVED" + "\\" + file; if (!File.Exists(destination)) { string source = testfilesPath + "\\" + file; // For testing, use only the first 9 minutes of the video recordings. if (file.EndsWith(".mp4")) { SplitRecording splitRecording = new SplitRecording(); splitRecording.ExtractPart(source, destination, 0, 540); // 9 * 60 sec. } else { File.Copy(source, destination); } } } }
public void TestMoveToCloudAndTranscribe(string language) { string baseName = "USA_ME_LincolnCounty_BoothbayHarbor_Selectmen_EN_2017-02-15"; string videoFile = _config.TestfilesPath + "\\" + baseName + ".mp4"; string outputFolder = _config.TestfilesPath + "\\" + "TestMoveToCloudAndTranscribe"; FileDataRepositories.GMFileAccess.DeleteAndCreateDirectory(outputFolder); string outputBasePath = outputFolder + "\\" + baseName; string shortFile = outputBasePath + ".mp4"; string audioFile = outputBasePath + ".flac"; string jsonFile = outputBasePath + ".json"; // Extract short version SplitRecording splitRecording = new SplitRecording(); splitRecording.ExtractPart(videoFile, shortFile, 60, 4 * 60); // Extract audio. ExtractAudio extract = new ExtractAudio(); extract.Extract(shortFile, audioFile); // Transcribe //TranscribeAudio ta = new TranscribeAudio(_config); TranscribeResponse response = transcribe.MoveToCloudAndTranscribe(audioFile, baseName + ".flac", language); string stringValue = JsonConvert.SerializeObject(response, Formatting.Indented); File.WriteAllText(outputBasePath + "-rsp.json", stringValue); // Modify Transcript json format ModifyTranscriptJson mt = new ModifyTranscriptJson(); FixasrView fixasr = mt.Modify(response); // Create JSON file stringValue = JsonConvert.SerializeObject(fixasr, Formatting.Indented); File.WriteAllText(jsonFile, stringValue); }