Website
5/5/2014
Working on finalizing my website and getting the binder together and the CD together.
4/30/2014
Have presentation basically done. Also worked out my demo and was able to fix a few bugs in the process.
http://www.voiptroubleshooter.com/open_speech/index.html
This has a bunch of files which I can use for testing and the demo. Very nice.
4/29/2014
Working on the presentation today. That is the biggest priority right now.
4/28/2014
I have still been working on my project even though i have not put in any journal entries the last few days. I have been working on code commenting as well as adding small polishes to the program. The plus and minus as well as left and right arrow keys can move the trackbar now. I may also play around with an embedded database so that access would not be required and get a proof of concept to myself.
At this point in time I am saying that V0.8 is complete. V0.9 would be adding in the embedded database. And to get to full V1.0 I would want to add a snippet manager screen where snippets can be deleted and renamed. Also something I would want to do is create an installer, it would serve little purpose but I think it would be cool. The last small thing to add would be to drag and drop snippets on the sentence creation form. These are all nice extra things that I would like to have but have ran out of time. Maybe if I get my presentation done early I will go back and work on it but what I have now is what I plan on showing at the presentations.
After the presentations I will probably keep working on this out of self pride to get it to a point that I am happy with, I like where it is now but there are a few things that can be changed.
Now that I think about it I would really like to get the embedded database. I will try to get that in tomorrow morning.
http://msdn.microsoft.com/en-us/library/ms233763.aspx#bkmk_createnewsqldb
That is what I will probably use.
4/22/2014
Today I have been working on making sure that WAV formats are not creating issues during the building of sentences. I have made it so that when snippets are saved they will be forced to use specific formats. This is fixing the potential issue that files loaded in are not in the proper format.
4/21/2014
Started working on allowing user to create databases of snippets for individual people. This of course creates issues with the same word being able to be put into the database for two different people. I am considering taking out hash codes and from now will query based on word and person which may be slower but will certainly avoid any hash collisions. Otherwise option B would be to grab all based on hash code of the word and then verify that the person is the correct one.
Today I also cleaned out old screens that were no longer used but they are still in old version and trimmed the database of unneeded columns.
Still keeping the hash code but filtering on person selected as well. Need to make sure that all files are the same format.
http://stackoverflow.com/questions/7175701/converting-wav-file-to-wav-file-changing-format
That is a good starting point for converting the wav file formats.
4/14/2014
I have neglected to make any entries since the last one but I have worked on my project since the last journal entry. As a wrap up I have a functional snippet editor and snippet combiner which is very exciting! For these two screens it comes down to making them function better than they already do.
Also a new sentence creation screen has been made with two list boxes. One with available snippets and one with the snippets to be combined.
4/3/2014
Working on a new screen, the snippet creator, which will be used to create a sound clip with one or many words in it. I am currently having trouble with the graphics being very choppy and displaying very well.
3/31/2014
Have added the functionality to load a wav file into the sentence add form. Also added a place word here button which allows the user to preview the loaded or recorded sound clip and then click at the beginning of each word to mark its spot. The rest of the form is that auto-generated and the user can then fine tune the selections and add tags to all of the words.
Also the beginnings of a wave Form timeline with will aid the user in selecting the time slices is in the works. I would say that the functional portions of the program are almost complete, adding words from a sentence to the database and creating a sentence from those words are almost complete. It feels more like polishing and feature adding, to make tagging easier, is happening more.
3/27/2014
Tried to get it so that word time pickers would not overlap. IE end 1 would not go past start 2. The events that I tried to use to capture the changes would not work so for the time being i abandoned that and decided it might be OK to overlap in case white noise overlaps and needs to be captured. I did get to make it so that when a word count is typed in, IE going from 1 to 5 will properly change the number of rows from 1 to 5. I also get the rows of controls that are being added to be
3/26/2014
Have made a decent amount of progress so far today. The preview button on the AddSentenceForm now works. Saving words from within a sentence is also in the process of being implemented and it is looking good. As of now I have decided to save wav files as individual words so that trimming is not done on the fly, only concatenating. As of now putting files together is not too slow but I do not want to risk the slow down as of now, I would be willing to change this as there may be an unnecessary amount of files that would be saved then.
3/25/2014
Was able to get a sound file to start from a different position. Still looking to get it to end at a certain position. Found this -> http://stackoverflow.com/questions/6465863/trim-an-audio-file-wav-mp3 and it looks promising. What it does is trims a WAV file and creates a new file. What could be done is make a new file and then play that new file and then delete it.
These are the second and third functions that I have found to help in my project. My intention is to write a little blurb about each in documentation to show that I understand what is going on in the function. While they are very helpfully in making progress I should be able to understand what they do. From first glance they are using the bytes in the file and comparing how many bytesPerMillisecond the file is using.
Also added a CustomSoundClass which I will be using to facilitate WavTrimming and WAVConcatenation as well as other logical functions which fit there, possibly playing a sound file.
3/24/2014
Last week was spring break and I intended on doing work on the project. Obviously that did not happen as time escaped me. Looking at my planned timeline I am very behind schedule, though after review documentation should not take 3 weeks to complete so I am OK cutting into that time if needed. Today I looked at the NAudio documentation, http://naudio.codeplex.com/wikipage?title=WAV, and found something to try in terms with playing audio with NAudio, before I was just using the integrated sound player, and hopefully this will give me a kick start in my sentence saving. Once sentence saving is complete, again hopefully this week, the change to sentence creation should be fairly straightforward but may prove difficult.
The end is going to come in fast and this guy needs to get his butt in gear!
Week of 3/10/2014
Worked on the sentence saving form. Previewing a selected part of a recorded file is currently not working for me.
3/6/2014
Adding words is basically completed. Only thing that may need to be looked at is if there are any memory leaks. Still cannot decide on how I want to get about analyzing a whole sentence. There is going to need to be a large amount of user intervention but again need to decide how the user will interface with this. I am thinking that for each word there will be a start time, end time, word tag, preview button, and check box for as to whether the word will be added to the database or not. Was able to look around and found code someone wrote which adds a time picker to the data grid view, unsure as to whether or not milliseconds are allowed, http://stackoverflow.com/questions/1807621/c-sharp-winforms-datagridview-time-column. Looking briefly over this it does not look like milliseconds are supported.
I was also able to look into seeking through wav files for when appending from the middle of a file will need to be done. Seems straightforward but could potentially be difficult. But first things first. Need to get the add sentence functionality working. Also as a side note I need to figure out some sort of visual aid to help users, doesn't matter if it is click able or not at this point.
Also found this: http://www.codeproject.com/Articles/170684/Time-Picker
It is a time Picker which supports hours, minutes, seconds AND milliseconds. I will probably be using this going forward.
2/25/2014
It has been too long since I have done any sort of development work. Today I got back into the saddle by working on saving individual words and I have gotten it to work. So far the wav files themselves are being saved in a certain folder and an access database is being used to keep track of start, end, duration, hash, fileLocation, and word. Next today I will work on the actual sentence creation itself.
Made a huge leap. I got the sentence creation to work! I can now type in a sentence and assuming all the words are there the program stitches them together. Still need to make sure that the temporary sound file is deleted after it finishing playing. Also need to check to make sure that all words typed are actually present.
2/20/2014
The beginning of this week I was very sick and got little to no progress completed. I did get my gantt chart added to my website and after looking over it, assuming that I am not severely looking over something, I feel like I am in a good spot.
2/13/2014
Today I have finally gotten the speech recognition to work to a point. I am able to speak and the program knows I am saying something but what it thinks I have said is not always 100% accurate. For now I will be able to keep working on single spoken words, will just have to approve that they are correctly tagged, and continue with saving the files and locating them appropriately.
2/12/2014
After my meeting Tuesday with Dr. Pankratz we decided to ditch the drag drop approach for sentence creation. Now I am going to work on creating sentences from a sentence typed in a text box. To start going on this I have made it so that my program can record something speaking through an attached microphone and then have the file saved.
2/9/2014
For about 2 to 3 hours I worked on trying to include WaveForm visuals into my project. Unfortunately I have not been able to successfully do that. I think that for the time being I will need to abandon that and decide on another way for user to visualize and select clips from conversations.
Here are the links I have been looking at.
https://naudio.codeplex.com/
https://wpfsvl.codeplex.com/
http://www.codeproject.com/Articles/20025/Sound-visualizer-in-C
http://www.codeproject.com/Articles/4838/WaveControl
2/2/2014
Today I started to organize and add content to my website. Haven't decided many design aspects for the project itself but do have a few ideas floating around in my head. I added a section on the My Project page which has a bit of a general flow of how I want the program to work.
Working on finalizing my website and getting the binder together and the CD together.
4/30/2014
Have presentation basically done. Also worked out my demo and was able to fix a few bugs in the process.
http://www.voiptroubleshooter.com/open_speech/index.html
This has a bunch of files which I can use for testing and the demo. Very nice.
4/29/2014
Working on the presentation today. That is the biggest priority right now.
4/28/2014
I have still been working on my project even though i have not put in any journal entries the last few days. I have been working on code commenting as well as adding small polishes to the program. The plus and minus as well as left and right arrow keys can move the trackbar now. I may also play around with an embedded database so that access would not be required and get a proof of concept to myself.
At this point in time I am saying that V0.8 is complete. V0.9 would be adding in the embedded database. And to get to full V1.0 I would want to add a snippet manager screen where snippets can be deleted and renamed. Also something I would want to do is create an installer, it would serve little purpose but I think it would be cool. The last small thing to add would be to drag and drop snippets on the sentence creation form. These are all nice extra things that I would like to have but have ran out of time. Maybe if I get my presentation done early I will go back and work on it but what I have now is what I plan on showing at the presentations.
After the presentations I will probably keep working on this out of self pride to get it to a point that I am happy with, I like where it is now but there are a few things that can be changed.
Now that I think about it I would really like to get the embedded database. I will try to get that in tomorrow morning.
http://msdn.microsoft.com/en-us/library/ms233763.aspx#bkmk_createnewsqldb
That is what I will probably use.
4/22/2014
Today I have been working on making sure that WAV formats are not creating issues during the building of sentences. I have made it so that when snippets are saved they will be forced to use specific formats. This is fixing the potential issue that files loaded in are not in the proper format.
4/21/2014
Started working on allowing user to create databases of snippets for individual people. This of course creates issues with the same word being able to be put into the database for two different people. I am considering taking out hash codes and from now will query based on word and person which may be slower but will certainly avoid any hash collisions. Otherwise option B would be to grab all based on hash code of the word and then verify that the person is the correct one.
Today I also cleaned out old screens that were no longer used but they are still in old version and trimmed the database of unneeded columns.
Still keeping the hash code but filtering on person selected as well. Need to make sure that all files are the same format.
http://stackoverflow.com/questions/7175701/converting-wav-file-to-wav-file-changing-format
That is a good starting point for converting the wav file formats.
4/14/2014
I have neglected to make any entries since the last one but I have worked on my project since the last journal entry. As a wrap up I have a functional snippet editor and snippet combiner which is very exciting! For these two screens it comes down to making them function better than they already do.
Also a new sentence creation screen has been made with two list boxes. One with available snippets and one with the snippets to be combined.
4/3/2014
Working on a new screen, the snippet creator, which will be used to create a sound clip with one or many words in it. I am currently having trouble with the graphics being very choppy and displaying very well.
3/31/2014
Have added the functionality to load a wav file into the sentence add form. Also added a place word here button which allows the user to preview the loaded or recorded sound clip and then click at the beginning of each word to mark its spot. The rest of the form is that auto-generated and the user can then fine tune the selections and add tags to all of the words.
Also the beginnings of a wave Form timeline with will aid the user in selecting the time slices is in the works. I would say that the functional portions of the program are almost complete, adding words from a sentence to the database and creating a sentence from those words are almost complete. It feels more like polishing and feature adding, to make tagging easier, is happening more.
3/27/2014
Tried to get it so that word time pickers would not overlap. IE end 1 would not go past start 2. The events that I tried to use to capture the changes would not work so for the time being i abandoned that and decided it might be OK to overlap in case white noise overlaps and needs to be captured. I did get to make it so that when a word count is typed in, IE going from 1 to 5 will properly change the number of rows from 1 to 5. I also get the rows of controls that are being added to be
3/26/2014
Have made a decent amount of progress so far today. The preview button on the AddSentenceForm now works. Saving words from within a sentence is also in the process of being implemented and it is looking good. As of now I have decided to save wav files as individual words so that trimming is not done on the fly, only concatenating. As of now putting files together is not too slow but I do not want to risk the slow down as of now, I would be willing to change this as there may be an unnecessary amount of files that would be saved then.
3/25/2014
Was able to get a sound file to start from a different position. Still looking to get it to end at a certain position. Found this -> http://stackoverflow.com/questions/6465863/trim-an-audio-file-wav-mp3 and it looks promising. What it does is trims a WAV file and creates a new file. What could be done is make a new file and then play that new file and then delete it.
These are the second and third functions that I have found to help in my project. My intention is to write a little blurb about each in documentation to show that I understand what is going on in the function. While they are very helpfully in making progress I should be able to understand what they do. From first glance they are using the bytes in the file and comparing how many bytesPerMillisecond the file is using.
Also added a CustomSoundClass which I will be using to facilitate WavTrimming and WAVConcatenation as well as other logical functions which fit there, possibly playing a sound file.
3/24/2014
Last week was spring break and I intended on doing work on the project. Obviously that did not happen as time escaped me. Looking at my planned timeline I am very behind schedule, though after review documentation should not take 3 weeks to complete so I am OK cutting into that time if needed. Today I looked at the NAudio documentation, http://naudio.codeplex.com/wikipage?title=WAV, and found something to try in terms with playing audio with NAudio, before I was just using the integrated sound player, and hopefully this will give me a kick start in my sentence saving. Once sentence saving is complete, again hopefully this week, the change to sentence creation should be fairly straightforward but may prove difficult.
The end is going to come in fast and this guy needs to get his butt in gear!
Week of 3/10/2014
Worked on the sentence saving form. Previewing a selected part of a recorded file is currently not working for me.
3/6/2014
Adding words is basically completed. Only thing that may need to be looked at is if there are any memory leaks. Still cannot decide on how I want to get about analyzing a whole sentence. There is going to need to be a large amount of user intervention but again need to decide how the user will interface with this. I am thinking that for each word there will be a start time, end time, word tag, preview button, and check box for as to whether the word will be added to the database or not. Was able to look around and found code someone wrote which adds a time picker to the data grid view, unsure as to whether or not milliseconds are allowed, http://stackoverflow.com/questions/1807621/c-sharp-winforms-datagridview-time-column. Looking briefly over this it does not look like milliseconds are supported.
I was also able to look into seeking through wav files for when appending from the middle of a file will need to be done. Seems straightforward but could potentially be difficult. But first things first. Need to get the add sentence functionality working. Also as a side note I need to figure out some sort of visual aid to help users, doesn't matter if it is click able or not at this point.
Also found this: http://www.codeproject.com/Articles/170684/Time-Picker
It is a time Picker which supports hours, minutes, seconds AND milliseconds. I will probably be using this going forward.
2/25/2014
It has been too long since I have done any sort of development work. Today I got back into the saddle by working on saving individual words and I have gotten it to work. So far the wav files themselves are being saved in a certain folder and an access database is being used to keep track of start, end, duration, hash, fileLocation, and word. Next today I will work on the actual sentence creation itself.
Made a huge leap. I got the sentence creation to work! I can now type in a sentence and assuming all the words are there the program stitches them together. Still need to make sure that the temporary sound file is deleted after it finishing playing. Also need to check to make sure that all words typed are actually present.
2/20/2014
The beginning of this week I was very sick and got little to no progress completed. I did get my gantt chart added to my website and after looking over it, assuming that I am not severely looking over something, I feel like I am in a good spot.
2/13/2014
Today I have finally gotten the speech recognition to work to a point. I am able to speak and the program knows I am saying something but what it thinks I have said is not always 100% accurate. For now I will be able to keep working on single spoken words, will just have to approve that they are correctly tagged, and continue with saving the files and locating them appropriately.
2/12/2014
After my meeting Tuesday with Dr. Pankratz we decided to ditch the drag drop approach for sentence creation. Now I am going to work on creating sentences from a sentence typed in a text box. To start going on this I have made it so that my program can record something speaking through an attached microphone and then have the file saved.
2/9/2014
For about 2 to 3 hours I worked on trying to include WaveForm visuals into my project. Unfortunately I have not been able to successfully do that. I think that for the time being I will need to abandon that and decide on another way for user to visualize and select clips from conversations.
Here are the links I have been looking at.
https://naudio.codeplex.com/
https://wpfsvl.codeplex.com/
http://www.codeproject.com/Articles/20025/Sound-visualizer-in-C
http://www.codeproject.com/Articles/4838/WaveControl
2/2/2014
Today I started to organize and add content to my website. Haven't decided many design aspects for the project itself but do have a few ideas floating around in my head. I added a section on the My Project page which has a bit of a general flow of how I want the program to work.