m3u playlists for radio music, sorted by popularity
You cannot select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
 
 
U-DESKTOP-3VIS1T9\junguler 4ab50c7828 add html2repo script
this one is used to make extra repositories from m3u files from this repo and make each m3u files listenable online
1 year ago
hit_tuner.net update everything-full files to add filename as a playlist title 1 year ago
internet-radio update everything-full files to add filename as a playlist title 1 year ago
live_online_radio update everything-full files to add filename as a playlist title 1 year ago
online_radio.eu update everything-full files to add filename as a playlist title 1 year ago
online_radio_box update everything-full files to add filename as a playlist title 1 year ago
openradio.app add everything files for openradio.app folder 1 year ago
pea.fm add everything files for pea.fm folder 1 year ago
radio.net update everything-full files to add filename as a playlist title 1 year ago
radio_guide.fm update everything-full files to add filename as a playlist title 1 year ago
radio_online_live add everything files for radio_online_live folder 1 year ago
radio_station_usa.fm add everything files for radio_station_usa.fm folder 1 year ago
streema update everything-full files to add filename as a playlist title 1 year ago
stuff add html2repo script 1 year ago
vtuner add everything files for vtuner folder 1 year ago
zeno.fm rename everything files in zeno.fm 1 year ago
---everything-full-repo.m3u update 1 year ago
---everything-full.m3u Oct/29 - 07:07 PM 2 years ago
---everything-lite-repo.m3u Add files via upload 1 year ago
---everything-lite.m3u Oct/29 - 07:07 PM 2 years ago
---randomized.m3u Oct/30 - 01:52 PM 2 years ago
---sorted.m3u Oct/29 - 07:07 PM 2 years ago
60s.m3u Oct/29 - 07:07 PM 2 years ago
70s.m3u Oct/29 - 07:07 PM 2 years ago
80s.m3u Oct/29 - 07:07 PM 2 years ago
90s.m3u Oct/29 - 07:07 PM 2 years ago
README.md fix md formatting 1 year ago
acid_jazz.m3u Oct/29 - 07:07 PM 2 years ago
african.m3u Oct/29 - 07:07 PM 2 years ago
alternative.m3u Oct/29 - 07:07 PM 2 years ago
ambient.m3u Oct/29 - 07:07 PM 2 years ago
americana.m3u Oct/29 - 07:07 PM 2 years ago
anime.m3u Oct/29 - 07:07 PM 2 years ago
arabic.m3u Oct/29 - 07:07 PM 2 years ago
asian.m3u Oct/29 - 07:07 PM 2 years ago
big_band.m3u Oct/29 - 07:07 PM 2 years ago
bluegrass.m3u Oct/29 - 07:07 PM 2 years ago
blues.m3u Oct/29 - 07:07 PM 2 years ago
breakbeat.m3u Oct/29 - 07:07 PM 2 years ago
chillout.m3u Oct/29 - 07:07 PM 2 years ago
christian.m3u Oct/29 - 07:07 PM 2 years ago
classical.m3u Oct/29 - 07:07 PM 2 years ago
club.m3u Oct/29 - 07:07 PM 2 years ago
college.m3u Oct/29 - 07:07 PM 2 years ago
comedy.m3u Oct/29 - 07:07 PM 2 years ago
country.m3u Oct/29 - 07:07 PM 2 years ago
dance.m3u Oct/29 - 07:07 PM 2 years ago
deutsch.m3u Oct/29 - 07:07 PM 2 years ago
disco.m3u Oct/29 - 07:07 PM 2 years ago
discofox.m3u Oct/29 - 07:07 PM 2 years ago
downtempo.m3u Oct/29 - 07:07 PM 2 years ago
drum_and_bass.m3u Oct/29 - 07:07 PM 2 years ago
easy_listening.m3u Oct/29 - 07:07 PM 2 years ago
ebm.m3u Oct/29 - 07:07 PM 2 years ago
electronic.m3u Oct/29 - 07:07 PM 2 years ago
eurodance.m3u Oct/29 - 07:07 PM 2 years ago
film.m3u Oct/29 - 07:07 PM 2 years ago
folk.m3u Oct/29 - 07:07 PM 2 years ago
france.m3u Oct/29 - 07:07 PM 2 years ago
funk.m3u Oct/29 - 07:07 PM 2 years ago
goa.m3u Oct/29 - 07:07 PM 2 years ago
gospel.m3u Oct/29 - 07:07 PM 2 years ago
gothic.m3u Oct/29 - 07:07 PM 2 years ago
greek.m3u Oct/29 - 07:07 PM 2 years ago
hardcore.m3u Oct/29 - 07:07 PM 2 years ago
hardrock.m3u Oct/29 - 07:07 PM 2 years ago
hip_hop.m3u Oct/29 - 07:07 PM 2 years ago
house.m3u Oct/29 - 07:07 PM 2 years ago
index.html Update index.html 1 year ago
india.m3u Oct/29 - 07:07 PM 2 years ago
indie.m3u Oct/29 - 07:07 PM 2 years ago
industrial.m3u Oct/29 - 07:07 PM 2 years ago
instrumental.m3u Oct/29 - 07:07 PM 2 years ago
italian.m3u Oct/29 - 07:07 PM 2 years ago
jazz.m3u Oct/29 - 07:07 PM 2 years ago
jpop.m3u Oct/29 - 07:07 PM 2 years ago
jungle.m3u Oct/29 - 07:07 PM 2 years ago
latin.m3u Oct/29 - 07:07 PM 2 years ago
lounge.m3u Oct/29 - 07:07 PM 2 years ago
metal.m3u Oct/29 - 07:07 PM 2 years ago
mixed.m3u Oct/29 - 07:07 PM 2 years ago
musical.m3u Oct/29 - 07:07 PM 2 years ago
oldies.m3u Oct/29 - 07:07 PM 2 years ago
opera.m3u Oct/29 - 07:07 PM 2 years ago
polish.m3u Oct/29 - 07:07 PM 2 years ago
polka.m3u Oct/29 - 07:07 PM 2 years ago
pop.m3u Oct/29 - 07:07 PM 2 years ago
portugal.m3u Oct/29 - 07:07 PM 2 years ago
progressive.m3u Oct/29 - 07:07 PM 2 years ago
punk.m3u Oct/29 - 07:07 PM 2 years ago
quran.m3u Oct/29 - 07:07 PM 2 years ago
rap.m3u Oct/29 - 07:07 PM 2 years ago
reggae.m3u Oct/29 - 07:07 PM 2 years ago
retro.m3u Oct/29 - 07:07 PM 2 years ago
rnb.m3u Oct/29 - 07:07 PM 2 years ago
rock.m3u Oct/29 - 07:07 PM 2 years ago
romanian.m3u Oct/29 - 07:07 PM 2 years ago
russian.m3u Oct/29 - 07:07 PM 2 years ago
salsa.m3u Oct/29 - 07:07 PM 2 years ago
schlager.m3u Oct/29 - 07:07 PM 2 years ago
ska.m3u Oct/29 - 07:07 PM 2 years ago
smooth_jazz.m3u Oct/29 - 07:07 PM 2 years ago
soul.m3u Oct/29 - 07:07 PM 2 years ago
soundtrack.m3u Oct/29 - 07:07 PM 2 years ago
spain.m3u Oct/29 - 07:07 PM 2 years ago
spiritual.m3u Oct/29 - 07:07 PM 2 years ago
sport.m3u Oct/29 - 07:07 PM 2 years ago
swing.m3u Oct/29 - 07:07 PM 2 years ago
symphonic.m3u Oct/29 - 07:07 PM 2 years ago
talk.m3u Oct/29 - 07:07 PM 2 years ago
techno.m3u Oct/29 - 07:07 PM 2 years ago
top_40.m3u Oct/29 - 07:07 PM 2 years ago
trance.m3u Oct/29 - 07:07 PM 2 years ago
turk.m3u Oct/29 - 07:07 PM 2 years ago
urban.m3u Oct/29 - 07:07 PM 2 years ago
usa.m3u Oct/29 - 07:07 PM 2 years ago
various.m3u Oct/29 - 07:07 PM 2 years ago
wave.m3u Oct/29 - 07:07 PM 2 years ago
world.m3u Oct/29 - 07:07 PM 2 years ago

