{"id":129,"date":"2019-11-02T22:32:48","date_gmt":"2019-11-03T02:32:48","guid":{"rendered":"http:\/\/course.ece.cmu.edu\/~ece500\/projects\/f19-teamb5\/?p=129"},"modified":"2019-11-10T14:03:12","modified_gmt":"2019-11-10T18:03:12","slug":"week-of-10-27-jiahao-zhou","status":"publish","type":"post","link":"http:\/\/course.ece.cmu.edu\/~ece500\/projects\/f19-teamb5\/2019\/11\/02\/week-of-10-27-jiahao-zhou\/","title":{"rendered":"Week of 10\/27 &#8211; Jiahao Zhou"},"content":{"rendered":"<p>This week I wrapped up the voice tempo detection. There are still areas to optimize, but for the most part it is able to detect on-beat rapping. I rectify and smooth the audio before running it through an onset detection algorithm. Then, I calculate where beats should be based on the bpm given by the backing track beat detector. Here is an example of amateur rap where it is able to detect on-beat rapping.<\/p>\n<p><a href=\"http:\/\/course.ece.cmu.edu\/~ece500\/projects\/f19-teamb5\/wp-content\/uploads\/sites\/73\/2019\/11\/Screen-Shot-2019-11-02-at-10.28.31-PM.png\"><img decoding=\"async\" loading=\"lazy\" class=\"alignnone size-full wp-image-130\" src=\"http:\/\/course.ece.cmu.edu\/~ece500\/projects\/f19-teamb5\/wp-content\/uploads\/sites\/73\/2019\/11\/Screen-Shot-2019-11-02-at-10.28.31-PM.png\" alt=\"\" width=\"2230\" height=\"730\" srcset=\"http:\/\/course.ece.cmu.edu\/~ece500\/projects\/f19-teamb5\/wp-content\/uploads\/sites\/73\/2019\/11\/Screen-Shot-2019-11-02-at-10.28.31-PM.png 2230w, http:\/\/course.ece.cmu.edu\/~ece500\/projects\/f19-teamb5\/wp-content\/uploads\/sites\/73\/2019\/11\/Screen-Shot-2019-11-02-at-10.28.31-PM-300x98.png 300w, http:\/\/course.ece.cmu.edu\/~ece500\/projects\/f19-teamb5\/wp-content\/uploads\/sites\/73\/2019\/11\/Screen-Shot-2019-11-02-at-10.28.31-PM-768x251.png 768w, http:\/\/course.ece.cmu.edu\/~ece500\/projects\/f19-teamb5\/wp-content\/uploads\/sites\/73\/2019\/11\/Screen-Shot-2019-11-02-at-10.28.31-PM-1024x335.png 1024w\" sizes=\"(max-width: 767px) 89vw, (max-width: 1000px) 54vw, (max-width: 1071px) 543px, 580px\" \/><\/a><\/p>\n<p>&nbsp;<\/p>\n<p>The magenta lines indicate hit beats and green lines indicate missed beats. You can see gaps in hits where the rapper is pausing and taking breaks. In the coming weeks I plan to begin integrating this into the backend and have it working on live-audio in the web app.<\/p>\n<p>&nbsp;<\/p>\n","protected":false},"excerpt":{"rendered":"<p>This week I wrapped up the voice tempo detection. There are still areas to optimize, but for the most part it is able to detect on-beat rapping. I rectify and smooth the audio before running it through an onset detection algorithm. Then, I calculate where beats should be based on the bpm given by the &hellip; <\/p>\n<p class=\"link-more\"><a href=\"http:\/\/course.ece.cmu.edu\/~ece500\/projects\/f19-teamb5\/2019\/11\/02\/week-of-10-27-jiahao-zhou\/\" class=\"more-link\">Continue reading<span class=\"screen-reader-text\"> &#8220;Week of 10\/27 &#8211; Jiahao Zhou&#8221;<\/span><\/a><\/p>\n","protected":false},"author":193,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":[],"categories":[3],"tags":[],"_links":{"self":[{"href":"http:\/\/course.ece.cmu.edu\/~ece500\/projects\/f19-teamb5\/wp-json\/wp\/v2\/posts\/129"}],"collection":[{"href":"http:\/\/course.ece.cmu.edu\/~ece500\/projects\/f19-teamb5\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"http:\/\/course.ece.cmu.edu\/~ece500\/projects\/f19-teamb5\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"http:\/\/course.ece.cmu.edu\/~ece500\/projects\/f19-teamb5\/wp-json\/wp\/v2\/users\/193"}],"replies":[{"embeddable":true,"href":"http:\/\/course.ece.cmu.edu\/~ece500\/projects\/f19-teamb5\/wp-json\/wp\/v2\/comments?post=129"}],"version-history":[{"count":1,"href":"http:\/\/course.ece.cmu.edu\/~ece500\/projects\/f19-teamb5\/wp-json\/wp\/v2\/posts\/129\/revisions"}],"predecessor-version":[{"id":132,"href":"http:\/\/course.ece.cmu.edu\/~ece500\/projects\/f19-teamb5\/wp-json\/wp\/v2\/posts\/129\/revisions\/132"}],"wp:attachment":[{"href":"http:\/\/course.ece.cmu.edu\/~ece500\/projects\/f19-teamb5\/wp-json\/wp\/v2\/media?parent=129"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"http:\/\/course.ece.cmu.edu\/~ece500\/projects\/f19-teamb5\/wp-json\/wp\/v2\/categories?post=129"},{"taxonomy":"post_tag","embeddable":true,"href":"http:\/\/course.ece.cmu.edu\/~ece500\/projects\/f19-teamb5\/wp-json\/wp\/v2\/tags?post=129"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}