Amrykid / UWPShoutcastMSS

A library for connecting to Shoutcast in Windows 10 UWP applications.
MIT License
14 stars 3 forks source link

Support Ogg Vorbis/Opus (for IceCast 2) #10

Open AzureKitsune opened 7 years ago

AzureKitsune commented 7 years ago

Newer IceCast servers support ogg streams where the metadata is embedded in the audio directly. While that is a possible in it self, there is no way to create a Vorbis/Opus decoder for playback. More specifically, there is no way to create AudioEncodingProperties for it.

I posted a feedback item for it on the UserVoice site. It can be found here.

AzureKitsune commented 7 years ago

After digging a bit deeper (more time has passed since the OP and this comment says), I found that can probably create AudioEncodingProperties instances directly and set the format to "vorbis"/"opus" (both are supported).

The format property is defined here.

The only problem is, as far I know, the metadata is embedded directly into the audio data versus it being spliced in at intervals.

AzureKitsune commented 7 years ago

Additional resources on IceCast and Ogg streaming:

EDIT: It is also possible that my janky http implementation will need to support persistent connections for Ogg streaming to work:

AzureKitsune commented 7 years ago

FFmpeg may be something to look into for this. https://github.com/Microsoft/FFmpegInterop