<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0">
  <channel>
    <title>flutterstory 님의 블로그</title>
    <link>https://flutterstory.tistory.com/</link>
    <description>flutterstory 님의 블로그 입니다.</description>
    <language>ko</language>
    <pubDate>Wed, 14 Oct 2026 01:49:04 +0900</pubDate>
    <generator>TISTORY</generator>
    <ttl>100</ttl>
    <managingEditor>flutterstory</managingEditor>
    <item>
      <title>[앱 출시] 손 안 대고 입으로 맞추는 템포! 혁신 메트로놈 'MetroQ'</title>
      <link>https://flutterstory.tistory.com/3</link>
      <description>&lt;p data-path-to-node=&quot;3&quot; data-ke-size=&quot;size16&quot;&gt;안녕하세요! 14년 차 IT 고인물이자, 아마추어 드러머로 활동중인 '음악 진심러' 개발자입니다.&lt;/p&gt;
&lt;p data-path-to-node=&quot;4&quot; data-ke-size=&quot;size16&quot;&gt;드디어 제 열정과 야근(?)이 담긴 메트로놈 앱, &lt;b data-index-in-node=&quot;28&quot; data-path-to-node=&quot;4&quot;&gt;MetroQ&lt;/b&gt;가 세상에 나왔습니다.&lt;/p&gt;
&lt;p data-path-to-node=&quot;4&quot; data-ke-size=&quot;size16&quot;&gt;이미 100분 넘는 분들이 선택해 주신 검증된 앱이라는 점!&amp;nbsp;&lt;/p&gt;
&lt;p data-path-to-node=&quot;5&quot; data-ke-size=&quot;size16&quot;&gt;오늘은 MetroQ를 200% 활용하는 방법을 재미있게 소개해 드릴게요.&lt;/p&gt;
&lt;h3 style=&quot;color: #000000; text-align: start;&quot; data-ke-size=&quot;size23&quot; data-path-to-node=&quot;22&quot;&gt;(앱 내 광고 없음, 무료 다운로드)&lt;/h3&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-filename=&quot;그림01.png&quot; data-origin-width=&quot;681&quot; data-origin-height=&quot;370&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/qU95w/dJMb997omHd/fgyUUP5VQjlUYL4ykzwWTk/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/qU95w/dJMb997omHd/fgyUUP5VQjlUYL4ykzwWTk/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/qU95w/dJMb997omHd/fgyUUP5VQjlUYL4ykzwWTk/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FqU95w%2FdJMb997omHd%2FfgyUUP5VQjlUYL4ykzwWTk%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;681&quot; height=&quot;370&quot; data-filename=&quot;그림01.png&quot; data-origin-width=&quot;681&quot; data-origin-height=&quot;370&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;h3 data-path-to-node=&quot;6&quot; data-ke-size=&quot;size23&quot;&gt;1. 손을 쓰지 않는 혁신: 안면 인식 인터페이스 (Face-Control)  &lt;/h3&gt;
&lt;p data-path-to-node=&quot;7&quot; data-ke-size=&quot;size16&quot;&gt;연주 중에 버튼을 누르기 위해 스틱을 놓으시나요? 이제 표정으로 대화하세요.&lt;/p&gt;
&lt;ul style=&quot;list-style-type: disc;&quot; data-path-to-node=&quot;8&quot; data-ke-list-type=&quot;disc&quot;&gt;
&lt;li&gt;&lt;b data-index-in-node=&quot;0&quot; data-path-to-node=&quot;8,0,0&quot;&gt;기능&lt;/b&gt;: 전면 카메라를 통해 사용자의 얼굴 표정(입벌림, 윙크 등)을 인식하여 재생 및 정지를 컨트롤합니다.&lt;/li&gt;
&lt;li&gt;&lt;b data-index-in-node=&quot;0&quot; data-path-to-node=&quot;8,1,0&quot;&gt;얼굴감지&lt;/b&gt;: 입을 벌리는 동작만으로 메트로놈을 컨트롤하는 핸즈프리의 정점을 경험해 보세요.&lt;/li&gt;
&lt;/ul&gt;
&lt;h3 data-path-to-node=&quot;9&quot; data-ke-size=&quot;size23&quot;&gt;2. 눈으로 느끼는 박자: 비트 애니메이션 &amp;amp; 오디오 비주얼 싱크 ⚡&lt;/h3&gt;
&lt;p data-path-to-node=&quot;10&quot; data-ke-size=&quot;size16&quot;&gt;소리만으로는 부족할 때, MetroQ의 시각적 피드백이 연주를 돕습니다.&lt;/p&gt;
&lt;ul style=&quot;list-style-type: disc;&quot; data-path-to-node=&quot;11&quot; data-ke-list-type=&quot;disc&quot;&gt;
&lt;li&gt;&lt;b data-index-in-node=&quot;0&quot; data-path-to-node=&quot;11,0,0&quot;&gt;다양한 모드&lt;/b&gt;: 고전적인 &lt;b data-index-in-node=&quot;13&quot; data-path-to-node=&quot;11,0,0&quot;&gt;진자(Pendulum)&lt;/b&gt; 모드부터 박진감 넘치는 &lt;b data-index-in-node=&quot;39&quot; data-path-to-node=&quot;11,0,0&quot;&gt;바운스볼(Bounce Ball)&lt;/b&gt; 모드까지 취향껏 선택하세요.&lt;/li&gt;
&lt;li&gt;&lt;b data-index-in-node=&quot;0&quot; data-path-to-node=&quot;11,1,0&quot;&gt;오디오 비주얼 싱크&lt;/b&gt;: 블루투스 이어폰을 사용할때 소리와 화면의 싱크가 맞지않는 상황을 해결하는 기능을 만들었습니다. 사운드와 그래픽이 1ms의 오차 없이 완벽하게 맞물려, 시끄러운 합주실에서도 눈으로 박자를 정확히 읽을 수 있습니다.&lt;/li&gt;
&lt;/ul&gt;
&lt;h3 data-path-to-node=&quot;12&quot; data-ke-size=&quot;size23&quot;&gt;3. 연주에만 집중하세요: 재생 영역 확장 &amp;amp; 타이머 ⏱️&lt;/h3&gt;
&lt;ul style=&quot;list-style-type: disc;&quot; data-path-to-node=&quot;13&quot; data-ke-list-type=&quot;disc&quot;&gt;
&lt;li&gt;&lt;b data-index-in-node=&quot;0&quot; data-path-to-node=&quot;13,0,0&quot;&gt;와이드 터치 영역&lt;/b&gt;: 스마트폰의 중앙 전체를 재생 영역으로 확장하여, 연주 중 대충 화면 어디든 터치해도 재생/정지가 가능합니다. 시야를 뺏기지 마세요!&lt;/li&gt;
&lt;li&gt;&lt;b data-index-in-node=&quot;0&quot; data-path-to-node=&quot;13,1,0&quot;&gt;연습 타이머&lt;/b&gt;: 연주 시작 이후 16마디만 템포를 맞추는 &quot;연주 &lt;span style=&quot;color: #333333; text-align: start;&quot;&gt;스타트&lt;span&gt; &lt;/span&gt;&lt;/span&gt;템포 유지&quot; 기능을 만들었습니다.&lt;/li&gt;
&lt;/ul&gt;
&lt;h3 data-path-to-node=&quot;14&quot; data-ke-size=&quot;size23&quot;&gt;4. 나만의 루틴 관리: 프리셋 저장 및 스마트 이동  &lt;/h3&gt;
&lt;p data-path-to-node=&quot;15&quot; data-ke-size=&quot;size16&quot;&gt;곡마다 다른 템포와 박자, 매번 설정하기 번거로우셨죠?&lt;/p&gt;
&lt;ul style=&quot;list-style-type: disc;&quot; data-path-to-node=&quot;16&quot; data-ke-list-type=&quot;disc&quot;&gt;
&lt;li&gt;&lt;b data-index-in-node=&quot;0&quot; data-path-to-node=&quot;16,0,0&quot;&gt;프리셋 저장&lt;/b&gt;: 즐겨 찾는 BPM과 비트 설정을 미리 저장하세요.&lt;/li&gt;
&lt;li&gt;&lt;b data-index-in-node=&quot;0&quot; data-path-to-node=&quot;16,1,0&quot;&gt;스와이프 이동&lt;/b&gt;: 저장된 프리셋 사이를 순식간에 이동하며 연습 흐름을 끊지 않고 이어갈 수 있습니다. (손으로 넘기는 스와이프기능!)&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-filename=&quot;그림02.png&quot; data-origin-width=&quot;658&quot; data-origin-height=&quot;357&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/bffQWZ/dJMcahqQflT/hnale6H3bdYpbUTzHCr7zK/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/bffQWZ/dJMcahqQflT/hnale6H3bdYpbUTzHCr7zK/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/bffQWZ/dJMcahqQflT/hnale6H3bdYpbUTzHCr7zK/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FbffQWZ%2FdJMcahqQflT%2Fhnale6H3bdYpbUTzHCr7zK%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;658&quot; height=&quot;357&quot; data-filename=&quot;그림02.png&quot; data-origin-width=&quot;658&quot; data-origin-height=&quot;357&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;hr data-path-to-node=&quot;17&quot; data-ke-style=&quot;style1&quot; /&gt;
&lt;h3 data-path-to-node=&quot;18&quot; data-ke-size=&quot;size23&quot;&gt;  왜 'MetroQ'여야 할까요?&lt;/h3&gt;
&lt;p data-path-to-node=&quot;19&quot; data-ke-size=&quot;size16&quot;&gt;이 앱은 단순한 코딩 결과물이 아닙니다. &lt;b data-index-in-node=&quot;23&quot; data-path-to-node=&quot;19&quot;&gt;10년 넘게 IT 시스템을 다뤄온 안정성&lt;/b&gt;과 &lt;b data-index-in-node=&quot;52&quot; data-path-to-node=&quot;19&quot;&gt;드럼을사랑하는 연주자의 음악적 디테일&lt;/b&gt;이 결합된 결과물입니다.&lt;/p&gt;
&lt;p data-path-to-node=&quot;20&quot; data-ke-size=&quot;size16&quot;&gt;특히 &lt;b data-index-in-node=&quot;3&quot; data-path-to-node=&quot;20&quot;&gt;'얼굴감지'&lt;/b&gt; 기능은 장애가 있거나 신체적 불편함이 있는 분들도 제약 없이 음악을 즐길 수 있기를 바라는 마음으로 정성껏 구현했습니다.&lt;/p&gt;
&lt;hr data-path-to-node=&quot;21&quot; data-ke-style=&quot;style1&quot; /&gt;
&lt;h3 data-path-to-node=&quot;22&quot; data-ke-size=&quot;size23&quot;&gt;  지금 바로 경험해 보세요! (앱 광고 없음, 무료 다운로드)&lt;/h3&gt;
&lt;p data-path-to-node=&quot;23&quot; data-ke-size=&quot;size16&quot;&gt;100명의 유저가 이미 선택한 이유, 직접 사용해 보시면 알 수 있습니다. 구글 플레이 스토어와 앱스토어에서 'MetroQ'를 검색하세요!&lt;/p&gt;
&lt;p data-path-to-node=&quot;24&quot; data-ke-size=&quot;size16&quot;&gt;&lt;b data-index-in-node=&quot;0&quot; data-path-to-node=&quot;24&quot;&gt;개발자 한마디:&lt;/b&gt; &quot;연주자의 시선이 어디에 머무는지, 손이 어디로 향하는지 수백 번 고민했습니다. 여러분의 연주가 MetroQ와 함께 더 완벽해지길 바랍니다.&quot;&lt;/p&gt;
&lt;p data-path-to-node=&quot;24&quot; data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-path-to-node=&quot;24&quot; data-ke-size=&quot;size16&quot;&gt;iOS&amp;nbsp;다운로드 &lt;br /&gt;&lt;a href=&quot;https://apps.apple.com/app/id6760834276&quot; target=&quot;_blank&quot; rel=&quot;noopener&amp;nbsp;noreferrer&quot;&gt;https://apps.apple.com/app/id6760834276&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;안드로이드&amp;nbsp;다운로드 &lt;br /&gt;&lt;a href=&quot;https://play.google.com/store/apps/details?id=com.yourname.metroq&quot; target=&quot;_blank&quot; rel=&quot;noopener&amp;nbsp;noreferrer&quot;&gt;https://play.google.com/store/apps/details?id=com.yourname.metroq&lt;/a&gt;&lt;/p&gt;</description>
      <category>#메트로놈 #핸즈프리 #MetroQ #악기연습 #드럼연습 #피아노독학 #얼굴감지 박자 #IT음악</category>
      <author>flutterstory</author>
      <guid isPermaLink="true">https://flutterstory.tistory.com/3</guid>
      <comments>https://flutterstory.tistory.com/3#entry3comment</comments>
      <pubDate>Sat, 9 May 2026 09:21:40 +0900</pubDate>
    </item>
    <item>
      <title>[Support] MetroQ - Smart Metronome with Face Detection</title>
      <link>https://flutterstory.tistory.com/2</link>
      <description>&lt;p data-path-to-node=&quot;7,0&quot; data-ke-size=&quot;size16&quot;&gt;&lt;b data-index-in-node=&quot;0&quot; data-path-to-node=&quot;7,0&quot;&gt;Welcome to MetroQ Support!&lt;/b&gt;&lt;/p&gt;
