<?xml version="1.0" encoding="utf-8" standalone="yes"?><rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom"><channel><title>오디오 디코딩 on 얼쑤 · Team Edo</title><link>https://team-edo.github.io/tags/%EC%98%A4%EB%94%94%EC%98%A4-%EB%94%94%EC%BD%94%EB%94%A9/</link><description>Recent content in 오디오 디코딩 on 얼쑤 · Team Edo</description><generator>Hugo</generator><language>ko-kr</language><lastBuildDate>Sun, 08 Nov 2026 00:00:00 +0900</lastBuildDate><atom:link href="https://team-edo.github.io/tags/%EC%98%A4%EB%94%94%EC%98%A4-%EB%94%94%EC%BD%94%EB%94%A9/index.xml" rel="self" type="application/rss+xml"/><item><title>10초 AAC를 4.62초만 읽고 성공한 FFmpeg</title><link>https://team-edo.github.io/posts/2026/11/aac-packet-truncation/</link><pubDate>Sun, 08 Nov 2026 00:00:00 +0900</pubDate><guid>https://team-edo.github.io/posts/2026/11/aac-packet-truncation/</guid><description>&lt;p>얼쑤의 연주 분석 서버는 녹음을 받은 뒤 FFmpeg로 소리를 풀어 음높이와 박자를 계산합니다. 이 변환을 구현하면서 10초짜리 AAC 파일을 중간에서 잘라 봤습니다. FFmpeg는 성공을 뜻하는 종료 코드 &lt;code>0&lt;/code>을 반환했고, FFprobe는 파일 길이가 여전히 10초라고 보고했습니다. 디코딩한 샘플을 세어 보니 실제로 읽힌 소리는 &lt;strong>4.62초&lt;/strong>였습니다.&lt;/p>
&lt;h2 id="잘린-위치에-따라-결과가-달랐습니다">잘린 위치에 따라 다른 결과&lt;/h2>
&lt;p>파일의 바이트를 임의 위치에서 자르면 AAC 패킷 중간을 끊을 수 있습니다. 디코더가 불완전한 패킷을 만나면 오류를 냅니다. 오류가 난 구간을 건너뛴 채 분석을 이어가면, 중간 소리가 빠져 뒤의 음이 앞당겨질 수 있습니다. 그래서 디코딩 오류가 발생하면 바로 멈추도록 &lt;code>-xerror&lt;/code>를 사용했습니다. &lt;a href="https://github.com/FFmpeg/FFmpeg/blob/n8.0/doc/ffmpeg.texi">FFmpeg 옵션 문서&lt;/a>&lt;/p></description></item></channel></rss>