You are on page 1of 32

REPORT ON

Mp3 Splitter & Joiner


(June 2012-August 2012)

Submitted for the partial fulfillment for the award of The degree of

BACHELOR OF TECHNOLOGY In Computer Science Engineering

Under the guidance of: Mr. Vikas Aggarwal Director BulbTiger

Submitted By: Ashutosh Tripathi


(05610402709)

Amity School of Engineering and Technology (Affiliated to Guru Gobind Singh Indraprastha University) 580, Delhi Palam Vihar Road Bijwasan, New Delhi-110061

PREFACE
With the advent of various programming technologies and their broad support toward a lot of stuffs, our needs have escalated over the years, making computers and similar automatic devices our friend, relative, and teacher and guides many times. The need for integrating our daily use devices to these machines has become more and more important. Finding the various fields of application for the use of these revolutionary machines is not a new era of research, but even now it has much potential to attract the programmers for making it more functional for simplifying their daily life tasks.

It was very much expected that there will one day when every will have computer not on his desk but on his hands, but it was difficult to imagine that it would be so early. When talking about the suitability and flexibility of moving along with data, then we have to compromise with the size and power requirements. Major software technologies are providing the means to make this type of transfer possible and descent approaches towards this era of application is the necessity of time.

My project is just a little attempt in this direction.

The application may be not fulfilling all the need of the hungry industry and technology but it may be said an attempt to make an effort toward simplifying the business needs with using the assistance of technology with its efficient use. The next targets are to make the same feasible with now popular technology. I was unable to do that stuff because of the lack of time and resources right now. I hope you will appreciate the efforts and forgot the errors and inefficiency that it may have as just an educational project it is.

ACKNOWLEDGEMENT
I have great pleasure in acknowledging the help from all those who favored me with giving shape to the present project. My heartiest thanks go to my guide Mr. Vikas Aggarwal for his help and support throughout the project. The help rendered by Mr. Himanshu (associate @ Bulbtiger ) is greatly acknowledged. I shall remain indebted to Mr. Shashank Jain (Co. Director) for his guidance throughout this training progam. I take this opportunity to express my sincere gratitude to Ms. Shaveta Tatwani, Mr. Amar Arora, Mr. Abhijeet for their valuable suggestion, constant encouragement, silent support and unwavering confidence, without which this project would not have been possible. The perfection of a man lies on his depth of gratitude. Its not only my duty but a matter of joy and pleasure to once again convey my thanks to all. The training gave me an opportunity to understand various technical fundamentals and its application to different processes and work on the job as an effective team.

CERTIFICATE

This is to certify that this report entitled Mp3 Splitter & Joiner comprehends the authentic work of industrial training accomplished by ASHUTOSH TRIPATHI, Enrollment No.05610402709, and student of AMITY SCHOOL OF ENGINEERING AND TECHNOLOGY (GGSIPU).

This Industrial Training partially fulfills his Bachelor of Technology course requirement after third year at Bulbtiger, New Delhi.

Guide Name: Mr. Vikas Aggarwal (Director (Bulbtiger))

CONTENTS
Preface Acknowledgement. Certificate...

1: Introduction 1.1. Project Description.. 1.2. Objective. 1.3. Purpose 1.4. Scope...

2: Project Requirements 2.1. Functional Requirements.... 2.2. Non-functional Requirements. 2.3. Software/Hardware requirements... 2.3.1. Software Requirements. 2.3.2. Hardware Requirements

3: Project Details 3.1. Technologies used... 3.2. Database.. 3.3. Diagrams..... 3.3.1. Flowchart.. 3.3.2. Use Case diagrams.... 3.3.3. Class diagrams.. 3.3.4. Sequence diagrams.... 3.3.5. Activity diagrams...... 3.3.6. State Chart diagrams. 4: Screen Shots...

5: Conclusion 5.1. Conclusion ..... 5.2. User Feedback....

6: Bibliography

Introduction
In This Section: project description objectives purpose scope

INTRODUCTION
Mp3 splitter and joiner is a utility to split and join mp3 files .Using splitter the user can split the mp3 file into number of parts (Max 25) .All splitted parts will be of equal size. Using Joiner user can join any number mp3 files ,mix different splitted files and create his own remix mp3 . It is a lightweight application for quickly splitting and joining larger MP3 files.

PROJECT DESCRIPTION: Music is for every occasion- from partying to Rock 'n' Rolla disco, from everyday life to a wedding anniversary and even to a somber funeral, everything has music embedded in it. Its magic alright- though we never reap every beat has our vocal cords vibrating, it causes adrenal to pump throughout the body and recharge people.