&lt;p data-path-to-node=&quot;7,1&quot; data-ke-size=&quot;size16&quot;&gt;MetroQ는 얼굴 인식 기술을 활용하여 연주자의 움직임에 따라 자동으로 반응하는 스마트 메트로놈 앱입니다. (MetroQ is a smart metronome app that uses face detection technology to respond to the performer's movements in real-time.)&lt;/p&gt;
&lt;p data-path-to-node=&quot;7,2&quot; data-ke-size=&quot;size16&quot;&gt;&lt;b data-index-in-node=&quot;0&quot; data-path-to-node=&quot;7,2&quot;&gt;[Contact Us / 문의 방법]&lt;/b&gt; 앱 사용 중 불편한 점, 기능 제안, 혹은 기술적인 지원이 필요하시면 언제든지 아래 이메일로 연락 주시기 바랍니다.&lt;/p&gt;
&lt;ul style=&quot;list-style-type: disc;&quot; data-path-to-node=&quot;7,3&quot; data-ke-list-type=&quot;disc&quot;&gt;
&lt;li&gt;&lt;b data-index-in-node=&quot;0&quot; data-path-to-node=&quot;7,3,0,0&quot;&gt;Email:&lt;/b&gt; &lt;b data-index-in-node=&quot;7&quot; data-path-to-node=&quot;7,3,0,0&quot;&gt;leh4321@gmail.com&lt;/b&gt;&lt;/li&gt;
&lt;li&gt;&lt;b data-index-in-node=&quot;0&quot; data-path-to-node=&quot;7,3,1,0&quot;&gt;Response Time:&lt;/b&gt; 영업일 기준 24~48시간 이내 (Within 24-48 business hours)&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignLeft&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-filename=&quot;그림07.png&quot; data-origin-width=&quot;1242&quot; data-origin-height=&quot;2688&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/brszQd/dJMcaiWY0Lb/kzWuRhS7omECwluhB7VMZ1/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/brszQd/dJMcaiWY0Lb/kzWuRhS7omECwluhB7VMZ1/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/brszQd/dJMcaiWY0Lb/kzWuRhS7omECwluhB7VMZ1/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FbrszQd%2FdJMcaiWY0Lb%2FkzWuRhS7omECwluhB7VMZ1%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;317&quot; height=&quot;2688&quot; data-filename=&quot;그림07.png&quot; data-origin-width=&quot;1242&quot; data-origin-height=&quot;2688&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;</description>
      <author>flutterstory</author>
      <guid isPermaLink="true">https://flutterstory.tistory.com/2</guid>
      <comments>https://flutterstory.tistory.com/2#entry2comment</comments>
      <pubDate>Wed, 25 Mar 2026 21:40:45 +0900</pubDate>
    </item>
    <item>
      <title>[디버깅] 'AssetSource'라는 메서드가 정의 되지 않은 컴파일 오류</title>
      <link>https://flutterstory.tistory.com/1</link>
      <description>&lt;p data-ke-size=&quot;size16&quot;&gt;Flutter에서 버튼을 눌렀을 때 특정 MP3 파일을 재생하기 위한 프로그래밍을 구현 중이며&lt;br&gt;&amp;nbsp;&lt;br&gt;기본 소스를 구현한 후에 컴파일을 해봤다.&amp;nbsp;&lt;br&gt;&amp;nbsp;&lt;br&gt;분명히 AssetSource메소드를 정의함에도 불구하고 플러터 컴파일 시 아래와 같은 메시지로&lt;br&gt;나를 슬프게 한다.&lt;br&gt;&amp;nbsp;&lt;br&gt;Try correcting the name to the name of an existing method, or defining a method named 'AssetSource'.&amp;nbsp;&lt;br&gt;..........&lt;br&gt;&amp;nbsp;&lt;br&gt;&lt;b&gt;&lt;span style=&quot;color: #006DD7;&quot;&gt;아래 audioplayers : 의 버전이 0.12.X로 되어있어서 5.1.0으로 변경해보니 잘 실행된다.&amp;nbsp;&lt;/span&gt;&lt;/b&gt;&lt;/p&gt;&lt;div style=&quot;background-color: #ffffff; color: #080808;&quot;&gt; 
 &lt;pre class=&quot;dts&quot;&gt;&lt;code&gt;dependencies:
  audioplayers: ^5.1.0
  flutter:
    sdk: flutter&lt;/code&gt;&lt;/pre&gt; 
&lt;/div&gt;&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;br&gt;내가 좋아하는 mp3를 모아서 바둑판식 배열의 버튼으로 구현하여 mp3 플레이어를 만들 예정이며,&lt;br&gt;&amp;nbsp;&lt;br&gt;일단 테스트삼아 10분정도 투자해서 구현한 화면이다.&amp;nbsp;&lt;br&gt;&amp;nbsp;&lt;/p&gt;&lt;figure class=&quot;imageblock alignLeft&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-origin-width=&quot;974&quot; data-origin-height=&quot;1248&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/Ll6Fh/btsNSfoln87/kCs6LkTnp3CkSty5nNRpoK/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/Ll6Fh/btsNSfoln87/kCs6LkTnp3CkSty5nNRpoK/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/Ll6Fh/btsNSfoln87/kCs6LkTnp3CkSty5nNRpoK/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FLl6Fh%2FbtsNSfoln87%2FkCs6LkTnp3CkSty5nNRpoK%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;290&quot; height=&quot;372&quot; data-origin-width=&quot;974&quot; data-origin-height=&quot;1248&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;</description>
      <author>flutterstory</author>
      <guid isPermaLink="true">https://flutterstory.tistory.com/1</guid>
      <comments>https://flutterstory.tistory.com/1#entry1comment</comments>
      <pubDate>Sun, 11 May 2025 10:49:24 +0900</pubDate>
    </item>
  </channel>
</rss>