README.md

Listen to music online using this repo's github page

all of the stream files in the root folder of this repo can be listened to using their own page on this repo and the amazing webamp player, use the playlist buttons or click on the entries and hit play

60s 70s 80s 90s acid_jazz african alternative ambient
americana anime arabic asian big band bluegrass blues breakbeat
chillout christian classical club college comedy country dance
deutsch disco discofox downtempo drum & bass easy listening ebm electronic
eurodance film folk france funk goa gospel gothic
greek hardcore hardrock hip hop house india indie industrial
instrumental italian jazz jpop jungle latin lounge metal
mixed musical oldies opera polish polka pop portugal
progressive punk quran rap reggae retro rnb rock
romanian russian salsa schlager ska smooth jazz soul soundtrack
trance turk urban usa various wave world

if you are on a chromium based web browser (chrome, vivaldi, opera, edge etc ...) you are not able to listen to the most of the streams, here is an explanation from chrome support which tells you why this happens and how to fix it

Usually this error occurs because the radio station you are trying to listen to is running on an unencrypted port (not 443). This is quite common and it's not technically necessary for radio stations to be encrypted but nowadays web browsers like Chrome have started disallowing unencrypted content to be shown in an otherwise encrypted websites. There is a few solutions for you right now:

  • Use a different browser like Firefox. For the moment they haven't blocked unencrypted content on an otherwise encrypted page web page.

  • Open Chrome (or other chromium web browsers), go to the website and then click on the padlock icon to the left of the URL box and then from the drop down menu select the 'Site Settings' option, you can then scroll down to the 'Insecure content' option at the bottom of the page and select 'Allow', this will create an exception for the website and allow you to continue using the player as before.

  • download the stream files and play them locally on your pc or other devices which i've talked about further down in this markdown file