MPEG-2 Audio Layer III is commonly referred to as mp3.It is one of the most used technology to enjoy audio music. Apart from this some people want some part of a mp3 file or want to mix some mp3 files .For this Mp3 splitter and joiner is my attempt to fulfill their needs up to some extent.

This project is a utility to split and join mp3 files and is a lightweight application for quickly splitting and joining larger MP3 files.

OBJECTIVE:

This application is developed as an Windows application. Using the concepts of Core Java and look and feel is via some Advanced Java concepts like Swings.

The objectives of the proposed system are as follows: Easy to use, effective and efficient Accurate results. Easy maintenance. Fast access More feasibility More eye-catching interface. Provides high consistency More reliable

PURPOSE: The purpose of this project is to develop a Mp3 splitter and joiner which is a Windows application , it is a utility to split and join mp3 files and is a lightweight application for quickly splitting and joining larger MP3 files.

Its fast and reliable software which can be used to partition any mp3 file .Joining and splitting are done in fraction of seconds.

SCOPE: Youll need to do the research to find out what they require, but once that's done, a good system can keep it organized for you. This application is basically written to provide an very neat and clean interface to the user . The interface is very simple and the output is accurate and unbeatably quick. Its could be used as a general application.

Project
Requirements
In This Section: functional requirements non-functional requirements software/hardware requirements

PROJECT REQUIREMENTS
FUNCTIONAL REQUIREMENTS:

In software engineering, a functional requirement defines a function of a software system or its component. A function is described as a set of inputs, the behavior, and outputs. Functional requirements may be calculations, technical details, data manipulation and processing and other specific functionality that show how a use case is to be fulfilled. They are supported by non-functional requirements, which impose constraints on the design or implementation (such as performance requirements, security, or reliability). As defined in requirements engineering, functional requirements specify particular behaviors of a system. This should be contrasted with non-functional requirements which specify overall characteristics such as cost and reliability.

Modules Description: Splitter : Splitter is a simple program to use that has an intuitive interface. It is a utility to split mp3 without decoding. It's very useful to split large mp3 to make smaller files you. Splitter splits the file (having .mp3 extension) into number of parts (Max 25) .All split parts will be of equal size. Once splitting is done the user can select the best part to be used as a ringtone. The split files results are stored in the same directory in which the original file was present. Splitting Sequence will be as follows: Choose a file using the Browse button. Select the desired number of parts ranging from 2 to 25. Click on the Start Splitter button to start the splitting. When done the application show the Done Conversion message dialog box.

Joiner : MP3 Joiner is an easy and fast audio tool to combine MP3s. You can join multiple

music mp3 files into a larger mp3 file in a split second. You can merge, combine and join mp3 audio files with blazing speed, without recompressing and without quality loss. Mp3 Joiner works with audio files directly and the joined mp3 song will be ready almost instantly. The ID3 tag remains intact with the file. it's designed to join together MP3 files, without needing to decode + re-encode the data (which would result in a loss of audio quality) ,but it cant deal with the ID3 tags intelligently.

Splitting Sequence will be as follows: Choose files using the Browse button. Chosen files will be listed in the text area It also shows the last chosen file to the user Select the Destination where you want to save the Click on the Start Joining button to start the Joining. Progress bar shows the Percentage of Joining (%) completed. When done the application show the Done Joining message dialog box.

NON-FUNCTIONAL REQUIREMENTS:

In

systems

engineering

and

requirements

engineering,

non-functional

requirements are requirements which specify criteria that can be used to judge the operation of a system, rather than specific behaviors. This should be contrasted with functional requirements that specify specific behavior or functions. Non-functional requirements are often called qualities of a system. Other terms for non-functional requirements are "constraints", "quality attributes", "quality goals" and "quality of service requirements". Qualities, of Non-functional requirements can be divided into two main categories.

Execution qualities, such as security and usability, are observable at run time. Evolution qualities, such as extensibility and scalability, embody in the static structure of the software system.

SOFTWARE REQUIREMENTS:

JDK 1.6 or higher version. Operating system Windows2000/XP/7/8

NetBeans IDE 7.1.2.

HARDWARE REQUIREMENTS:

Intel P4 processor with minimum 2.0Ghz Speed RAM: Minimum 256MB Hard Disk: Minimum 20GB

Project Details
In This Section: technologies used diagrams

TECHNOLOGIES USED:

JAVA: Java is a platform independent, object-oriented, robust, secure and innovative programming language. It consist of Two Parts JVM (Java Virtual Machine), which is software component that is used to execute java programs. Java API (Application Programming Interface) that consist of inbuilt classes that are used in different programs.

INPUT AND OUTPUT: JAVA.IO


The Java I/O means Java Input/Output. It is provided by the java.io package. This package has an InputStream and OutputStream. Java InputStream is defined for reading the stream, byte stream and array of byte stream.

