PSP Firmware 3.80+ Internet Radio Player Function Documentation v5

Total functions as of 5.00: 59
No changes in 4.00.
Total functions as of 3.93: 56
Total functions as of 3.90: 55
Total functions as of 3.80: 56
Updated 10/16/2008: Added info translated from the official documentation, plus basic documentation of new functions in 5.00.
Updated 10/15/2008: Finally figured out how to take a screenshot! Examples here.
Updated 7/10/2008: Found more info about sysRadioCapabilityCheck by checking the latest online version of the official radio player.
Updated 3/18/2008: Checked 3.93. New function added: sysRadioSleep, not yet documented.
Updated 2/1/2008: Checked functions against a 3.90 RAM dump. sysRadioSetRetryIntervalTime is gone.

Whenever a parameter is in yellow, the parameter is optional. Text in red is unknown.
Feedback functions
Function namePurposeParametersParameter TypeParameter purpose/valid values/notes
sysRadioPlayEffectSoundplay a click sound effectofficial documentation mentions more sound effects in future firmwares
sysRadioBusyIndicatorturns the busy indicator on or off
flagnumber0 or 1
sysRadioBackLightAlwaysOnindicate whether to always keep the backlight ononly works when plugged in
flagnumber0 or 1
Stream info functions
Function namePurposeParametersParameter TypeParameter purpose/valid values/notes
sysRadioGetRelatedPageUrlgets the related URL of the current stream, if available. shoutcast streams tend to provide this
sysRadioGetStreamUrlgets the URL of the current stream
sysRadioGetContentMetaInfogets metainfo about the current stream
charCodeConvertOptionnumber0: No conversion
1: SJIS (CP932) to UTF-8
2: EUC-KR (CP949) to UTF-8
sysRadioGetStreamIpAddressgets the IP of the current stream
sysRadioGetStreamPortgets the port of the current stream
sysRadioGetStreamTitlereturns the name of the station (the title)
Sound effect functions
Function namePurposeParametersParameter TypeParameter purpose/valid values/notes
sysRadioSetAudioCutOffWidthapplies a frequency cutoff range to the audio stream
valnumber-256 to 256
sysRadioSetAudioShiftWidthapplies a sweeping phase shift to the audio stream
valnumber-256 to 256
sysRadioSetAudioPitchShiftWidthsets the range of frequency change used in the random pitch bending in the sine wave oscillator
valnumber-256 to 256
sysRadioSetSineWaveOscillatorFrequencyAndVolumeplay a frequency that can be shifted randomly; play morse code translation of text
freqnumberfrequency in Hz, 0 to 22500
volnumbervolume, 0 to 255
tensionnumberdegree of frequency variation, 0 to 255; smaller value = faster variation
cwtextstringmorse code text
keyingspeednumberspeed of the morse code, 0 to 32
sysRadioSetWhiteNoiseOscillatorVolumeset the parameters of the white noise generator
volnumbervolume, 0 to 255
lowFnumberminimum frequency in Hz, 0 to 22500
highFnumbermaximum frequency in Hz, 0 to 22500
tensionnumberdegree of frequency variation, 0 to 255; smaller value = faster variation
HTTP downloading functions
Function namePurposeParametersParameter TypeParameter purpose/valid values/notes
sysRadioPrepareForHttpGetprepare to execute an HTTP transaction
urlstringthe URL to download
userAgentNamestringthe user agent to use
lengthnumberthe amount of data to download (maximum - if the file is smaller than this, it'll load OK)
0 to 49152
charCodeConvertOptionnumber0: No conversion
1: SJIS (CP932) to UTF-8
2: EUC-KR (CP949) to UTF-8
sysRadioGetHttpGetStatusreturns the current HTTP transaction statusreturn values:
1 or -1 = still processing
0 = complete
if the transaction is complete and this returns -1, there was an error
sysRadioGetHttpGetResultreturns the data downloaded in the HTTP transaction
sysRadioHttpGetTerminateterminate the HTTP GET transaction and clear up resources
Playback functions
Function namePurposeParametersParameter TypeParameter purpose/valid values/notes
sysRadioSetSubVolumeset the volume of JUST the stream playback; leave other volumes alone
volnumbervolume level, 0 to 255
sysRadioSetMasterVolumeset the master volume (streaming audio volume AND generated audio volume)
volnumbervolume level, 0 to 255
sysRadioStopstop audio playback
modenumber0: all audio (including plugin-generated audio)
1: only streaming audio
sysRadioPlayPlsparse and play a PLS stream playlist
urlstringURL of PLS playlist to play (e.g. Shoutcast)
userAgentName0stringuser agent to use for getting the PLS
userAgentName1stringuser agent to use for getting the stream
sysRadioPlayM3uparse and play a M3U stream playlist
urlstringURL of M3U playlist to play (e.g. Shoutcast)
userAgentName0stringuser agent to use for getting the M3U
userAgentName1stringuser agent to use for getting the stream
sysRadioPlayStreamplay a raw MP3/AAC stream
urlstringURL of stream playlist to play (e.g. Shoutcast)
userAgentNamestringuser agent to use for getting the stream
Analysis/diagnosis functions
Function namePurposeParametersParameter TypeParameter purpose/valid values/notes
sysRadioGetLeftAudioPeakLevelget current left channel level
sysRadioGetLeftAudioAverageLevelget average left channel levelnew in 5.00
sysRadioGetRightAudioPeakLevelget current right channel level
sysRadioGetRightAudioAverageLevelget current right channel levelnew in 5.00
sysRadioGetAudioSoundDistortionRateget sound distortion rate (how much the audio is distorted by frame dropping)
sysRadioGetStreamBufferLevelget stream buffer level
sysRadioGetNetworkBandQualityget stream connection quality
sysRadioGetPlayerCoreVersionInfogets the core version info of the playerPSP Slim, FW 3.80: returns 'PSP2000:RadioPlayerCore_3.8.0'
PSP Slim, FW 3.90: returns 'PSP2000:RadioPlayerCore_3.9.0'
PSP Slim, FW 5.00: returns 'PSP2000:RadioPlayerCore_5.0.0'
sysRadioGetPlayerStatusgets the player statusreturn values:
0: idle
1: playing audio stream
2: retrieving m3u/pls
3: analyzing m3u/pls
4: connecting to server
-1: error
sysRadioGetBitRategets the bitrate of the stream
sysRadioGetSamplingRategets the sampling rate of the stream
sysRadioCapabilityCheckdetermines if the current radio player has various capabilities0: check for AAC Plus support
1: check for sleep support
idnumberUnknown
String functions
Function namePurposeParametersParameter TypeParameter purpose/valid values/notes
sysRadioPrepareForStrOperationprepare for a string for string operations (crop to max. length, convert to usable text)
strstringstring to operate on; max. length is 51199
sysRadioStrLengthreturn the length of the current string
sysRadioStrIndexOfsearch for a string in the current string; returns the starting position
patternstringstring to search for
startPosnumberstarting position for search
sysRadioStrSlicereturn the piece of the current string starting at X and ending at Y
startPosnumberbeginning position
endPosnumberending position
sysRadioStrOperationTerminateterminate string processing
sysRadioCharacterEntityConvertconverts a string containing entities (e.g.  ) to a normal string
strstringmax. length is 511
sysRadioStrCharCodeAtreturns the character code of a character at a given position in the current string
posnumbernew in 5.00
Interaction functions
Function namePurposeParametersParameter TypeParameter purpose/valid values/notes
sysRadioGetAnalogStickXValueget the X position of the analog stickreturns 0 if square isn't pressed
sysRadioGetAnalogStickYValueget the Y position of the analog stickreturns 0 if square isn't pressed
sysRadioGetAnalogStickAngleValueget the polar angle of the analog stickreturns 0 if square isn't pressed
sysRadioGetAnalogStickRadiusValueget the polar radius of the analog stickreturns 0 if square isn't pressed
sysRadioGetStartButtonToggleStatuswith the plugin active, the start button acts as a toggle switch; each press toggles 1 or 0. this checks its state.
Debug functions
Function namePurposeParametersParameter TypeParameter purpose/valid values/notes
sysRadioSetDebugModeswitch in and out of debug mode
flagnumberwhen set to 1, this is the only mode where a screenshot can be taken or the debug log can be displayed.
sysRadioSetDebugLogTextStyleset the style, color, and alignment of the debug logthe official player uses (224,224,224,255,255,255,255,255,30,30,40,96,1,0,1)
R1, G1, B1, A1numbersred, green, blue, and alpha values for the top half of the gradient on the text (0-255)
R2, G2, B2, A2numbersred, green, blue, and alpha values for the bottom half of the gradient on the text (0-255)
R3, G3, B3, A3numbersred, green, blue, and alpha values for the background (0-255) - optional
stylenumber0: normal
1: bold
alignmentnumber0: left
1: center
2: right
sysRadioDebugLogprint to the debug logdebug log notes:
text wraps at 37 chars; max. of 16 rows on screen. if more are added, the log scrolls.
\n can be used to add line breaks
pressing the home/PS button or bringing up the OSK/network connection screen clears the log
strstringstring to print
sysRadioClearDebugLogclear the debug log
Memory stick reading functions
Function namePurposeParametersParameter TypeParameter purpose/valid values/notes
sysRadioGetMediaInOutStatuscheck to see if a memory stick is insertedreturn values:
0: inserted
1: ejected
2: re-inserted
sysRadioPrepareForScanDirinitialize a directory scan for the given pathpassing no args = initialize a directory scan for ms0:/
pathstringpath to scan
sysRadioScanDirreturn the next file in the list (each successive call gets another file name)
Miscellaneous functions
Function namePurposeParametersParameter TypeParameter purpose/valid values/notes
sysRadioSleepput the PSP to sleepwaits about 10 seconds first
sysRadioCaptureScreenShotcapture a screenshotMust call sysRadioSetDebugMode(1) first before you can take screenshots. You can bypass the need for pressing a button by pressing R+Start while in debug mode; this calls sysRadioPlayEffectSound() then sysRadioCaptureScreenShot().
saves to /PICTURE/RADIOPLAYER SCREENSHOT/RP-[date]-[time].BMP
As-yet unknown functions
Function namePurposeParametersParameter TypeParameter purpose/valid values/notes
sysRadioSetRetryIntervalTimeUnknownUnknownREMOVED in firmware 3.90
sysRadioGetSystemStatusUnknownnew in 5.00
xUnknownonly one argument, and no matter what I pass, it returns 0
sysRadioCharacterCodeConvertUnknownnew in 5.00
strstringUnknown