Radio Player 20021649 황성은 20021511 배영민 20021471 김하규
목차 1. 프로젝트명 2. 수행필요성 3. 국내외 현황 4. 개발 및 연구내용 5. 기존 개발내용과의 차별성 6. 기대효과 7. 개발일정 8. 참고문헌 9. 팀 구성원의 기여도
Internet Radio Player 고등학교 시절 야간자율 학습을 하며 라디오를 몰래 들으며 즐거워하던 기억이 누구나 한 번 쯤은 있을 것이다. 현재에도 많은 사람들이 라디오를 듣지만 컴퓨터를 통하여 인터넷 라디오를 듣는 것이 달라진 점이다.
수행 필요성 아날로그 전송방식은 고품질의 음악, 멀티미디어 등 다양하게 부상하는 서비스 요구에 적절히 부응하지 못하는 원천적 한계성을 지님. FM방송에 대한 신규수요는 지속적으로 증가 반면 FM 주파수 자원은 거의 고갈되어 신규채널 공급의 한계. 주파수 자원의 효율적 사용을 위한 대안으로 인터넷 라디오가 각광.
국내외 현황 - 전세계의 많은 방송사들이 많은 돈을 들여 인터넷 방송전용 서버를 구축해서 라디오를 방송 중. - 전세계의 많은 방송사들이 많은 돈을 들여 인터넷 방송전용 서버를 구축해서 라디오를 방송 중. - 국내에도 이미 수년 전부터 KBS, MBC등이 인터넷으로 라디오 생중계. SBS는 오디오 방송 뿐만 아니라 비디오도 함께 송출. 인터넷 전용 방송국도 우후죽순처럼 많이 생김. - 개인이 자신의 개인용컴퓨터로 구축한 소형 방송국들도 국내에만 수백 개 이상임.
국내외 현황 MBC(MINI) SBS(GORILLA) KBS(KONG)
국내외 현황 AVS iRadio Percatus Radio
인터넷 라디오 이용현황
인터넷 라디오 이용현황
인터넷 라디오 이용현황
인터넷 라디오 이용현황
mms 프로토콜접근은 음악을 재생하는것과 비슷한 과정을 통해 가능합니다 개발 및 연구 내용 초기 라디오 플레이어를 구현하기 위해서 FMod의 사운드 라이브러리를 사용하여 라디오 플레이어를 구현했으나 mms 프로토콜 재생에 문제가 발생 하였습니다 조사결과 mms(micro media server)는 windows media Player Library를 이용하면 쉽게 접근할수 있음을 알게되었는데 기존에 70% 정도 완성 되었던 프로그램을 과감히 버리고 늦게나마 windows media Player Library를 사용하여 처음부터 다시 설계하게 되었습니다 mms 프로토콜접근은 음악을 재생하는것과 비슷한 과정을 통해 가능합니다 #include "wmpplayer4.h" // 윈도우 미디어 플레이어 #include "wmpcontrols.h" // 미디어 플레이어 제어 #include "wmpplaylist.h" // 미디어 플레이어 플레이 리스트 #include "wmpsettings.h" // 미디어 플레이어 기본설정
개발 및 연구 내용 CWMPNetwork m_WMnet; // 미디어 플레이어의 네트워크 접근 클래스 CWMPPlaylist m_WMList; // 미디어 플레이어 플레이 리스트 클래스 CWMPControls m_WmCtrl; // 미디어 플레이어 제어 클래스 CProgressCtrl m_WmProg; // 버퍼링을 나타내기 위한 프로그레스 CWMPPlayer4 m_PM; // 미디어 플레이어 클래스 int cur = m_List.GetCurSel(); // 현재 선택된 리스트 박스의 위치 조사 m_PM.SetCurrentMedia(m_WMList.GetItem(cur)); // 미디어 플레이어에 재생할 미디어(파일 혹은 URL)을 설정 m_WmCtrl = m_PM.GetControls(); // 현재 제어 값을 설정 m_WmCtrl.play(); // 현재 제어를 재생 for(int i=0; i<100;) // 버퍼링 표시 { m_WmProg.SetPos(i); i+=5; Sleep(200);
개발 및 연구 내용 CWMPNetwork m_WMnet; // 미디어 플레이어의 네트워크 접근 클래스 CWMPPlaylist m_WMList; // 미디어 플레이어 플레이 리스트 클래스 CWMPControls m_WmCtrl; // 미디어 플레이어 제어 클래스 CProgressCtrl m_WmProg; // 버퍼링을 나타내기 위한 프로그레스 CWMPPlayer4 m_PM; // 미디어 플레이어 클래스 int cur = m_List.GetCurSel(); // 현재 선택된 리스트 박스의 위치 조사 m_PM.SetCurrentMedia(m_WMList.GetItem(cur)); // 미디어 플레이어에 재생할 미디어(파일 혹은 URL)을 설정 m_WmCtrl = m_PM.GetControls(); // 현재 제어 값을 설정 m_WmCtrl.play(); // 현재 제어를 재생 for(int i=0; i<100;) // 버퍼링 표시 { m_WmProg.SetPos(i); i+=5; Sleep(200);
(1) 초기에 고안한 프로그램 접근 방법 및 인터페이스 기존 개발내용과의 차별성 (1) 초기에 고안한 프로그램 접근 방법 및 인터페이스 좌표를 맞춰가며 열심히 만든 스킨 깔끔한 디자인을 보여줌 하지만 인터넷 라디오 접근에 용이한 미디어 플레이어 라이브러리가 클래스로 정의 되어 있었고, 비트맵을 이용해서 거기에 대응되는 인터페이스를 구성하기엔, 또 다시 새로운 라이브러리를 적용하여야 하는 문제가 발생. 결국 다이얼로그로 전환하기로 결정. Fmod는 음향이라는 분야에서는 확실히 차별적인 성능을 제공했지만, 인터넷 라디오 청취를 위한 기능은 극히 미약했기 때문에, 수많은 스테이션을 활용하기 위해 Window Media Player 라이브러리로 바꾸기로 함
(2) 새롭게 고안한 프로그램 접근 방법 및 인터페이스 기존 개발내용과의 차별성 (2) 새롭게 고안한 프로그램 접근 방법 및 인터페이스 Windows media player Library Fmod Library
기대효과 다른 프로세스들과 동시다발적인 사용이 용이하므로 왠만한 타 프로그램보다 더 많은 런타임 기대 다른 프로세스들과 동시다발적인 사용이 용이하므로 왠만한 타 프로그램보다 더 많은 런타임 기대 인터넷 라디오 플레이어를 무료로 배포함으로써 라디오 청취율 증가 지역의 제약 없이 전 세계 어디서나 청취가 가능하기 때문에 난시청 지역과 해외 등의 신규 청취자를 확보 청취율 증가에 따른 광고 수익 및 많은 업체의 배너 활성화 등을 통해 다양한 수익을 창출
개발 일정 세 부 항 목 1주 2주 3주 4주 5주 6주 주제 선정 자료수집 & 분석 설계 & 구현 테스트 & 디버깅 자료수집 & 분석 설계 & 구현 테스트 & 디버깅 완성 및 최종발표
참고문헌 (1)윈도우즈 API정복 - Volume1 (한빛미디어, 김상형 저) (2) 윈도우즈 API정복 - Volume2 (3) 예제로 배우는 Visual C++ 6.0 프로그래밍 (영진출판사, 여인추 김건우 편저) (4) 윈도우 네트워크 프로그래밍 - TCP/IP 소켓 프로그래밍(한빛미디어, 김선우 저)
팀 구성원의 기여도 황성은 배영민 김하규 ◎ 세 부 항 목 자료수집 & 분석 설계 구현 테스트 & 디버깅 PPT & 보고서 ◎ 설계 구현 테스트 & 디버깅 PPT & 보고서 발표
The End