Java provides the standard I/O facilities for reading text through either from the file or from the keyboard on command line. This program illustrates how to use standard input to read the user input.

o File: The File class deals with the machine dependent files in a machineindependent manner i.e. it is easier to write platform-independent code that examines and manipulates files using the File class. This class is available in the java.lang package.

Whenever the data is need to be stored, a file is used to store the data. File is a collection of stored information that are arranged in string, rows, columns and lines etc.

o File Handling In Java

For file handling in java, the package known as java.io is available. This package contains all the required classes needed to perform input and output (I/O) in Java. The sequence of data can be defined as a stream. Java defines two types of streams which are given below : 1. Byte 2. Characters

For dealing input and output of bytes, byte stream is employed. For reading and writing binary data it is incorporated. Binary Stream uses two abstract classes for input and output. These are InputStream class and OutputStream class respectively. To read data from the source InputStream is used and to write data to a destination OutputStream is used.

FILECHOOSER:
Java provides javax.swing.* package that is really a beneficial one. It provides several useful classes which can be used for different purposes. Among them, JFileChooser is a standard dialog for selecting a file from the file system. This has made the user to select file or directory of their choice easily.
JFileChooser JFileChooser

provides a simple mechanism for the user to choose a file. The API makes it easy to bring up open and save dialogs. The type of look

and feel determines what these standard dialogs look like and how they differ. In the Java look and feel, the save dialog looks the same as the open dialog, except for the title on the dialog's window and the text on the button that approves the operation.

o Show open dialog : The argument to the showOpenDialog method specifies the parent component for the dialog. The parent component affects the position of the dialog and the frame that the dialog depends on. For example, the Java look and feel places the dialog directly over the parent component. If the parent component is in a frame, then the dialog is dependent on that frame. This dialog disappears when the frame is minimized and reappears when the frame is maximized. By default, a file chooser that has not been shown before displays all files in the user's home directory. You can specify the file chooser's initial directory by using one of
JFileChooser's

other constructors, or you can set the directory with the method.

setCurrentDirectory

The call to showOpenDialog appears in the actionPerformed method of the Open a File button's action listener.

o Show save dialog : The showSaveDialog method for displaying a save dialog. It opens a dialog which can be used to save files to a required destination along with the desired file extension.

o Filters : Filters can be applied to FileChooser so that you can select the particular type of file i.e. file having the required extension only.

SCREEN SHOTS

Fig: Splitter

Fig: Joiner

fig: Filechooser (Splitter)

Fig: Selecting number of parts

Fig: Done splitting

Fig: File chooser (Splitter(Open Dialog ))

Fig: Selecting Files(Open Dialog )

Fig: file save dialog

Fig: output path set

Fig: Joining Done

Conclusion
In This Section: conclusion feedback future scope

CONCLUSION

CONCLUSION:

Definitely I am not starting a brand new thing and there are still many successfully running products till the date, but it was to just an attempt to utilize my capability to provide a solution in this direction. There are obvious limitations in the product presented by me, but under provided resources, technical helps and a short scale of time, I tried my best.

I am looking for more resources to move into this direction and want to make a complete product that works effectively and efficiently and it is not very much problematic.

I hope my efforts for going towards a very useful application, in the form of this project will be praised by my educational institution and we will get a good response from the institution and the industry as well.

USER FEEDBACK:

User is ultimate destination, where the success or failure of any product is expected to be decided. There are a lot of examples of many expensive and highly technical projects that failed only because of not getting users proper anticipation. Thats why before finalizing this project, it was necessary to take support of a person far away from the programming side of the project and also has a good knowledge of the system, so he can test the possibilities for which the project could be a failure.

FUTURE SCOPE:

There are many improvements which can be done in this application in future to make it more effective and to fulfill most needs of user. Following are the areas in which the application can be improved The ID3 tag remains intact with the file. So it cant deal with the ID3 tags intelligently. Some work needs to be done to sort out this issue. Reading ID3 tags and removing some of them to get more reliable splitting and joining will enhance the application to a great extent. Splitting the mp3 files within selected duration will also add more useful feature for the user point of view. Most users want to split files according to some minutes or seconds range so adding this feature will be something more remarkable.

BIBLIOGRAPHY
In This Section: bibliography technical references

BIBLIOGRAPHY
Taking something entirely new as a project is always problematic as far as the availability of resources is concerned. I tried and tried to get some good and feasible books for the topic, from library and friends. I also got the material from the websites and books for the references. I am not mentioning any particular books for that one. I am writing down some websites for which we are especially thankful to the respective owners. I am writing them as technical references in the next paragraph.

Technical References: www.wikipedia.com www.youtube.com www.netbeans.org http://www.roseindia.net http://docs.oracle.com

You might also like