You are on page 1of 20

ONLINE MOVIE STREAMING

( DISNET )

Submitted to Sri S.Ramasamy Naidu Memorial College, Sattur.


Affiliated to the Madurai Kamaraj University, Madurai in the partial
Fulfilment of the requirements of the degree of

B.Sc Computer Science


By
A.NANTHAN - UCS210643
P.PUGALENTHI - UCS210645

Under the Guidance of


Dr K ARUNESH M.Sc., M.Phil., Ph.D.
Associate Professor

DEPARTMENT OF COMPUTER SCIENCE


SRI S. RAMASAMY NAIDU MEMORIAL COLLEGE
SATTUR. 2021-2022
BONAFIDE CERTIFICATE

This is to certify that the project work entitled “ONLINE MOVIE


STREAMING(DISNET)” is a bonafideworkdone byNANTHAN.C
(UCS210643) , PUGALENTHI.P (UCS210645) submitted to the Department
of Computer Science , Sri S . Ramasamy Naidu Memorial College, Sattur , in
partial fulfillment of the requirements of the award of the DEGREE OF
BACHELOR OF COMPUTER SCIENCE.

Dr.K.ARUNESH
Associate Professor Head & AssociateProfessor
Guide Head of the Department

Submitted for Viva –voce held on

Internal Examiner External


Examiner
Title of the project:

Online Live streaming

Introduction and Objectives of the project:

The purpose of this SRS document is to provide a detailed requirements for the Live video
Streaming site which allows anyone to broadcast video online. In the early days of the
Internet, if a webmaster wanted to add videos to his website he had to post it as a link. Web
site visitors then had to download the file completely before playing it back. This all changed
with Live streaming video. Content is served in a way that allows files to play almost
immediately after the file begins to download. This live video streaming will broadcast a
video stream live, allows user to broadcast an audio or video source in real-time to viewers
connected to the Internet.

Project category:

RDBMS (Relational Database Management System)

Project platform:

Front end: PHP

Back end:MySQL server

PHP:

PHP is an acronym for "PHP: Hypertext Preprocessor"


PHP is a widely-used, open source scripting language
PHP scripts are executed on the server

MySQL:

MySQL is a database system used on the web


MySQL is a database system that runs on a server
MySQL is ideal for both small and large applications
MySQL is very fast, reliable, and easy to use
MySQL uses standard SQL

Hardware requirements:

Operating system: Windows XP/Windows 7/ Windows 8


Processor: Pentium- II or higher
Hard Disk Space: 40 GB (min.)
RAM Memory: 512 MB (Min)

Software requirements specification

Server: Apache server 1.8.2


Scripting language: HTML, CSS, PHP 5.4 ,Javascript, AJAX
Database server:MySQL server 5.5
Integrated Development Environment (IDE):Adobe dreamweaver CS 6.0

DFD:

Level 1

Level 2:

ER Diagram:

Database design:

Project modules:

Accounts: In this module user can register by entering their profile information. After registration
user can access accounts page by entering login id and password.

Video manager:This module allows user to upload videos and they can edit uploaded video
description and its contents.

My Channel:In this module the visitors can add or subscribe users channel by entering their Email ID.
Whenever the user uploads new video it sends mail notification to the visitor.

Events broadcasting: This module can be used to broadcast a live events. The Live module home
page contains list ofevents and Completed Events sections.The user needs to enter event name,
event date, event time, etc.

Dashboard module:There are two types of users in this module. They are administrator and
employees.

Live broadcasting:This module is for administrator where administrator can stream TV channels by
entering embedded link.

Subscription:In this module user can subscribe for live broadcasting by making payment. After
confirmation of the payment the user can watch and record videos. The subscribed member can
download the videos by clicking download button.

Comments and likes:The registered user can post their comments and like the uploaded videos.

1. Testing technologies and security mechanisms


Different testing levels
 Unit testing
 Integrated testing
 Validation testing
 Output testing
 User acceptance testing

a. Unit testing:
Unit testing focuses on verification effort on the smallest unit of
software design module. Using the unit test plans. Prepared in the design
phase of the system as a guide important control paths are tested to uncover
errors within the boundary of the modules. The interfaces of each of the
modules under consideration are also tested. Boundary conditions were
checked.
All independent paths were exercised to ensure that all statements in the
module executed at least once and all error-handling paths were tested. Each
unit was thoroughly tested to check if it might fall in any possible situation. This
testing was carried out during the programming itself. At the end of this testing
phase each unit was found to be working satisfactorily as regarded to the
expected out tom the module.

