이전에 올린 글에서는 PSP의 [인터넷 라디오] 기능이 작동하는 기본적인 원리와 함께, 당시 SCE에서 공식적으로 제공한 프리셋들을 소개했었다.
PSP [인터넷 라디오] 기능 해부: ① 기본적인 동작 원리와 공식 프리셋
PSP에는 [인터넷 라디오]라는 기능이 있다. 이 기능은 PSP에 내장된 [인터넷 브라우저]로 전용 플러그인을 지원하는 플레이어 웹 사이트에 접속하여 MP3 또는 AAC 규격의 오디오 스트림을 재생하는
blog.bsod.kr
아마 위의 글을 읽고 온 독자라면 '공식 웹 플레이어 사이트들이 아직도 멀쩡히 접속 가능하다'는 대목에서 가장 놀라움을 느꼈을 법하다.
그러나 PS3용 넷플릭스 앱도 바로 다음달(2026년 3월 2일)에 지원 종료가 결정된 현실 속에서, 이들을 여태까지 호스팅해 온 소니의 서버도 언제 조용히 폐쇄될 지 모르는 것이 사실이다.
그럼 서버가 폐쇄된다면 영영 공식 프리셋에 딸린 웹 플레이어들을 이용할 수 없게 될까? 정답부터 말하자면 그렇지 않다.

이런 웹 플레이어 사이트들은 웹 페이지 자체가 외부 의존성 없이 하나의 완성된 기능을 수행한다.
그렇기에 웹 사이트의 모든 소스를 그대로 백업하여 다른 웹 서버에서 호스팅하거나, 혹은 이를 PSP의 메모리 스틱에 저장해 두고 접근해도 똑같이 동작시킬 수 있다는 의미.
그래서 이 글에서는 공식 프리셋에 딸린 웹 플레이어를 PSP 내에 로컬 HTML로 아카이빙하여 사실상 영구적으로 이용 가능하도록 만드는 방법을 소개해 보고자 한다.
1. 웹 플레이어의 소스 백업본 확보
아래의 압축 파일은 공식 프리셋 전 22종에 대응하는 웹 플레이어 사이트들의 소스를 백업한 것이다.

