Skip to content

Instantly share code, notes, and snippets.

Last active Aug 22, 2021
What would you like to do?
Progress Report Google Summer of Code 2021

This summer I had an wonderful opportunity to work on foundations' Icecast Streaming Server as part of Google Summer of Code 2021 program. I worked on implemeting (Live) listener statistics for Icecast.

๐Ÿ“™ Abstract

Icecast Server is used as a streaming server to broadcast to various listeners. A Live listner statistics for the streamer of Icecast is of a great advantage it helps in analysing the statistic data of a particular stream.
Using the knowledge of MQTT protocol to publish these statistics data to external broker and using standard components like(Grafana Influxdb telegraf) to draw differnt types of charts graph etc.

๐Ÿ“ Deliverables

The deliverables of the project are as follows:

  • Implementing a stats interface. -This inteface process stats data and made this data available to get published in realtime to a broker.
  • Re-structure and Refactor code.
  • Processing stats events on a new thread -For publishing data over topics we made a seperate thread and assign this task to it.
  • Configuring libmosquitto package inside Icecast publishing messages to a broker. -libmosquitto is used to create mqtt aware client here the icecast is acting as a client and publishing data over topics.
  • Testing the published data on various topics with proper prefixes

All of the listed deliverables were completed within the GSoC period. ๐ŸŽ‰

๐Ÿš€ Contributions

Commit link
Add Prefix for topic
Add topics and messages to publish
Modify Stats interface
Connect to the broker(mosquitto)
Add a new Thread Test and process the event queue events

๐Ÿ‘จ Mentors

I have not only learned about the Open Source culture and how to write good code but also learned how to work as a team to solve problems.This was the best summer experience i ever had thankyou so much for guiding me this summer. I will still contribute to this fantastic project Icecast-server ๐Ÿ™‚

I would like to thank my mentors for helping me reach this milestone. ๐Ÿ˜„๐Ÿ˜„

  • Thomas Daede
  • Nathan Egge
  • Phillip Schafft
  • Chris Montgomery
  • and all the Foundation members ๐Ÿ˜€๐Ÿ˜€

I would also like to thank Vishal Mishra for being an amazing partner in this journey.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment