- 1 General
- 2 Audio
- 2.1 Servers
- 2.2 Radio
- 2.3 GUI playback
- 2.4 CLI playback
- 2.5 Web playback
- 2.6 Other playback
- 2.7 Ripping
- 2.8 Services
- 2.9 Apps
- 3 Video
- 3.1 Server
- 3.1.1 Tvheadend
- 3.1.2 DVBlast
- 3.1.3 VLMa
- 3.1.4 Multicat
- 3.1.5 nginx-rtmp-module
- 3.1.6 C++ RTMP Server
- 3.1.7 RTMP-Playlist
- 3.1.8 rtspdump
- 3.1.9 Flumotion
- 3.1.10 OBS Studio
- 3.1.11 Theora Streaming Studio
- 3.1.12 WebcamStudio
- 3.1.13 Livestreamer
- 3.1.14 Afrostream Media Servers
- 3.1.15 NGINX
- 3.1.16 Websockets
- 3.1.17 Streama
- 3.1.18 UltraGrid
- 3.1.19 Plumi
- 3.2 P2P
- 3.3 Services
- 3.4 YouTube
- 3.5 Reddit
- 3.6 Ripping
- 3.7 Various
- 3.8 Playback
- 3.1 Server
- BS1770GAIN - a loudness scanner compliant with ITU-R BS.1770 and its flavors EBU R128, ATSC A/85, and ReplayGain 2.0. It helps normalizing the loudness of audio and video files to the same level.
- ShoutCastProxy - When you're in a building where more then one user in different rooms is listening to the same ShoutCast audio-stream, bandwidth is wasted: that's where ShoutCastProxy comes in.You can run ShoutCastProxy on a central server. It'll connect to a certain server if any client is connecting and automatically disconnects if no clients are listening.You can, of course, also chain multiple proxies.
- https://github.com/wrl/jogma - a program that streams OggFLAC data to an Icecast 2.4.0 server from JACK. it does not do anything else. just OggFLAC, just Iceast 2.4.0, and just JACK.
- DarkIce is a live audio streamer. It records audio from an audio interface (e.g. sound card), encodes it and sends it to a streaming server.
- http://liquidsoap.fm/ Liquidsoap is a powerful and flexible language for describing your streams. It offers a rich collection of operators that you can combine at will, giving you more power than you need for creating or transforming streams. But liquidsoap is still very light and easy to use, in the Unix tradition of simple strong components working together. A swiss-army knife for multimedia streaming, notably used for netradios and webtvs. It has tons of features, it's free and it's open-source!
- DeeFuzzer is a light and instant application for streaming audio and video over internet. It is dedicated to communities who wants to easily create web radios, web TVs, live multimedia relays or personal home radios, with metadata management and cool features.
- butt (broadcast using this tool) is an easy to use, multi OS streaming tool. It supports SHOUTcast and Icecast and runs on Linux, Mac OS X and Windows. The main purpose of butt is to stream live audio data from your computers Mic or Line input to an Shoutcast or Icecast server. Recording is also possible.
- AzuraCast - a self-hosted, all-in-one web radio management kit. Using its easy installer and powerful but intuitive web interface, you can start up a fully working web radio station in a few quick minutes. AzuraCast works for web radio stations of all types and sizes, and is built to run on even the most affordable VPS web hosts.
Internet DJ Console
- Internet DJ Console is a project started in March 2005 to provide a powerful yet easy to use source-client for individuals interested in streaming live radio shows over the Internet using Shoutcast or Icecast servers. Because of the large number of streaming applications that already existed but did little more than stream a pair of audio channels or a fixed playlist, it was decided that IDJC would be the opposite and simulate audio hardware to cut down the expense of creating a home studio.
- Rivendell - a complete radio broadcast automation solution, with facilities for the acquisition, management, scheduling and playout of audio content. It has all of the features one would expect in a modern, fully-fledged radio automation system, including support for both PCM and MPEG audio encoding, full voicetracking and log customization as well as support for a wide variety of third party software and hardware. As a robust, functionally complete digital audio system for broadcast radio applications, Rivendell uses industry standard components like the GNU/Linux Operating System, the AudioScience HPI Driver Architecture and the MySQL Database Engine. Rivendell is available under the GNU Public License.
- Airtime - online radio has never been easier. Airtime's intuitive interface lets you drag and drop shows for simple programming. Organise and collaborate with producers, DJs and programmers, wherever they are. Stream direct to Icecast or SHOUTcast, and show what's playing with widgets.
- RadioTray - a simple music streaming player that lives on the system tray. By clicking on the RadioTray icon, you'll be presented with a list of pre-configured online radios. By selecting one of those radios, it will start playing.
Right now, Radio Tray bundles with pre-configured radios. But you can and should add more manually. Adding online radios to the list is very simple. By right-clicking the RadioTray icon and selecting "Config radios...", you may add the name and URL of an online radio. This version allows you to add direct URLs (to media streams or files) and URLs pointing at playlist formats (pls, m3u, asx, wax, wvx). RadioTray was written in Python and uses gtk and gstreamer libraries (you'll need these to run RadioTray).
- https://github.com/ebruck/radiotray-ng - active development
- https://github.com/thekvs/radiotray-lite - Online radio streaming player with minimum interface that runs on a Linux system tray
Great Little Radio Player
- Great Little Radio Player - A robust internet radio station streamer for various Linux distributions. It connects to web sites offering radio streaming and lets you play radio stations directly from that locations.
- streamtuner2 is an internet radio browser. It looks up the categorized music stations from various directory services
- Nuvola Player is a runtime for web-based music streaming services providing more native user experience and integration with Linux desktop environments than usual web browsers can offer. It tries to feel and look like a native application as possible.
- https://github.com/ColinDuquesnoy/MellowPlayer - a free, open source and cross-platform desktop application that runs web-based music streaming services in its own window and provides integration with your desktop (hotkeys, multimedia keys, system tray, notifications and more). MellowPlayer is a Qt based alternative to NuvolaPlayer initially crafted for KaOS. MellowPlayer is written in C++ and QML.
- piwadio - Web Radio Player ( python websockets server / Mplayer - HTML5 client )
- streamtuner - a stream directory browser. Through the use of a plugin system, it offers an intuitive GTK+ 2.0 interface to Internet radio directories such as SHOUTcast and Live365.
- radio.py - a command-line frontend for mplayer designed to make listening to online radio easy. Features: Allows you to easily play your favorite online radio stations. Adding new stations to radio.py is very simple. Record radio streams. Sleep and Wake-Up features. Search Tune-In for new stations.
- DRadio is a Danmarks Radio netradio, podcast, and TV player. It is a terminal based frontend to MPlayer that collects the available channels/podcasts for convenient browsing.
- https://github.com/hakerdefo/pmrp - Probably best Internet radio player script.
- https://github.com/Rello/audioplayer - A music player for FLAC, MP3, MP4, streams, and more with playlist support and share player.
- https://github.com/bobrathbone/piradio6 - Internet Radio for Raspberry Pi
- Streamripper - GPL application that lets you record streaming mp3 to your hard drive
streamripper "http://220.127.116.11:8004/stream3/" -u "test" -r # record a station, change userid as streamripper is blacklisted on some servers, relay the stream to localhost port 8000
- http://www.nongnu.org/streamtuner streamtuner - a stream directory browser. Through the use of a plugin system, it offers an intuitive GTK+ 2.0 interface to Internet radio directories such as SHOUTcast and Live365. With streamtuner, you can: Browse the SHOUTcast Yellow Pages, Browse the Live365 directory, Browse the Xiph.org (aka icecast.org, aka Oddsock) directory, Browse the basic.ch DJ mixes, Manage your local music collection, with full support for ID3 and Vorbis metadata editing, Listen to streams, browse their web page, or record them using programs such as Streamripper,
Implement new directory handlers as tiny Python scripts or as dynamically loadable modules written in C, Retain your favourite streams by bookmarking them, Manually add streams to your collection.
- TunaPie - a directory browser for Internet radio and TV streams. In theory it should work on any UNIX-based system. It has been tested on Linux and Max OS X. As of 0.9.6, it is compatible with the Icecast directory as well as the Shoutcast (winamp) stream directory service. Tunapie allows you to search for streams and then launch your audio player (XMMS) or NSV viewer (Mplayer) of choice. It also allows recording of audio and video streams using streamripper.
- KStreamRipper - (formaly KRadioRipper) is a GUI program for recording Internet radios and other streams which comes with a stream catalog. It can split the stream and create an own file for each track - with corresponding metadata.
- https://github.com/soimort/you-get - a tiny command-line utility to download media contents (videos, audios, images) from the Web, in case there is no other handy way to do it.
- https://github.com/sentriz/bandcamp_downloader - a python 3+ script for downloading, renaming, and tagging albums from Bandcamp. You must supply the script an artist and an album name. These must be exactly how you see them in the album url, i.e., http://artist.bandcamp.com/album/album_name/
- https://github.com/iheanyi/bandcamp-dl - Simple python script to download Bandcamp albums
- nuclear music player - There's no need to use services that limit your freedom and seek to exploit you just to listen to your favourite artists. Nuclear empowers you to listen to what you want, where you want, and how you want, for free.
- http://www.ambient-mixer.com - mix ambient found sounds
- http://stereomood.com - mood tag
- http://plug.dj - social playlist
- http://mycloudplayers.com - playlist enqueuing
- http://redditplayer.phoenixforgotten.com - plays youtube and soundcloud links from specified music style subreddits
- http://hypem.com - from blogs
- http://www.indieshuffle.com - curated playlist
- 8tracks - internet radio created by people, not algorithms.
- Tizonia - A music player and audio streaming client/server for Linux with support for Spotify, Google Play Music (including Unlimited), SoundCloud and Dirble, with a multimedia framework based on OpenMAX IL 1.2 provisional specification.
- Mellow Player - a free, open source and cross-platform desktop application that runs web-based music streaming services in its own window and provides integration with your desktop (hotkeys, multimedia keys, system tray, notifications and more).
- https://github.com/berrberr/streamkeys - Chrome extension to send "global" (ie. across the browser) hotkeys to various online media players.
- http://offliberty.com - web ripper for YouTube and SoundCloud
youtube-dl --download-archive completed.txt --add-metadata --write-thumbnail -c -i -r 500K https://soundcloud.com/USERNAME/likes
Adverts for free accounts
- https://github.com/SecUpwN/Spotify-AdKiller - We all love Spotify, but sometimes people (like us) want to throw a party without having to listen to interrupting ads before having bought Spotify Premium. Well, with this killer project, now you can! This is for testing purposes ONLY! Spotify is a fantastic service and worth every penny. This script is NOT meant to circumvent buying premium! Please do consider switching to premium to support Spotify - especially if you're going to use it on mobile. If the script does not work for you, help us improve it!
- Atraci is a streaming application for Windows, Mac and Linux that lets you listen instantly to more than 60 million songs (way more than iTunes's 26 million). It requires no sign up, displays no ads and is 100% safe.
- https://en.wikipedia.org/wiki/IPTV - the delivery of television content over Internet Protocol (IP) networks. This is in contrast to delivery through traditional terrestrial, satellite, and cable television formats. Unlike downloaded media, IPTV offers the ability to stream the source media continuously. As a result, a client media player can begin playing the content (such as a TV channel) almost immediately. This is known as streaming media.
- https://github.com/fastogt/iptv - Free IPTV cloud server
- https://en.wikipedia.org/wiki/Switched_video - or switched digital video (SDV), sometimes referred to as switched broadcast (SWB), is a telecommunications industry term for a network scheme for distributing digital video via a cable. Switched video sends the digital video in a more efficient manner so that additional uses may be made of the freed up bandwidth. The scheme applies to digital video distribution both on typical cable TV systems using QAM channels, or on IPTV systems. Users of analog video transmitted on the cable are unaffected.
- https://en.wikipedia.org/wiki/Dynamic_Adaptive_Streaming_over_HTTP - DASH, MPEG-DASH
- LinuxMusicians forum: -SOLVED- Live streaming and recording video - w/ gstreamer script with pip (picture-in-picture)
- Tvheadend - a TV streaming server for Linux supporting DVB-S, DVB-S2, DVB-C, DVB-T, ATSC, IPTV, and Analog video (V4L) as input sources.
- DVBlast - a simple and powerful MPEG-2/TS demux and streaming application.
- VLMa - an application to manage broadcasts of TV channels, received through digital terrestrial or satellite ways. Its interface is provided as a web-site written in Java. It is also capable of streaming audio and video files. VLMa consists of a deamon (called VLMad) and a web interface (called VLMaw).
- Multicat - Simple and efficient multicast and transport stream manipulation.
- Streaming with nginx-rtmp-module - provides HLS and MPEG-DASH live streaming capabilities for those who want a lightweight solution based on the HTTP protocol. The stream is published in the MPEG-TS format over HTTP. This makes it possible to use all the power and flexibility of nginx HTTP configurations including SSL, access control, logging, request limiting etc. MPEG-TS is a widely adopted, well known and well documented streaming format.
C++ RTMP Server
- https://github.com/j0sh/crtmpserver - C++ RTMP Server (a.k.a crtmpserver)
- https://github.com/fyroc/RTMP-Playlist - Libav/FFMPEG streaming solution to RTMP with a dynamic playlist.
- rtspdump - a Windows program which downloads multimedia stream (such as live broadcasts) from a Microsoft WMServer.
- Flumotion - a streaming media server created with the backing of Fluendo. It features intuitive graphical administration tools, making the task of setting up and manipulating audio and video streams easy for even novice system administrators. Flumotion is released under the LGPL.
- OBS Studio - Free and open source software for video recording and live streaming. Download and start streaming quickly and easily on Windows, Mac or Linux.
Theora Streaming Studio
- Theora Streaming Studio - a GUI to make theora video streams using ffmpeg2theora software
- WebcamStudio - A multifeatured virtual webcam software to broadcast over the Internet
- Livestreamer - a command-line utility that pipes video streams from various services into a video player, such as VLC. The main purpose of Livestreamer is to allow the user to avoid buggy and CPU heavy flash plugins but still be able to enjoy various streamed content.
Afrostream Media Servers
- https://github.com/Afrostream/afrostream-media-server - Afrostream Media Servers (AMS) let you create DASH format on the fly with one or multiple audio/video mp4 files 
- Streama - Host your own Streaming Application with your media library. It's like Netflix, but self-hosted!
- https://github.com/CESNET/UltraGrid - UltraGrid brought by CESNET's Laboratory of Advanced Networking Technologies (Sitola) is a software implementation of high-quality low-latency video and audio transmissions using commodity PC and Mac hardware. Supported resolutions range through HD (1920x1080) up to 4K (4096x2160) with up to 60 frames per second. The high-quality is achieved either by using uncompressed streams or streams with very low compression ratio. End-to-end transmission latency (i.e., all the way from the camera to the display) is about 100ms, but it varies based on camera and capture cards being used. UltraGrid was originally a research project used to demonstrate the possibilities of 10Gbps networks and to study multi-point data distribution in such environments. Recent advances in the field of GPU-accelerated low-latency codecs extend its usability also to Gigabit networks. UltraGrid is supported on PCs with Linux operating system and Macs with MacOS X.
- Plumi - enables you to create your own sophisticated video-sharing site. It includes a beautiful adaptive skin using Diazo, server-side transcoding of most video formats, upload progress bar, thumbnail extraction, HTML5 video playback and embedding, subtitles using Amara, large file uploading via FTP, social media integration, threaded commenting and user feedback forms, customised user profiles and a range of other useful features.
See also Sharing#BitTorrent
- https://github.com/mafintosh/peerflix - Streaming torrent client for node.js
- Peer5 - a peer-to-peer Content Delivery Network (P2P CDN) for massively-scaled HLS & MPEG-DASH streaming. We dynamically construct an elastic mesh network consisting of viewers that integrates seamlessly with the existing edge server infrastructure and dramatically improves its performance, creating the ultimate Multi-CDN.
- yuptude! - a tiny bookmarklet that you can use to speed up or slow down videos in your browser.With yuptude, you can control videos on Netflix, YouTube and many other sites that use HTML5 video.And it works in popular browsers on both Windows & Mac computers.
youtube-dl --extract-audio --audio-format mp3 --audio-quality 0 "https://www.youtube.com/watch?v=zr5-50ZEQs4"
- https://github.com/JannikHv/gydl - Gydl (Graphical Youtube-dl) is a GUI wrapper around the already existing youtube-dl program. It's developed with a dialog driven experience in mind. This provides a quick and easy video or audio downloads without disturbances.
- https://github.com/deepjyoti30/ytmdl - A simple script to get songs from youtube in mp3 format with all tags from itunes
- http://www.playbackloop.com/playlists/PLhcKR_tPpF9Bk5kMnwFGRP4-Wj7XfPczz - reverse the order of playlists
- https://github.com/youtplayer/yout - YouTube playlist player on Desktop without browsers. Free, no YouTube ads, floating window. Available for Linux, Mac and Windows.
- http://animoto.com/ - make slideshows
- GMiMMS - a frontend to MiMMS (Multimedia Stream ripper). It uses GTK+-2.x for the graphical userinterface. It is mainly written for Linux but should also be able to be compiled for Windows®. It is very easy to be used. You just specify the Multimedia-Stream URL and the output file and GMiMMS runs MiMMS in an other thread. You can also specify the mms-method and the length of the recording in minutes.
- Wazzuf Ripper - a shell script (bash) to rip various media as DVD (Digital Versatile Disc) and BD (Blu-ray Disc) to .mkv file(s) (Matroska container).
- https://fmtvp.github.io/tal - frontend (iplayer, etc.)
- Ingex is a branded technology from BBC Research & Development It is a suite of open source software applications designed for low-cost flexible tapeless recording in: AV Production, and Archiving Facilites
- Stremio is an app that helps you organize and instantly watch your favorite videos, movies, TV series and TV channels. 
- http://mkchromecast.com - Cast your macOS or Linux audio/video to your Google Cast devices
- Chrome Web Store: Cast with MkChromecast
- https://github.com/streamlink/streamlink - a CLI utility that pipes flash videos from online streaming services to a variety of video players such as VLC, or alternatively, a browser. The main purpose of streamlink is to convert CPU-heavy flash plugins to a less CPU-intensive format. Streamlink is a fork of the Livestreamer project.
- https://github.com/skorokithakis/catt - Cast All The Things allows you to send videos from many, many online sources to your Chromecast.
- https://github.com/kripton/jukuzregie - Qt application for live video streaming from multiple sources
- Streamlink - a command-line utility that pipes video streams from various services into a video player, such as VLC. The main purpose of Streamlink is to allow the user to avoid buggy and CPU heavy flash plugins but still be able to enjoy various streamed content. There is also an API available for developers who want access to the video stream data. This project was forked from Livestreamer, which is no longer maintained.
- Livestreamer - a command-line utility that pipes video streams from various services into a video player, such as VLC. The main purpose of Livestreamer is to allow the user to avoid buggy and CPU heavy flash plugins but still be able to enjoy various streamed content. There is also an API available for developers who want access to the video stream data.
- https://github.com/Atraci/Atraci - a streaming application for Windows, Mac and Linux that lets you listen instantly to more than 60 million songs (way more than iTunes's 26 million). It requires no sign up, displays no ads and is 100% safe.
- https://github.com/freetuxtv/freetuxtv - FreetuxTV is a WebTV player working on the Linux platform based on GTK+ and LibVLC.