private void ReadSceneDetectorInput() { // parse output from PySceneDetect List <long> frameNumbers = new List <long>(); TextFieldParser parser = new TextFieldParser( Path.Join(FolderName, BaseName, "scenes.csv")); parser.TextFieldType = FieldType.Delimited; parser.SetDelimiters(","); for (int i = 0; i < 2; i++) { parser.ReadLine(); } while (!parser.EndOfData) { string[] currentRow = parser.ReadFields(); frameNumbers.Add(long.Parse(currentRow[1])); } // trun the parsed information into our data structure SynapseMeta = new IndividualSynapseStruct() { SourceType = "video", SourceFileName = BaseName, ImageWidth = Constants.SYNAPSE_WIDTH * frameNumbers.LongCount(), NumberOfScenes = frameNumbers.LongCount(), SceneStartFrameNumbers = frameNumbers }; }
private void SerializeSynapseMetaData() { // extract only the basename of source files List <string> SynapseStillsBaseName = new List <string>(); foreach (var s in SynapseStills) { SynapseStillsBaseName.Add(Path.GetFileNameWithoutExtension(s)); } // build our data structure from input IndividualSynapseStruct meta = new IndividualSynapseStruct() { SourceType = "stills", SourceFileName = InputBaseName, ImageWidth = Constants.SYNAPSE_WIDTH * SynapseStills.LongCount(), NumberOfShots = SynapseStillsBaseName.LongCount(), ShotFileNames = SynapseStillsBaseName }; // serialize our data structure SerializedMeta = JsonConvert.SerializeObject(meta); }