{"id":416,"date":"2016-04-26T00:28:34","date_gmt":"2016-04-26T00:28:34","guid":{"rendered":"https:\/\/projects-old.etc.cmu.edu\/vr-rehearsal\/?p=416"},"modified":"2016-04-26T01:15:05","modified_gmt":"2016-04-26T01:15:05","slug":"how-to-detect-oral-activity","status":"publish","type":"post","link":"https:\/\/projects-old.etc.cmu.edu\/vr-rehearsal\/index.php\/2016\/04\/26\/how-to-detect-oral-activity\/","title":{"rendered":"How to detect oral activity"},"content":{"rendered":"<p>Hi all, this is Chris Sun from team VR Rehearsal. Oral activity is an important factor which VR Rehearsal looks into to assess\u00a0user&#8217;s fluency of speech, and based on it, defines the behavior of virtual audiences.<\/p>\n<p><img loading=\"lazy\" decoding=\"async\" class=\"alignnone size-full wp-image-437\" src=\"https:\/\/projects-old.etc.cmu.edu\/vr-rehearsal\/wp-content\/uploads\/2016\/04\/voice1.png\" alt=\"Voice Activity Detection\" width=\"758\" height=\"294\" srcset=\"https:\/\/projects-old.etc.cmu.edu\/vr-rehearsal\/wp-content\/uploads\/2016\/04\/voice1.png 758w, https:\/\/projects-old.etc.cmu.edu\/vr-rehearsal\/wp-content\/uploads\/2016\/04\/voice1-300x116.png 300w\" sizes=\"(max-width: 758px) 100vw, 758px\" \/><\/p>\n<p>To detect oral activity, i.e. whether the user is speaking or not, we look into the audio data the application recorded every frame. We rely on a volume threshold to determine if some voice activity takes place in this frame.<\/p>\n<p><img loading=\"lazy\" decoding=\"async\" class=\"alignnone size-full wp-image-438\" src=\"https:\/\/projects-old.etc.cmu.edu\/vr-rehearsal\/wp-content\/uploads\/2016\/04\/voice2.png\" alt=\"Threshold Check\" width=\"824\" height=\"250\" srcset=\"https:\/\/projects-old.etc.cmu.edu\/vr-rehearsal\/wp-content\/uploads\/2016\/04\/voice2.png 824w, https:\/\/projects-old.etc.cmu.edu\/vr-rehearsal\/wp-content\/uploads\/2016\/04\/voice2-300x91.png 300w, https:\/\/projects-old.etc.cmu.edu\/vr-rehearsal\/wp-content\/uploads\/2016\/04\/voice2-768x233.png 768w\" sizes=\"(max-width: 824px) 100vw, 824px\" \/><\/p>\n<p>Based on this, how could we further determine if the user is speaking or not? A frame of decent high volume could be an irrelevant noise during a silent interval, while a frame of decent low volume could be regular blanks between words.<\/p>\n<p>The\u00a0trick to deal with this is taking one step away from &#8220;one frame&#8221; but looking at the whole thing in a series of frame and concentrate on &#8220;state change&#8221; rather than the state of a single frame. We first define a &#8220;current state&#8221; of the user: the user could be either speaking or not, never both.<\/p>\n<p>Then, when a frame of the opposite activity appears, we add the time of this frame to a timer; the timer shows how long the user has &#8220;suspiciously&#8221; been on the other state, and, if that&#8217;s enough long, we determine that the state of the user has <em>changed<\/em>.<\/p>\n<p><img loading=\"lazy\" decoding=\"async\" class=\"alignnone size-full wp-image-441\" src=\"https:\/\/projects-old.etc.cmu.edu\/vr-rehearsal\/wp-content\/uploads\/2016\/04\/voice3.png\" alt=\"State Transition\" width=\"785\" height=\"360\" srcset=\"https:\/\/projects-old.etc.cmu.edu\/vr-rehearsal\/wp-content\/uploads\/2016\/04\/voice3.png 785w, https:\/\/projects-old.etc.cmu.edu\/vr-rehearsal\/wp-content\/uploads\/2016\/04\/voice3-300x138.png 300w, https:\/\/projects-old.etc.cmu.edu\/vr-rehearsal\/wp-content\/uploads\/2016\/04\/voice3-768x352.png 768w\" sizes=\"(max-width: 785px) 100vw, 785px\" \/><\/p>\n<p>If, when a frame of the current state appears, the &#8220;opposite state&#8221; has not stay for enough long, then we assume the suspicious &#8220;opposite state&#8221; is a noise and discard it.<\/p>\n<p>The final trick will be widely performing tests and finding the best volume threshold and state transition threshold for the algorithm.<\/p>\n","protected":false},"excerpt":{"rendered":"<p>Hi all, this is Chris Sun from team VR Rehearsal. Oral activity is an important factor which VR Rehearsal looks into to assess\u00a0user&#8217;s fluency of speech, and based on it, defines the behavior of virtual audiences. To detect oral activity, i.e. whether the user is speaking or not, we look into the audio data the <a href=\"https:\/\/projects-old.etc.cmu.edu\/vr-rehearsal\/index.php\/2016\/04\/26\/how-to-detect-oral-activity\/\" rel=\"nofollow\"><span class=\"sr-only\">Read more about How to detect oral activity<\/span>[&hellip;]<\/a><\/p>\n","protected":false},"author":4,"featured_media":438,"comment_status":"closed","ping_status":"closed","sticky":false,"template":"","format":"standard","meta":{"pgc_meta":"","footnotes":""},"categories":[1],"tags":[],"class_list":["post-416","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-vr-rehearsal"],"_links":{"self":[{"href":"https:\/\/projects-old.etc.cmu.edu\/vr-rehearsal\/index.php\/wp-json\/wp\/v2\/posts\/416"}],"collection":[{"href":"https:\/\/projects-old.etc.cmu.edu\/vr-rehearsal\/index.php\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/projects-old.etc.cmu.edu\/vr-rehearsal\/index.php\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/projects-old.etc.cmu.edu\/vr-rehearsal\/index.php\/wp-json\/wp\/v2\/users\/4"}],"replies":[{"embeddable":true,"href":"https:\/\/projects-old.etc.cmu.edu\/vr-rehearsal\/index.php\/wp-json\/wp\/v2\/comments?post=416"}],"version-history":[{"count":2,"href":"https:\/\/projects-old.etc.cmu.edu\/vr-rehearsal\/index.php\/wp-json\/wp\/v2\/posts\/416\/revisions"}],"predecessor-version":[{"id":442,"href":"https:\/\/projects-old.etc.cmu.edu\/vr-rehearsal\/index.php\/wp-json\/wp\/v2\/posts\/416\/revisions\/442"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/projects-old.etc.cmu.edu\/vr-rehearsal\/index.php\/wp-json\/wp\/v2\/media\/438"}],"wp:attachment":[{"href":"https:\/\/projects-old.etc.cmu.edu\/vr-rehearsal\/index.php\/wp-json\/wp\/v2\/media?parent=416"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/projects-old.etc.cmu.edu\/vr-rehearsal\/index.php\/wp-json\/wp\/v2\/categories?post=416"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/projects-old.etc.cmu.edu\/vr-rehearsal\/index.php\/wp-json\/wp\/v2\/tags?post=416"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}