b. Integration Testing:
Data can be across an interface one module can have an adverse effect on
another's Sub function when combined may not produce the desired major
function; global data structures can present problems. Integration testing is a
symmetric technique for constructing tests to uncover errors associated with the
interface. All modules are combined in this testing step. Then the entire program
was tested as a whole.

c. Validation Testing:
At the culmination of integration testing software is completely assemble.
As a package. Interfacing errors have been uncovered and corrected and find;
series of software test-validation testing begins. Validation testing can be
defined in many ways but a Simple definition is that validation succeeds when
software functions in manner that is reasonably expected by the consumer.
Software validation is achieved through a series of black box tests that
demonstrate conformity with requirement after validation test has been
conducted one of two conditions exists.
 The function or performance Characteristics confirm to
specification that are accepted.
 A validation from specification is uncovered and a deficiency
created.

Deviation or errors discovered at this step in this project is corrected prior to


completion of the project with the help of user by negotiating to establish a
method for resolving deficiencies. Thus the proposed system under
consideration has been tested by using validation testing and found to be
working satisfactorily.

d. Output testing:
After performing the validation testing the next step is output testing
of the proposed system since a system is useful if it does not produce the
required output in the specific format required by them tests the output
generator displayed on the system under consideration. Here the output is
considered in two ways - one is onscreen and the other is printed format. The
output formation the screen is found to be correct as the format was designed
in the system design phase according to the user needs. As far as hardcopies
are considered it goes in terms with the user requirement Hence output
testing does not result any correction in the system.

e. User acceptance Testing:


User acceptance of the system is a key factor for success of any
system. The system under consideration is tested for user acceptance by
constantly keeping in touch with prospective System and user at the time of
developing and making changes whenever required.

Limitation of the project:

Future scope of the project:

 In future we can make mobile based application.


 In future we can add more features like increasing video quality, Crop video, screen capture,
Video editor tools, etc.
LIVE VIDEO STREAMING

Software Requirements Specification (SRS)

1. Introduction
This section captures the system requirement specifications for Live Video Streaming.
This document provides an overview of the entire SRS with purpose, scope, definitions,
acronyms, abbreviations, references and overview.

1.1. Purpose
The purpose of this SRS document is to provide a detailed requirements for the Live video
Streaming site which allows anyone to broadcast video online. In the early days of the
Internet, if a webmaster wanted to add videos to his website he had to post it as a link. Web
site visitors then had to download the file completely before playing it back. This all changed
with Live streaming video. Content is served in a way that allows files to play almost
immediately after the file begins to download. This live video streaming will broadcast a
video stream live, allows user to broadcast an audio or video source in real-time to viewers
connected to the Internet.

With streaming video or streaming media, a Web user does not have to wait to download a
file to play it. Subscribed user can broadcast or record live events, meetings, functions, etc
through online. Even it has option to upload and download videos in the Video manager. The
registered user should to pay the subscription charge to stream videos.

1.2. Scope
The Software Requirements Specification captures all the requirements in a single
document. The website title is Live video Streaming currently under beta version. The
website has a very attractive and simple graphical user interface. The System is supposed
to have the following features:

 This video streaming platform is designed for businesses and individuals.


 It supports multiple login system.
 The administrator has all rights of manipulating the data.
 It has customized Video player, an audio can be captured from a microphone and a video
capture card can be used to obtain video from a camera.
 Streaming video is content sent in compressed form over the Internet and displayed by
the viewer in real time.
 It allows subscribed Web site visitors to record and download video files.
 Through our Online Live Video streaming website, the company can broadcast TV
channels through online.
 Registered user can broadcast or record live events, meetings, functions, etc through
online. Even it has option to upload and download videos in the Video manager.
 The registered user should to pay the subscription charge to stream videos.

1.3. Definitions, acronyms & abbreviations

SRS Software Requirements Specification

PHP PHP: Hypertext preprocessor

HTML Hyper Text Markup Language

IDE Integrated development environment

1.4. References
The SRS document uses the following documents as references:

 Video streaming Project synopsis


 IEEE SRS Template
1.5. Overview
This SRS will provide a detailed description of the Online Live Video streaming. This
document will provide the outline of the requirements, overview of the characteristics and
constraints of the system.

2. Overall description

2.1. Product perspective

Streaming video has changed how we watch videos online by no longer making it necessary
to wait for a whole video file to download before starting playback. More and more people
have access to broadband, which the technology requires to work properly.

Streaming videos require sufficient bandwidth to play, especially at higher quality. Streaming
service requires a Internet speed of at least 1 Mbps for HD quality. While these speeds are
generally available with most cable/DSL connections, those with slower connections may
experience issues with playback and/or poor quality.

For Free subscribers streaming video files is harder to copy and prevents users from saving a
copy to their computer. Only paid user can record and download streaming videos.