각 프리셋에 대한 소스들은 압축 파일 최상위에 개별 폴더로 구분하였으며, 이러한 폴더들의 내부 구조는 일반적으로 아래와 같이 이루어져 있다.
/css/* 및 /images/*
• 플레이어의 UI를 구성하는 리소스가 담긴 곳
/js/*
• 플레이어의 핵심 로직을 구현한 자바스크립트 코드가 담긴 곳
• 만약 플레이어가 동작하는 방식을 직접 수정하고자 한다면 이 폴더 내에 있는 코드를 집중적으로 살펴보아야 한다.
/index.html
• 실제로 접속 시 마주하게 되는 메인 페이지
2. 소스 백업본과 연결된 프리셋 만들기
PSP의 [인터넷 라디오] 기능은 특정한 웹 페이지의 경로가 지정된 프리셋을 호출해야만 실행되는 특징이 있다.
따라서 단순히 메모리 스틱에 소스 백업본을 저장하는 것만으로는 충분하지 않고, 이 소스 백업본이 저장된 경로를 가리키는 별도의 프리셋을 따로 구축해야 할 필요가 있다.
1) 공식 SDK 다운로드
프리셋 파일은 한때 SCE에서 배포했던 공식 SDK를 통해 쉽게 제작할 수 있다.
현재는 이와 관련된 공식 도움말이 폐쇄되어 정식 경로를 통한 다운로드는 어렵고, 레딧 스레드 등지에 아카이브된 파일을 통해서만 입수가 가능하다.
https://drive.google.com/file/d/1oLbxWszZT_wJ_Sqk2vfnHEbt3UohN1T-/view?usp=drive_link
PSP_INTERNET_RADIO_PLAYER_SDK_500E.zip
drive.google.com
2) 프리셋 템플릿 작성
프리셋 파일을 제작하기 위해서는 먼저 아래와 같은 양식의 템플릿을 XML 포맷으로 준비해야 한다.
<?xml version="1.0" encoding="UTF-8"?>
<radioplayer title="YOUR PLAYER NAME"
icon=""
focus_icon="">
<info
author="YOUR NAME"
radioplayer_url="http://YOUR_RADIOPLAYER_URL"
homepage_url="http://YOUR_HOMEPAGE_URL"
comment="YOUR COMMENT"
copyright="YOUR COPYRIGHT"
/>
</radioplayer>
템플릿에 기재되는 내용을 하나하나 살펴보면 아래와 같다.
title (필수)
• XMB에서 표시되는 프리셋의 이름
icon 및 focus_icon
• XMB에서 표시되는 프리셋의 아이콘
• focus_icon은 XMB 상에서 포커스되었을 때 따로 표시되는 아이콘에 대한 정의로, 미정의 시 icon이 대신 표시된다.
• PC 상에서 템플릿 문서가 위치한 곳을 기준으로, 원하는 이미지 파일의 경로를 기재한다.
• 예를 들어, 템플릿 문서와 같은 폴더 아래에 있는 'icon.png' 파일을 쓰고자 할 경우 "icon.png"로 기재하면 된다.
author
• 프리셋을 만든 제작자의 이름
radioplayer_url (필수)
• 플레이어 웹 페이지의 URL
• 인터넷상의 주소는 물론 메모리 스틱에 저장된 HTML 파일의 경로도 기재 가능하다.
• 메모리 스틱 내의 HTML 파일을 지정하려는 경우, 'file:/'로 시작하는 URL을 통해 해당 파일이 저장된 경로를 기재한다.
• 예를 들어, 메모리 스틱의 최상위 경로에 있는 'index.html' 파일을 쓰고자 할 경우 "file:/index.html"로 기재하면 된다.
homepage_url
• 프리셋을 만든 제작자의 대표 홈페이지 URL
comment
• 프리셋을 설명하는 문구
copyright
• 프리셋을 만든 제작자와 관련된 저작권 정보




필자는 메모리 스틱의 최상위에 [HTML]이라는 폴더를 두어 이곳에 프리셋별 소스 폴더들을 각각 배치할 생각이다. 이 경우 템플릿에 들어가는 homepage_url은 file/HTML/(프리셋별 폴더명)/index.html과 같은 형태가 되어야 한다.
공식 프리셋에 포함된 정보를 그대로 옮긴 채 homepage_url만 바꿔 준다면 아래와 같은 내용의 템플릿이 완성된다.
<?xml version="1.0" encoding="UTF-8"?>
<radioplayer title="Internet Radio Player Ⅰ"
icon="InternetRadioPlayerI.png"
focus_icon="">
<info
author="SCEI"
radioplayer_url="file:/HTML/PLAYER_I/index.html"
homepage_url="http://www.playstation.com/psp-app/radio.html"
comment="Internet Radio Player Ⅰ. This player is using the SHOUTcast directory service."
copyright="© 2007 SCEI ALL RIGHTS RESERVED."
/>
</radioplayer>

필요할 경우 프리셋 파일 생성 시 아이콘으로 포함시킬 이미지 파일들도 같이 준비해 둔다. 템플릿 문서를 작성할 때 'icon' 부분에 명시했던 경로에 맞게 위치시켜 주면 된다.
(참고) 공식 프리셋 파일에서 아이콘 추출하는 법
공식 프리셋을 최대한 모방하며 템플릿을 작성하려 할 경우 아이콘을 어떻게 확보해야 할 지 고민될 수 있을 것이다.

가장 확실한 방법은 공식 프리셋 파일을 HEX 에디터로 열고, 'PNG' 시그니처가 시작되는 지점부터 끝까지의 데이터를 별도 파일로 저장하면 된다. 이렇게 하면 공식 프리셋에 삽입된 PNG 포맷의 아이콘 이미지를 추출할 수 있다.
3) 프리셋 파일 생성
템플릿 문서와 아이콘용 이미지가 모두 준비되었다면 이제 이 둘을 컴파일러에 넣고 돌려서 프리셋 파일을 생성한다. 이 단락은 Windows 환경을 기준으로 설명하겠다.

컴파일러는 위에서 내려받은 공식 SDK 패키지에서 /RADIO_PLAYER_ICON/WORK/Windows/ 폴더에 prscompiler.exe라는 이름의 파일로 존재한다.


prscomplier.exe가 위치한 경로 내에 템플릿 문서와 아이콘용 이미지를 두고, 드래그 앤 드롭을 통해 템플릿 문서를 prscompiler.exe로 열면 템플릿 문서와 똑같은 이름의 프리셋(.prs) 파일이 생성된다.
(참고) 컴파일러 실행이 안 될 경우

간혹 이런 오류 메시지가 표시되며 컴파일러가 실행되지 않는 경우가 있을 수 있다.
이럴 때에는 Microsoft .NET Framework 버전 1.1 재배포 가능 패키지를 설치한 다음, C:/Windows/Microsoft.NET/Framework/v1.1.4322/ 폴더에 위치한 msvcr71.dll을 컴파일러가 위치한 경로에 복사해 주면 된다.
3. 소스 백업본과 프리셋을 메모리 스틱에 넣기

위에서 내려받은 소스 백업본 압축 파일(source.zip) 속의 내용물을 그대로 메모리 스틱에 복사한다.
필자의 경우 /HTML/ 경로에 복사하였다.

소스 백업본을 복사해 둔 경로에 맞게 새로 생성한 프리셋 파일들을 메모리 스틱의 /PSP/RADIOPLAYER/ 경로에 복사한다.
만약 소스 백업본을 필자와 동일한 경로(/HTML/)에 복사했다면, 필자가 생성한 프리셋 파일을 대신 활용해도 된다.
4. PSP에서 프리셋 실행

메모리 스틱을 꽂은 상태에서 XMB의 [인터넷 라디오] 메뉴로 들어가면 손수 넣어준 프리셋들이 잘 표시되며,

프리셋들의 정보를 확인하면 [어드레스] 부분에 메모리 스틱 내부의 경로가 기재되어 있는 것을 확인할 수 있다.


소니의 서버에서 호스팅되는 웹 플레이어 페이지에 접속했을 때와 동일하게 모든 기능을 정상적으로 이용할 수 있다.
'탐구' 카테고리의 다른 글
| PSP [인터넷 라디오] 기능 해부: ① 기본적인 동작 원리와 공식 프리셋 (1) | 2026.01.29 |
|---|
댓글