Hello engkin.
Thank you for your suggestion. It did not quite work as you had posted, but when I slightly altered it from
aProcess.Parameters.Add('--get');
aProcess.Parameters.Add('8');
to
aProcess.Parameters.Add(' --get');
aProcess.Parameters.Add(' 8');
in other words, I added spaces before the two arguments, the program accepted it!
Splitting the Parameters and adding them separately was the key to the problem.
get_iplayer is very strict on it's syntax and needed the spaces to work. Also, if you include quotes, it interprets it as something quite different, for example, a URL), so I am rather confused about your first block of code and how you would implement it, but then I am a bit of a beginner!
Thank you very much for putting me on the right path.