Audio Streaming System Design for Low-Quality Systems

저 사양 시스템에서 오디오 스트리밍을 위한 시스템 설계

  • 신승철 (연세대학교 컴퓨터과학과) ;
  • 정철호 (연세대학교 컴퓨터과학과) ;
  • 한탁돈 (연세대학교 컴퓨터과학과)
  • Published : 2006.02.13

Abstract

정보통신 기술의 발달로 근래에는 인터넷 방송 서비스가 활성화되었으며 누구든 자유롭게 방송을 제작하거나 청취할 수 있다. 이러한 인터넷 방송을 이용하기 위해서는 PC 를 이용하는 방법이 일반적이지만 오디오 서비스만을 이용할 경우 불편하다. 본 논문에서는 낮은 사양의 시스템에서 인터넷 방송을 청취하기 위한 하드웨어와 소프트웨어 설계 기법 그리고 효율적인 버퍼링 방법을 제안하였다. 제안된 시스템은 8 비트 마이크로 컨트롤러, 32KB 의 메모리, Hardwired TCP/IP Stack 그리고 Hardwired MP3 디코더를 이용하여 설계하였으며 각 작업간의 스케쥴링을 위하여 타이머 인터럽트를 이용하였다. 16KB의 메모리로 몇 가지 버퍼링 기법을 제안했다. 폴링 방식은 가장 보편적인 방법으로 데이터를 전송받는 작업과 음악을 재생하는 작업이 순차적으로 이루어진다. 이 방법은 데이터 전송과 음악 재생을 동시에 할 수 없기 때문에 타이머 인터럽트를 이용한 버퍼링 모델이 사용된다. 두 번째로 메모리를 두개의 블록으로 나누어 한 블록에는 데이터를 저장하고 다른 한 블록에는 데이터를 내보내는 '더블 버퍼링'을 제안했다. 세 번째는 메모리 블록을 여러 단계로 나눈'n-Queue 버퍼링' 기법을 제안했다. 마지막으로 네트워크 상황에 따라서 블록의 개수를 유동적으로 조절하는 '가변 길이 n-Queue 버퍼링' 기법을 제안했다. 이 방법은 네트워크 상황에 따라 메모리의 크기를 유동적으로 할당하기 때문에 메모리 사용률이 높아지는 장점이 있다. 본 논문에서 제안하는 시스템은 운영체제를 사용하지 않았기 때문에 TV 나 오디오 등 다른 시스템에 이식이 용이하므로 다양한 기기에 적용이 가능하다.

Keywords