Shortcuts


Extra Streams

this repo now includes a few streams made by me

---everything-full.m3u combines all of the streams sorted by names that are shown in this repo

---everything-lite.m3u is exactly like the everything-full stream but cover images and extra info was removed

---randomized.m3u is exactly like the everything-lite stream but every line was shuffled and randomized

---sorted.m3u is exactly like the everything-lite stream but the links themselves are sorted alphabetically/numerically, it's good for when you have found a good radio station with many different genres of music to listen to all of them in order

every folder in this repo excluding the stuff folder has these stream files unique to the content of that specific folder

there is also two newly added files that combine everything including all the folders which have a -repo suffix to them


How to listen to these?

in the terminal, do this:

mpv https://raw.githubusercontent.com/junguler/m3u-radio-music-playlists/main/trance.m3u

or add/change m3u file association in your os to mpv and double click on any of .m3u files in your file manager


how to download a live-stream to my computer?

click me to read

downloading from these m3u files is not possible as far as i know since they contain multiple streams, but if you want to download from a particular stream you can achieve this by using ffmpeg, i use the most popular (first stream) in the trance.m3u to showcase this, in your terminal change directory to where you want this file to be at (note that lines starting with # are not actual streams and are there for embedding extra info to your media player)

ffmpeg -y -i http://stream.dancewave.online:8080/dance.mp3 -c copy dancewave.mp3

change the filename at the end to what you like, as ffmpeg suggests when you feel happy with the length/size of this file press q in your terminal emulator to finish the process and save the file

because these are online streams there is no way to download the whole thing as they are constantly changing, but you can set a hard limit to when recording stops using the timeout command on bash/zsh shells

timeout 60 ffmpeg -y -i http://stream.dancewave.online:8080/dance.mp3 -c copy dancewave.mp3

the above command saves about one minute of the audio live-stream, you can specify longer times using -m for minutes -h for hours and -d for days, these can also be used with decimals for more control, so one and half minute can be set with 1.5m or 3 hour and 45 minutes can be set with 3.75h

timeout 1h ffmpeg -y -i http://stream.dancewave.online:8080/dance.mp3 -c copy dancewave.mp3

another more elegant way to do this is to use ffmpeg to segment these files with your desired time and add a timestamp at the end as filenames, code was copied from here

ffmpeg -i http://stream.dancewave.online:8080/dance.mp3 -c copy -f segment -strftime 1 -segment_time 60 %Y-%m-%d-%H-%M-%S.mp3

this will save a new mp3 file every minute, if you want to make this longer change -segment_time 60 and multiply the number of minutes you want for each file by 60, so if i want my mp3 files to each be 5 minutes i do -segment_time 300 this process goes on forever unless you run out of disk space or if you are not connected to the internet for some reason

this command can also be stopped using ctrl + c shortcut or the timeout command showcased above so adding timeout 1h in front of the above command stops the whole process after an hour


How to save songs indivudally by title from a live stream?

click me to read

i have been looking for a way to do this for a while, i found this program streamwriter that does this but unfortunently it's only available on windows, this winehq page lists the program as platinum and it should work with wine without any issues but i have not tested it myself as i'm not on linux at the moment and don't have a virtual machine ready either

download the portable version of the program and extract it somewhere in your hard drive, the first time you open the program it's going to ask a few questions, things like language and where it's going to save downloaded songs, now that you are greeted with the program go to a m3u file of your favorite music genre and copy a stream link to start download, here is mine from the trance.m3u

http://51.89.148.171:8022/stream/1/

now put it inside the area i've shown and click to button next to it to start recording, after each song is completed it's going to create a new file and put a name on it from the title the stream is broadcasting

streamwriter

once you are happy with the amount of songs downloaded, right click on the stream and click on stop recording after current title

note that in some rare cases a stream does not broadcasts song titles and if you happen to come accross of these there is really nothing else you can and the program is going to continuously record the stream until you manually stop it


Mpv only shows a black window when listening to music, how to make it pretty?

download the visualizer script for mpv and put it in your scripts folder either on ~/.config/mpv/scripts on *nix systems

or C:\users\USERNAME\AppData\Roaming\mpv\scripts\ on windows

put these in your mpv.conf, this is a auto-profile for all audio files

[audio-only]
profile-cond=not vid
profile-restore=copy
vf-add=rgbashift=rh=-4:bv=+4
vf-add=drawbox=w=iw:h=ih:color=00FFFF@0.5
vf-add=drawbox=x=3:y=3:w=iw-6:h=ih-6:color=00FF00@0.5
vf-add=drawbox=x=6:y=6:w=iw-12:h=ih-12:color=FFFF00@0.5
vf-add=hue=H=0.1*PI*t

Normilize Audio

depending on the stream some music might be too load and others too quiet, thankfully we can use an ffmpeg filter inside mpv to fix the issue and force all music to be played at the same level, put this line inside your mpv.conf and it will automatically normalize all audio

af=lavfi=[dynaudnorm=f=75:g=25:p=0.55]

I really like mpv, how do i customize keybinds?

make a file called input.conf either at the folder your mpv.exe is on windows or on ~/.config/mpv/ if you are *nix systems, put these inside it for using page-up and page-down for changing radio stations

PGUP playlist-prev ; show-text "${playlist-pos-1}/${playlist-count}"
PGDWN playlist-next ; show-text "${playlist-pos-1}/${playlist-count}"

Isn't there an easier way to use and control these using mpv?

yes there is, use the IPTV script which comes with fuzzy finding stations, better keybinds and ...


How to download all of the files?

use the auto-generated zip

you can also run a git clone on this repo

git clone https://github.com/junguler/m3u-radio-music-playlists.git

for further updates cd into the folder and do git pull


Git Stats

since the traffic section of the insight tab is hidden to other viewers of this repo i'm going to include them and update them every two weeks so you can have feel for how this repo is doing


Current and potential sources

here is a list of websites i've scraped from already and included m3u streams for in this repo

website folder script
http://radio.pervii.com/en/online-playlists-m3u.htm root radio.pervii.sh
https://www.internet-radio.com/ /internet-radio internet-radio.sh
https://liveonlineradio.net/ /live_online_radio live_online_radio.sh
https://onlineradiobox.com/ /online_radio_box online_radio_box.sh
https://www.radio.net/ /radio.net radio.net.sh
https://www.radioguide.fm/ /radio_guide.fm radio_guide.fm.sh
https://streema.com/ /streema streema.sh
http://www.hit-tuner.net/ /hit_tuner.net hit_tuner.net.sh
https://online-radio.eu/ /online_radio.eu online_radio.eu.sh
https://pea.fm /pea.fm pea.fm.sh
https://radioonlinelive.com/ /radio_online_live radio_online_live.sh
https://radiostationusa.fm/ /radio_station_usa.fm radio_station_usa.fm.sh
https://zeno.fm/ /zeno.fm zeno.fm.sh
https://openradio.app /openradio.app openradio.app.sh
https://vtuner.com/setupapp/guide/asp/BrowseStations/startpage.asp /vtuner vtuner.sh

my future plans for this repo is to keep scraping online radio websites, if and when i found one or few that are easy enough for me to scrape or not overly complicated (websites that have a cipher system to hide stream link or use services like cloadflare to avoid being easily scraped)


websites i can't scrape

here is a list of websites i considered scraping but was unable to, this list will be kept updated

website reason
https://tunein.com/radio/home/ cloudflare protected
https://www.accuradio.com/ cloudflare protected
https://internetradiouk.com cloudflare protected
https://www.moreradio.online/ cloudflare protected
http://radio.garden/ i don't understand this website
https://www.radio-uk.co.uk/ uses a cipher system to hide stream link
https://mytuner-radio.com/ uses a cipher system to hide stream link
https://www.fmradiofree.com/ uses a cipher system to hide stream link
https://tuneyou.com/radio/music/ could not extract stream link
https://live365.com/ could not get passed the first page of each genres due to js generated pages

see a website you like in this list and know how to overcome the issues to scrape them? open an issue or discussion and share you knowledge with me