Giter Site home page Giter Site logo

shoutcast-recorder's Introduction

SHOUTcast Recorder

SHOUTcast Recorder is able to record and store SHOUTcast stream automatically into separate mp3 files. This software was initially conceived to understand the SHOUTcast protocol, not really to record web radios ;) The fun part is to play with the protocol !

Dependencies

  • libcurl

How does it work ?

  • Curl receives HTTP blocks
  • For each block received, we parse every bytes
  • For each byte, we look for :
    • ICY header
    • potential metadata blocks
    • mp3data we store in memory
  • At the end of each block, we write gathered MP3 data into an external file
  • Now we can enjoy downloaded music :)

How to run it

Here are two examples :

./shoutr -u http://88.190.24.47:80

or

./shoutr -p frequence3.pls

TODO

Some interesting features to add :

  • add option --quiet
  • add option --ncurses
  • add a big shoucast radio list with lots of radios
  • add shoutr_start and shoutr_stop functions.
  • add id3tags

LICENSE

Licensed under the terms of the MIT License (MIT) See the file COPYING for details.

Contact

Yoann Sculo - [email protected]

shoutcast-recorder's People

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar

shoutcast-recorder's Issues

type.h conflict

The 1st line of include/types.h is
ifndef TYPES_H_
that causes compilation error on MacOSX (10.8 )
I changed it with __SHOUTR_TYPES_H
.

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.