sudo ./launch-missiles.sh --target=[REDACTED] --missile-count=4 --username=jbiden --password=1111 -j 4Since bash can evoke any Turing complete program, feasibly anything could be done with one line of bash.
The authors intent as I saw was to show what that line was. Would you have known without this article?
Whether or not people are just being sarcastic, I feel we should definitely not mock but rather encourage any open and free attempts at teaching us cool things that are more novel than the “how to get started on Linux” type bs the market is inundated with.
Bravo to author.
If the author had perhaps titled their post "I wrote a multiplexing server for audio streams" it might go over better, although that doesn't have the proper click-bait appeal.
Bash can run any program, that's why you don't advertise running a program with it in your title unless the program is (at least mostly) in bash which is an interesting constraint to go check out. There are some really whacky crazy interesting things done in actual bash scripting including internet applications like this via bash's builtin /dev/tcp functionality... come to think of it this might actually be one of those crazy "I did it in pure bash"able things.
I'm sure most on HN knew you could pipe the output of a media application like ffmpeg into something like curl instead of locally. All of the exact options and methodology used here off the top of their head? Very unlikely but is that really what this title sets the expectation of?
I don't think mocking is the best recourse but I'm not sure it's much more useful to argue the author should only be receiving blind encouragement in cases like this either. Like I said I highly doubt the author had any malice when changing the title for HN but I also understand why many don't want to blindly encourage posts where the title can be so misleading/confusing.
Ironically "Creating my own free and easy to use internet radio station host" would probably have gotten even more attention with almost never of the pushback and the project work on norns is probably worth its own post.
firefox https://news.ycombinator.com
But seriously, the commands in the article are not Bash commands (they don't even use Bashisms) and are valid in any POSIX-compliant shell.> Your own internet radio station in one line
The original title did include the word "bash" (it was the one and only instance of the word "bash"). I removed this word from the main article because including the word "bash" superseded a conversation that was nominally about internet broadcasting. Maybe the title of this HN submission can be changed too.
I appreciate the commenters that picked up on the main theme of article and shared some interesting links! But I did enjoy the humorous comments too (who doesn't enjoy some good-natured bashing (pun-intended)).
[1] https://stackoverflow.com/questions/54273291/streaming-a-str...
1. I host a VGM radio [1] 2. I use a combination of icecast2 and darkice to have a full home audio networking.
With the home audio network, there's a lot to optimize, but I haven't implemented it much more to experiment with it further.
Basically I have a Ubuntu Desktop VM on my home server. A long range bluetooth receiver [2] is feed from Proxmox host into the VM. The audio from the Bluetooth source (say your phone or your computer) is pulled from Darkice and renders an MP3 file/stream into Icecast2, which then broadcasts it on 10.0.0.10:8000/home I can use devices like Raspberry Pis to continuously listen on that URL for playback and play if it's available. There's CLI audio players like mpg123.
This could be used for whole home audio playback, but there's weird quirks to deal with like the delay between the audio in and when you hear it, as well as it becoming desynced over time.
It can also be setup in reverse where a RPi ingests audio from it's audio jack and sends it to the audio hub VM and the audio hub sends it out to the network.
[1] https://vidya.fm [2] https://www.amazon.com/gp/product/B07KTK8YP3/
You may want to check out Snapcast. I use it to distribute audio to 6 clients on diverse hardware (several Raspberry Pis, a Windows PC, a Linux PC) and it handles synchronized playback very well, after tweaking the latency offsets for each device (once).
https://github.com/badaix/snapcast
(Edit: Ok, Snapcast doesn't get rid of the delay. But it does keep the players in sync, if you can tolerate some delay between source and speakers.)
[0] https://github.com/mmmnmnm/lahmacun/blob/master/azuracast/li...
What more do you want? It works, quite literally, as advertised.
My local WSL1 install of ffmpeg has an issue with the LAME encoder so using a few extra pipes I was able to get this working! Confirmed with a friend they were able to listen across the planet.
node /tmp/egypt.js | ffmpeg -f f64le -ar 176400 -i pipe: -f wav - | lame - - | curl -s -k -H "Transfer-Encoding: chunked" -X POST -T - "https://broadcast.schollz.com/egypt.mp3?stream=true&advertise=true"
Neat stuff! I love things like this.[0] https://gist.github.com/Qix-/7c131c6eb83bef7c44ef6faaf1eab10...
https://www.edn.com/1st-public-radio-broadcast-january-13-19...
"System Bus Radio" https://github.com/fulldecent/system-bus-radio
Tried icecast2 on several servers at distinct hosters and audio tag on various browsers and platforms, in maybe tens of minutes it always seized up. I had to add script to client page had to detect it and reconnect, the pauses were annoying, gave up.
Did not dig deeper seems as if routers drop the connection when there are no data transmitted in one direction.
ffmpeg -nostdin -f alsa -i pulse -c:a libmp3lame -ar 44100 -b:a 128k -ac 1 -f mp3 - | ssh -C vps "cat - > /var/www/output-$(date '+%s').mp3" ffmpeg -f avfoundation -i ":1"