2.1.1. System interfaces

 The system we develop in PHP and its connected to MySQL database.


 The system requires Embedded link to stream live video channels.
 ‘The system works with the support of Hardware tools i.e; Web camera and auto
devices.

2.1.2. User interfaces

This project is client based web application and it helps to earn revenue for administrator
from paid subscribers. In this system the administrator has all rights of manipulating the
data, Subscribers can uploaded videos in the video manager, upcoming events and live
events, Live video stream links.

2.1.3. Hardware interfaces

 Adobe Flash Player 10.0.32 or above


 Internet Explorer 8.0 or above, Firefox 2.0 or above, or Safari 3.0, or Chrome 4.0 or
above
 Operating system - Microsoft Windows XP or Microsoft Windows 7
 256 megabytes (MB) of RAM - 512 MB recommended
 JavaScript and Cookies must also be enabled.
 Super VGA (800 x 600) or higher resolution
 Speakers/headphones with Mic.
 Web Camera

2.1.4. Software interfaces

 PHP 5.2
 MySQL Database Server 5.3
 IDE: Adobe Dreamweaver CS 6.0

2.1.5. Communications interfaces

This is the website application and the client needs following communication interfaces:
 Broadband or 3g Internet connection
 Email ID
 Web camera with mic

2.1.6. Site adaptation requirements

This website requires live stream embedded link from youtube.

2.2. Product functions

 Accounts: There are two types of account in this system. I.e; Free subscriber and paid
subscribers. In this module user can register by entering their profile information. After
registration user can access accounts page by entering login id and password.
 Video manager: This module allows subscriber to upload videos and they can edit uploaded
video description and its contents.
 My Channel: In this module the visitor can add or subscribe users channel by entering their
Email ID. Whenever the user uploads new video it sends mail notification to the visitor.
 Events broadcasting: This module can be used to broadcast live events. It provides a live
connection between people in separate locations for the purpose of communication, usually
involving audio and often text as well as video. The Events module contains list of live events
and Completed Event. The user needs to enter event name, event date, event time, etc to
publish new events.
 Dashboard module: There are two types of users in this module. They are administrator and
employees.
 Live broadcasting module: Capturing a TV broadcast requires a TV tuner or an appropriate
video embedded link. This module is for administrator where administrator can stream live
TV channels by entering embedded link. In this module, user can record or download
programs.
 Subscription: In this module user can subscribe for live broadcasting by making payment.
After confirmation of the payment the user can watch and record videos. The subscribed
member can download the videos by clicking download button.
 Comments and likes: The registered user can post their comments and like the uploaded
videos.

2.3. User characteristics

The users of the system are Free Subscribers, Paid subscribers and administrator
who maintain the system. The users must have basic knowledge of the computers and
Internet browsing. The administrators of the system to have more knowledge of the
internals of the system and is able to rectify the small problems that may arise due to
disk crashes, power failures and other catastrophes to maintain the system.

2.4. Constraints

 The information of all the users must be stored in a database that is accessible only
in Video streaming website.
 The Video streaming security system must be compatible with the Internet
browsers.
 The Live Video streaming is connected to the Apache server and is running all 24
hours a day.
 The users access the Live Video streaming website from any computer that has
Internet browsing capabilities and Internet connection.
 The users must have their correct usernames and passwords to enter into the
website.
2.5. Assumptions and dependencies

 The users have sufficient knowledge of computers.


 The computer should have broadband or 3g Internet connection to stream live
videos.
 The users know the English language, as the user interface will be provided in
English.
 If the viewer's Internet connection is cut during playback or they need to watch your
content offline, they will be out of luck.

3. Specific Requirements

3.3 Performance requirements

 Minimum 1 MBps Internet bandwidth required. 2 MBps recommended.


 The system is capable of handling 1000 users at a time.
3.4 Design constraints

The languages that shall be used for coding the Live Video streaming website are HTML, CSS,
Javascript, PHP programming language. For working on the coding phase the apache server
needs to be installed.

3.5 Software system attributes

3.5.1 Reliability:

This system is designed to have very simple database just to cater the exact need of Live Video
streaming website. It is tested for all the constraints at development stage.

3.5.3 Security:

All authorized users can access the features of this website. The user has to enter valid login id
and password to access their account.

3.5.4 Maintainability:
There will be no maintenance required for this web application. The database is provided by
the end-user and therefore is maintained by this user.

3.6 Other requirements:

None

