Neel Shah (Btech I.T)

Neel shah
3 min readOct 7, 2020

--

CHARUSAT UNIVERSITY

Project Name:- Multimedia Casting Over Wi-fi using IP

What does “a device on your Wi-Fi is casting” mean?. It generally will mean that something that is connected to your network, like your phone, is broadcasting video or audio to another device on the network, such as your television or speakers.

The project will work as mentioned below. First, Client will send a join request to the server to join the multicast group. After that Server will provide station list, site info to the client through TCP. Then whichever station it selects from the station list, it is connected to that station. All the stations are sending data, irrespective of client is connected or not. This functionality is incorporated to relate more with real life situation, eg:- T/V, radio sends data even though there is no receiver connected. Whenever receiver connects to a particular station, it starts receiving live-streaming videos from that station. Receiver can pause, resume, change station or even terminate at any given time from GUI using thread.

Table of Contents:-

  1. Client Side
  2. Server Side
  3. Receiver Side
  4. Station 1
  5. Station 2

We can add as many stations we want to increase the amount of content and data on the system.

General Lookout:-

First of all client will send a request to the server to join the multicast group.

after that server will provide station list and site info to the client through TCP.

whichever station is selected the client will start receiving data from that station.

all the stations will keep sending the data irrespective of whether that client is connected or not.

Streaming media server

all the videos to be casted are converted using ffmpeg to make it streamable.

ffmpeg is a command-line tool that converts audio or video formats. It can also capture and encode in real-time from various hardware and software sources such as a TV capture card. ffplay is a simple media player utilizing SDL and the FFmpeg libraries.

USER FETURES :-

User can pause, Resume, change OR terminate the streaming at any given point of time.

Thread is used to implement these features.

We are using gtk+ for the GUI creation. As Linux uses gtk+ that is Genome Tool Kit for GUI programming.

Overview Of GTK :-

GTK has been built up to be based on various libraries.

GLib

GLib is a low-level core library that forms the basis of GTK. It provides data structure handling for C.

Pango

Pango is a library for layout and rendering of text. It forms the core of text and font handling for GTK.

Cairo

Cairo is a library for 2D graphics with support for multiple output devices (including the Window System, Win32) while producing a consistent output on all media players.

GdkPixbuf

Gdk is a library for loading graphical assets like icons in various formats, like PNG, JPEG, and GIF.

ATK

ATK is a library for a set of interfaces providing accessibility.

CORE CONTENTS OF THE PROJECT:-

  • the project is based on C programming.
  • networking protocols like TCP and UDP to be implemented.
  • Socket programming.
  • Graphical User Interface.
  • Ubuntu-Linux
  • GTK+ v3

Sign up to discover human stories that deepen your understanding of the world.

Free

Distraction-free reading. No ads.

Organize your knowledge with lists and highlights.

Tell your story. Find your audience.

Membership

Read member-only stories

Support writers you read most

Earn money for your writing

Listen to audio narrations

Read offline with the Medium app

--

--

Neel shah
Neel shah

Written by Neel shah

Information Technology Graduate, CHARUSAT UNIVERSITY,2022

No responses yet

Write a response