Commit Graph

32 Commits

Author SHA1 Message Date
Daniel Wolf e5c39efeeb Moved main executable into its own directory along with its build logic
This will make it easier to add other artifacts that require build steps.
2018-01-24 18:38:09 +01:00
Daniel Wolf 55cf80e40b Refactoring: Made imports more specific 2017-09-12 19:29:10 +02:00
Daniel Wolf a24fe8874c Added AutoJoin template parameter to timeline classes
Previously, timelines would always automatically join adjacent elements
if their values were equal. That behavior was usually desired for mouth
shapes, but not for phones, animation rules, etc.
2016-12-13 09:45:26 +01:00
Daniel Wolf 8e1d1fbdd3 Unified acronym capitalization
See http://stackoverflow.com/a/27172000/52041
2016-11-16 11:56:52 +01:00
Daniel Wolf 3e34425c11 Refactoring: Split code into multiple projects 2016-11-16 11:01:01 +01:00
Daniel Wolf 1f6f6d6175 Added convenience function Timed<T>.getDuration() 2016-09-29 12:06:47 +02:00
Daniel Wolf f5b7971f52 Refactoring: Replaced audio "length" with "duration" 2016-09-29 12:06:28 +02:00
Daniel Wolf f44baaa05f Improve noise detection heuristic 2016-09-29 12:06:06 +02:00
Daniel Wolf 78027ea63c Thread count can be limited via command-line argument 2016-08-11 10:29:01 +02:00
Daniel Wolf 206cde4658 Supporting noises (breathing, smacking, etc.) 2016-08-11 10:18:03 +02:00
Daniel Wolf 16892ae991 Fixed OS X build 2016-08-10 18:24:24 +02:00
Daniel Wolf 229105a965 Fixed erratic progress display 2016-08-04 20:39:40 +02:00
Daniel Wolf 26cae93478 Refactored audio handling
Now audio clips can be passed around as const references
and don't carry state any more.
2016-07-27 21:58:37 +02:00
Daniel Wolf b3b2366468 Re-written library code for parallel execution
The new implementation correctly re-throws exceptions on the calling thread
instead of terminating the application.
2016-07-27 21:44:39 +02:00
Daniel Wolf ddcadad710 Introduced user-defined literal "cs" for centiseconds
Now that ReSharper supports it (see https://youtrack.jetbrains.com/issue/RSCPP-14653)
2016-07-05 21:17:51 +02:00
Daniel Wolf 0447cbb4ff Refactored VAD multithreading 2016-06-30 20:52:29 +02:00
Daniel Wolf 8fa494fb77 Improved VAD quality via dry run 2016-06-30 20:42:36 +02:00
Daniel Wolf 6de7ba020a Fixed VAD error handling 2016-06-30 20:17:28 +02:00
Daniel Wolf 2d314f4bc7 Multithreaded recognition: refactoring and fixes
* Decoders are correctly released after use
* Determining optimal thread count for multithreading
2016-06-29 21:47:25 +02:00
Daniel Wolf 75407dab54 Augmenting each detected voice activity to give recognizer some silence samples to work with 2016-06-29 21:47:25 +02:00
Daniel Wolf 3a0a38575f Sped up VAD via multithreading 2016-06-26 21:06:21 +02:00
Daniel Wolf f275267ac7 Small VAD improvements
* RAII
* Slightly fewer false positives
2016-06-24 22:35:33 +02:00
Daniel Wolf c6c31a831c Using WebRTC for voice activity detection (VAD)
My simple power-based approach wasn't reliable enough.
2016-06-21 22:20:18 +02:00
Daniel Wolf 6c9612d2c3 Raised low-pass threshold to better cope with high-pitched voices 2016-06-15 20:14:51 +02:00
Daniel Wolf 4346552312 Improved speed of voice activity detection
... by factor 2 by removing second pass.
Also added voice activity detection to progress calculation.
2016-06-15 20:14:51 +02:00
Daniel Wolf d1bbe8538e Added more logging 2016-06-15 20:14:43 +02:00
Daniel Wolf c67e916185 Splitting audio into utterances before processing
Advantages:
* No problems with long silences (PocketSphinx doesn't like them)
* Potential for parallelization
* Potential for improved phone timing accuracy
2016-05-17 16:01:10 +02:00
Daniel Wolf 2f31c5aa61 Refactoring
* Rewriting Timeline<T> to be sparse, i.e., allow gaps
* Added specialized subclasses BoundedTimeline<T> and ContinuousTimeline<T>
* Timed<T> and TimeRange: has-a, not is-a
* Introducing Timed<void>
2016-05-17 14:28:18 +02:00
Daniel Wolf 7ce79f9c08 Replaced Boost.Log with small custom logger
Boost.Log is a complex monstrosity and I can't get it to build on OS X.
2016-04-14 09:42:47 +02:00
Daniel Wolf 04c828506d Simplified code using Timeline<T> 2016-04-09 22:07:25 +02:00
Daniel Wolf 2be3751a4f Renamed TimeSegment to TimeRange 2016-03-28 20:30:55 +02:00
Daniel Wolf 8c1e24e9c8 Implemented voice activity detection 2016-03-16 21:01:44 +01:00