Music Player Using Python
Music Player Using Python
Music Player Using Python
Project Report
Submitted
Bachelor of Technology
DISHA AGARWAL
SHRUTI JAIN
2019
1
CERTIFICATE
Certified that the work contained in the project titled “MUSIC PLAYER USING PYTHON”,
by Tanmay Khandal, Disha Agarwal, Shruti Jain, has been carried out under my supervision
and that this work has not been submitted elsewhere for a degree.
JECRC University
2
DECLARATION BY THE CANDIDATE
We the undersigned solemnly declare that the project report MUSIC PLAYER USING
PYTHON is based on our own work carried out during the course of our study under the
supervision of Mr. Lokendra Pal. I further certify that :
I. The work contained in the report is original and has been done by us under the general
supervision of my supervisor.
II. The work has not been submitted to any other Institution for any other
degree/diploma/certificate in this university or any other University of India or abroad.
III. We have followed the guidelines provided by the university in writing the report.
IV. Whenever we have used materials (data, theoretical analysis, and text) from other
sources, we have given due credit to them in the text of the report and giving their details in
the references.
3
ACKNOWLEDGEMENT
First of all, We would like to express my gratitude towards JECRC UNIVERSITY, jaipur, for
providing us a platform to present our project at such an esteemed institute.
We would like to thank (Prof.) Dr. Naveen Hemrajani, HOD, Computer Science &
Engineering Department , JECRC University, jaipur, for their constant support.
We are also thankful to all the staff members of the department for their full cooperation and
help.
DISHA AGARWAL
(16BCON472)
TANMAY KHANDAL
(16BCON476)
SHRUTI JAIN
(16BCON471)
4
ABSTRACT
This is a Project Report on “Music Player Using Python”. During the making or
Development of the project we explored new ideas and libraries in python for implementing
GUI based Application.
The Project is the output of our planning, schedule, programming skills and the hard work,
and this report reflects our steps taken at various levels of programming skill ,planning and
schedule.
We have learnt a lot during this project in our coding skills and deep concept related to these
kind of projects .
Our project is “MUSIC PLAYER USING PYTHON”. This is a python based application
which enables people to play their local songs.
5
TABLE OF CONTENTS
01 INTRODUCTION 7
03 INSTALLATION REQUIREMENTS 11
04 HARDWARE REQUIREMENTS 12
08 REFERENCES 17
6
CHAPTER 1
INTRODUCTION
The main objective of this project is to design cross-platform media player using
python and tkinter . Python Is Really Very Interesting Language Because this language
provides usability to write cross-platform codes that can run on all types of the system
without even doing any big changes in codes.
This Python module provides a high-level core Music player interface where you are
supposed to provide all the remaining high-level logic like the user interface, the playlist
logic and the audio data.
7
CHAPTER 2
DEVELOPMENT LIBRARIES :-
We have made our application with the help of Python Features :-
1) Tkinter:
Tkinter is the standard GUI library for Python. Python when combined with Tkinter
provides a fast and easy way to create GUI applications. Tkinter provides a powerful object-
oriented interface to the Tk GUI toolkit.
Creating a GUI application using Tkinter is an easy task. All you need to do is perform the
following steps −
Enter the main event loop to take action against each event triggered by the user.
2) os :
The OS module in python provides functions for interacting with the operating
system. OS, comes under Python’s standard utility modules. This module provides a
portable way of using operating system dependent functionality. The *os* and
*os.path* modules include many functions to interact with the file system.
3) Idna:
Support for the Internationalised Domain Names in Applications (IDNA) protocol as
specified in RFC 5891. This is the latest version of the protocol and is sometimes
referred to as “IDNA 2008”.
This library also provides support for Unicode Technical Standard 46, Unicode IDNA
Compatibility Processing.
This acts as a suitable replacement for the “encodings.idna” module that comes with
the Python standard library, but only supports the old, deprecated IDNA specification
(RFC 3490).
4) Sys:
8
System-specific parameters and functions. This module provides access to some
variables used or maintained by the interpreter and to functions that interact strongly
with the interpreter. It is always available. The list of command line
arguments passed to a Python script
5) Threading
In simple words, a thread is a sequence of such instructions within a program that can
be executed independently of other code. For simplicity, you can assume that a thread
is simply a subset of a process!
A thread contains all this information in a Thread Control Block (TCB):
Thread Identifier: Unique id (TID) is assigned to every new thread
Stack pointer: Points to thread’s stack in the process. Stack contains the local
variables under thread’s scope.
Program counter: a register which stores the address of the instruction
currently being executed by thread.
Thread state: can be running, ready, waiting, start or done.
Thread’s register set: registers assigned to thread for computations.
Parent process Pointer: A pointer to the Process control block (PCB) of the
process that the thread lives on.
6) Time :
time, which is measured by the system clock. System time represents a
computer system's notion of the passing of time. One should remember that
the system clock could be modified by the operating system, thus modifying
the system time.
7) mutagen.mp3
Mutagen is a Python module to handle audio metadata. It supports ASF, FLAC, MP4,
Monkey’s Audio, MP3, Musepack, Ogg Opus, Ogg FLAC, Ogg Speex, Ogg Theora,
Ogg Vorbis, True Audio, WavPack, OptimFROG, and AIFF audio files. All versions
of ID3v2 are supported, and all standard ID3v2.4 frames are parsed. It can read Xing
headers to accurately calculate the bitrate and length of MP3s. ID3 and APEv2 tags
can be edited regardless of audio format. It can also manipulate Ogg streams on an
individual packet/page level.
8) pygame
Pygame is a cross-platform set of Python modules designed for writing video games.
It includes computer graphics and sound libraries designed to be used with the
Python programming language.
9
9) Ttkthemes
The "themed" aspect of the new Ttk widgets is one of the most powerful and exciting
aspects of the new widget set. Yet because it does things quite differently from how
Tk has traditionally worked, and because in trying to be flexible it does a lot of things,
it's certainly the most confusing for many people
10) Webbrowser
Under most circumstances, simply calling the open() function from this module
will do the right thing.
IN Unix, graphical browsers are preferred under X11, but text-mode browsers
will be used if graphical browsers are not available or an X11 display
isn’t available.
If text-mode browsers are used, the calling process will block until the user
exits the browser.
10
CHAPTER 2
INSTALLATION REQUIRMENTS:
mutagen
pygame
ttkthemes
idna
pyinstaller
11
CHAPTER 3
HARDWARE REQUIREMENTS
P IV or above Processor
1 GB RAM
120 GB HDD
LAN or WAN
12
CHAPTER 4
SNAPSHOT OF MUSIC PLAYER
Fig. 1
13
CHAPTER 5
Advantages/Benefits of Using Python
The diverse application of the Python language is a result of the combination of
features which give this language an edge over others. Some of the benefits of
programming in Python include:
Further, its development is driven by the community which collaborates for its code
through hosting conferences and mailing lists, and provides for its numerous modules.
14
own unit testing framework, all of which contribute to the increase in its speed and
productivity. Python is considered a viable option for building complex multi-
protocol network applications.
15
CHAPTER 6
PRODUCT FEATURES
1. PLAY : We added play option for playing the song which is imported from
library of system.
From system.
16
REFERENCES
> https://tkdocs.com/tutorial/styles.html
> https://en.wikipedia.org/wiki/Pygame
> https://pypi.org/project/mutagen
> https://www.geeksforgeeks.org/multithreading-python-set
17