毎日、海外のネットラジオを作業用BGMとして聴いていますが、C# から再生できるかやってみました。理想形としてはサウンドの出力部分以外はP/Invokeを使わずにやりたいと思っていましたが、全く難しくありませんでした。
ここでのネットラジオとは、SHOUTcastで、しかもMP3で配信されているものを前提とします。
エラー処理無し。任意のキーで停止します。タイトルの表示に対応。ネットラジオのURLをお好みのものに変更してください。
各行で何をやっているかは詳細に説明しませんが、18行目はMp3SharpでMP3データのヘッダを強制的に読み込ませるために挿入しています。これを行わないとチャネル数などの情報取得に失敗します。