Skip to main content


Please note that most of the software linked on this forum is likely to be safe to use. If you are unsure, feel free to ask in the relevant topics, or send a private message to an administrator or moderator. To help curb the problems of false positives, or in the event that you do find actual malware, you can contribute through the article linked here.
Topic: Streaming from Home (Read 6182 times) previous topic - next topic
0 Members and 1 Guest are viewing this topic.

Streaming from Home

More of an exercise than an actual project. I've always liked playing with codecs. In the past, I used Windows Media Encoder 9 to set up wma streams of local radio stations. I would connect a radio to my computer via the line-in jack.

That was quite easy to do and was good enough for about 5 users. That was the default software limit on the encoder. There was a way to change the registry and get more, but that was not too far from the practical limit of my upstream bandwidth too. In the end I think I went up to ten.

Later I've used the Expression Encoder 4 to do some trans-coding stuff, again just as an exercise. I never really used it for streaming, but seems the option is there.

Those tools are quite easy to install and use. I've tried to do the same with opus, and I'm having a difficult time. More so if I want to try with opus 1.1. I tried the winamp, shoutcast/icecast approach. But didn't get very far. At least that approach seems to require a few separate components and a good understanding of each.

So here are the questions:
1) Is there 1 program for windows that can handle both the capture and the streaming itself for opus. Similar to the Microsoft products mentioned above?
2) Is there a "good" tutorial on how to create the stream using the winamp approach?
3) What if I want to try with opus 1.1?

Streaming from Home

Reply #1
some have used shoutcast or jetcast with winamp to be an online disc jockey  I have some downloaded pdfs from chatrooms for streaming mp3s from your computer...  you are on your own to stream radio stations

Streaming from Home

Reply #2
I've tried to tackle this again. And even though I still haven't made it possible. I think I've gotten close.

I still haven't been able to get an Opus stream by capturing the Line In / Mic on the sound card. But I was able (which I didn't manage to do before) to get MP3 and Ogg Vorbis streams. I skipped trying MP3 and Ogg Vorbis in the past, because it wasn't my initial goal and I lacked the interest in those formats. I simply  took a quick shot at it, but didn't try hard enough. So the result was that I didn't get to stream anything at all.

The difference now is that the software I found could potentially support Opus, but they don't in the current stable builds. I tried "butt" (broadcast using this tool) and Mixxx.

"butt" is pretty simple to use, lightweight and it's goal is to capture using the recording capabilities of your sound card. It doesn't really do much else other than capture (eg: you can't setup a playlist). An example use would be to connect an FM radio to your computer's line in, and stream that. What got my interest on this one, is that it is open source and adding Opus support shouldn't be to hard in the right hands. In fact there's an older fork out there of someone who already did that (butt-krad-opus). But I couldn't manage to get a compiled version of it, and it was of an older version anyway. []

Mixxx is a more complete solution, but of a different nature. It's probably known around here a bit more than the previous one. In summary, It allows you to DJ your audio library, and does allow for Mic capture. While "Line In" capturing is not a feature, It can probably be worked around using the Mic feature (Not really how the app is meant to be used). The potential on this one is that it seems Opus has been added to it's development branch. []

I'm still all ears to a better solution on Windows.

Streaming from Home

Reply #3
Did you look into Liquidsoap.

Dont know about line-in in windows , but I have successfully  broadcasted playlist to icecast in opus.
No GUI though - cmd line only.

Sample liq file:

playlist = mksafe(playlist("playlist.m3u"))

output.icecast(%opus,fallible=true,host = "localhost", port = 8000,password = "hackme", mount = "stream.opus",playlist)

Streaming from Home

Reply #4
I did try LiquidSoap, but I was already tired at the moment, and it looked pretty complicated at the time. I've retried today with fresh new brain cells.

I got it working with a script similar to this:
Code: [Select]
output.icecast( %opus, host = "localhost", port = 8000, password = "hackme", mount = "stream.ogg", in() )

The important part being in()
It pretty much seems to be a catch-all, and will record whatever the "default" sound card is set to record on windows.
Create a source from the first available input driver in pulseaudio, portaudio, oss, alsa, blank.

A quick input test is:
Code: [Select]
liquidsoap.exe out(in())

This replicates the use case for the "butt" utility I used earlier, but with much less overhead.

It says it supports opus 0.1.0 which I assume is same as 1.0, would be nice to get 1.1 support.

Streaming from Home

Reply #5
You may also try ffmpeg latest win32 version.

Code: [Select]
ffmpeg -list_devices true -f dshow -i dummy

to show your input devices 

Code: [Select]
ffmpeg -f dshow -i audio="Microphone (2- High Definition " -vn -ac 2 -ab 128K -f opus -content_type application/ogg -ice_name "Opus Test Stream"  -ice_description "Line in Source Opus Test Stream" -ice_public 1 -metadata Artist="xxx" -metadata Title="xxx" icecast://source:hackme@localhost:8000/stream.opus