Chapter 4
System Design
4.1 Introduction
Design is a process through which requirements are translated into a representation of the
software. The purpose of the designing phase is to plan a solution for the problem specified by the
requirement document. This phase moves from the problem domain to the solution domain i.e. the
requirements are translated into software.
The design activity often results in three separate outputs:
1. Architecture design
2. High level design
3. Detailed design
In architecture design the focus is on identifying components or subsystems and how they
interact to each other. The high level design identifies the modules that should build for developing
the system. In case of detailed design the focus is on how the modules are implemented in software.
System design is a solution, a “How to” approach to the creation of a new system. The
important phase is composed of several steps. It provides the understanding of procedural details
necessary for implementing the system recommended in the feasibility study. Emphasis is on
translating the performance requirements into design specifications.

4.2 Methodology / Objective

The main objectives of the designs are:


1. Practicality
2. Efficiency
3. Flexibility
4. Completeness
5. Security
6. Verifiability
7. Traceability

4.3 Context Flow Diagram

The Context Flow Diagram (CFD) describes the external entities acting on the system. The
environment in which the system is used is depicted in the figure.
Upload video View subscribers
Online video
Customer Admin
streaming
View videos
Stream videos

4.4 Data Flow Diagram

A Data Flow Diagram (DFD) is a graphical representation of the “flow” of data through an
Information System. A DFD also can be used for the visualization of Data Processing. It is common
practice for a designer to draw a context-level DFD first which shows the interaction between the
system and outside entities. This context-level DFD is then “exploded” to show more detail of the
system being modeled.

The DFD uses four symbols, and are explained below:

 A SQUARE, which defines the source or destination of system data also called an external
entity, is not responsible for any task performed by the system.

 An ARROW represents data flow. It represents the path over which data travels in the
system. A data flow can move between processes, flow into or out of data stores to and from
external entities. It must be must be given a name the arrow head showing the direction of
flow.

 A CIRCLE or BUBBLE represents a process that transforms data from one to another by
performing some tasks with the data. The process name must be given a general idea of its
function.

 Two HORIZONTAL PARALLEL LINES represents data store, a data store is a place
where data is held temporarily from one transaction to the next or is stored permanently.
Data flow diagram describes what data flow (logical) rather than how they are processed, so it
does not depend on hardware, Software, data structure or file organization.
TOP Level DFD – Level 1
broadcast file
Broadcast
broadcost
video

account
registration details
account
process

User
video path
video file
upload
video
videos
create new
event

add event id, event ttitle


event
events
DFD – Level 2: Broadcasting videos

Admin
login credentials admin
invalid login id and
password
login process
login id,password

loggedin user

video broadcost lists


broadcast title,broadcast
broadcast url
videos

broadcast
DFD Level 3:Login process and subscription charge payment

Customer
customer profile

name,login id,password,contact
no,mobile no,address
Customer registation
login credentials

process

account

Login process
login id,password

login user

paid amount,card
no,card type
Pay subscription
charges

subscription
DFD Level 4:Uploading videos and sending comment

account
Customer

Channel details

video path Account id,name


Create channel
Channel id,channel name,
channel description
channel
channel name

channel id

Upload videos
video id,video
path,video title

Selected video Selected video


likes videos

Submit likes Post comment


video id,video title,video
path

like id,like comment


type,status type,comment,
comment date

like comment
DFD Level 5: Publishing events and broadcasting events

Customer
event details

Publish events
event id,
event event title
member
profile

event id
account
Invite members
account
account id,name
id,date,
message

invite_members

Broadcast event
video straem detailes event id,event title

broacast id,broadcast
title

broadcast
Abstract:

This project encompasses the development of an online movie streaming website that integrates the
OMDB API for displaying movie image details, utilizes third-party servers for video storage, and
includes a database for user registration and login pages using PHP. The platform offers users a
vast library of movies across different genres, accessible through a user-friendly interface. Key
features include advanced search and filtering options, user authentication, and seamless video
playback controls.

The user registration and login functionalities are implemented using PHP and a MySQL database.
The registration page allows users to create an account by providing their email address and
password, which are securely stored in the database. The login page verifies user credentials
against the database and grants access to authenticated users.

The OMDB API integration enriches the platform by providing detailed movie information and high-
quality images, enhancing the user experience and aiding in informed viewing decisions. Videos
are stored on third-party servers, reducing infrastructure needs and ensuring reliable
performance.

The system architecture is designed for scalability and efficient content delivery, with front-end
technologies such as HTML, CSS, and JavaScript for the user interface, and back-end technologies
managing API requests, data retrieval, video storage, user authentication, and database
operations.

Overall, the platform offers a comprehensive and engaging movie streaming experience, highlighting
the benefits of integrating external APIs, using third-party servers for video storage, and
implementing secure user registration and login functionalities.

You might also like