This document describes a project report submitted for the degree of Bachelor of Technology in Computer Science and Engineering. The project aims to develop a framework for mobile video streaming and secure video sharing in the cloud. It proposes utilizing cloud computing technology to construct private agents for each mobile user to provide video streaming functionality based on network analysis over mobile platforms. The framework securely stores videos in a private cloud using RSA encryption and only allows authorized administrators to manage uploads, modifications and deletions of videos. It is intended to offer convenient and fast mobile access to videos while ensuring security and privacy of data in the cloud.
The document provides an overview of agile software development. It defines agile development as a collaborative approach where requirements and solutions evolve through self-organizing cross-functional teams. The document outlines several agile methodologies introduced in the Agile Manifesto in 2001 including Scrum, Extreme Programming, Crystal, FDD, and DSDM. It also discusses lean practices as part of the agile development approach and compares agile to traditional waterfall models. Finally, it covers advantages and disadvantages of the agile model and considerations for when it is best applied.
This document is a project report submitted by three students for their Bachelor of Technology degree. It describes a project to develop an RFID and biometrics-based system for secure educational testing. The system will use RFID chips in ID cards and fingerprint biometrics to authenticate student identities during exams. It will have a mobile app interface for invigilators and a web interface for administrators. The goals are to reduce errors, maintain integrity of the testing process, and archive exam data. The system design involves an intermediary server to interface with the institution's system and a mobile client app with sensors for authentication.
Final year project on Remote Infrastructure Managementjairaman
The document discusses remote IT infrastructure management (RIM), which allows enterprises to manage their IT infrastructure remotely through offshore management centers. Key points:
1) RIM services have evolved due to the maturity of offshore delivery models and improvements in remote monitoring tools that allow over 85% of infrastructure to be managed remotely.
2) Common RIM services include helpdesk support, system administration, monitoring, maintenance and more.
3) Drivers for RIM include lower costs, 24/7 support, and utilizing skilled resources in low-cost countries like India. The market for RIM is growing and expected to surpass $1B delivered from India to US companies.
Juhi Shrivastava has over 2 years of experience in process control and instrumentation projects involving mixers, fibers, heating and cooling systems, and airports. She has expertise in SCADA systems like WinCC Siemens and InTouch Wonderware, HMI systems like WinCC Flexible, and PLCs such as Siemens S7 300/400/1200. She has experience in all phases of projects from engineering to commissioning and start-up.
Vinay Kumar Boini is pursuing an M.Tech in Communication Engineering at IIT Guwahati with a CGPA of 8.0. His areas of research include modeling of photoconductive antennas for terahertz communication and he has worked on CAN-based distributed control systems. He is proficient in programming languages like C/C++ and tools like MATLAB. He was head of the membership development committee of the IIT Guwahati IEEE student branch and organized several workshops.
The document is a project report on treating wastewater and generating energy using microbial fuel cell (MFC) technology. It discusses the objectives of constructing an experimental MFC setup, implementing a methodology, selecting and preparing microbial cultures, optimizing conditions for voltage generation from synthetic and distillery wastewater, and analyzing COD reduction and future applications. Materials and equipment needed include chemicals, apparatus for COD and MLVSS testing, wastewater sources, and a centrifuge. The methodology section outlines steps for literature review, setup construction, inoculum preparation, initial and final experimentation, and reporting.
The document provides an overview of agile software development. It defines agile development as a collaborative approach where requirements and solutions evolve through self-organizing cross-functional teams. The document outlines several agile methodologies introduced in the Agile Manifesto in 2001 including Scrum, Extreme Programming, Crystal, FDD, and DSDM. It also discusses lean practices as part of the agile development approach and compares agile to traditional waterfall models. Finally, it covers advantages and disadvantages of the agile model and considerations for when it is best applied.
This document is a project report submitted by three students for their Bachelor of Technology degree. It describes a project to develop an RFID and biometrics-based system for secure educational testing. The system will use RFID chips in ID cards and fingerprint biometrics to authenticate student identities during exams. It will have a mobile app interface for invigilators and a web interface for administrators. The goals are to reduce errors, maintain integrity of the testing process, and archive exam data. The system design involves an intermediary server to interface with the institution's system and a mobile client app with sensors for authentication.
Final year project on Remote Infrastructure Managementjairaman
The document discusses remote IT infrastructure management (RIM), which allows enterprises to manage their IT infrastructure remotely through offshore management centers. Key points:
1) RIM services have evolved due to the maturity of offshore delivery models and improvements in remote monitoring tools that allow over 85% of infrastructure to be managed remotely.
2) Common RIM services include helpdesk support, system administration, monitoring, maintenance and more.
3) Drivers for RIM include lower costs, 24/7 support, and utilizing skilled resources in low-cost countries like India. The market for RIM is growing and expected to surpass $1B delivered from India to US companies.
Juhi Shrivastava has over 2 years of experience in process control and instrumentation projects involving mixers, fibers, heating and cooling systems, and airports. She has expertise in SCADA systems like WinCC Siemens and InTouch Wonderware, HMI systems like WinCC Flexible, and PLCs such as Siemens S7 300/400/1200. She has experience in all phases of projects from engineering to commissioning and start-up.
Vinay Kumar Boini is pursuing an M.Tech in Communication Engineering at IIT Guwahati with a CGPA of 8.0. His areas of research include modeling of photoconductive antennas for terahertz communication and he has worked on CAN-based distributed control systems. He is proficient in programming languages like C/C++ and tools like MATLAB. He was head of the membership development committee of the IIT Guwahati IEEE student branch and organized several workshops.
The document is a project report on treating wastewater and generating energy using microbial fuel cell (MFC) technology. It discusses the objectives of constructing an experimental MFC setup, implementing a methodology, selecting and preparing microbial cultures, optimizing conditions for voltage generation from synthetic and distillery wastewater, and analyzing COD reduction and future applications. Materials and equipment needed include chemicals, apparatus for COD and MLVSS testing, wastewater sources, and a centrifuge. The methodology section outlines steps for literature review, setup construction, inoculum preparation, initial and final experimentation, and reporting.
IRJET - Hand Gestures Recognition using Deep LearningIRJET Journal
This document discusses a proposed system to allow deaf or mute individuals to use voice-controlled digital assistants through hand gesture recognition. The system would use deep learning models to recognize hand gestures in real-time and convert them to text to query an assistant, and then convert the assistant's audio response to text for the user to read. This approach aims to provide an accessible alternative to audio-based assistants for those unable to use voice commands. The proposed system is designed to accurately recognize a series of gestures in real-time without requiring the user to wear any hardware.
Brochure of a two-day training program on Automotive Software Engineering Methodologies from 19th to 20th February 2010 organized by TIFAC-CORE in Automotive Infotronics @ VIT University, Vellore.
There is a Discount up to 50% on registration fee for VIT students who have done already any courses @ TIFAC-CORE
Virtual Classroom(Android Application for Accessing Server using Wi-Fi Services)IRJET Journal
This document describes a proposed Android application called Virtual Classroom that allows students to access educational videos and materials stored on a server using Wi-Fi. The application would allow students to stream video lectures, view presentations and documentation, and access other online educational resources without an internet connection by connecting to the server over a local Wi-Fi network. The proposed system aims to address limitations of existing online education platforms that require internet access. It also outlines the application's design, including user registration and authentication, displaying video lists by subject, and allowing teachers to manage materials on the server. The project aims to enhance access to education through a portable application that can retrieve online resources via Wi-Fi.
This document provides a summary of Abby Brown's technical experience including book reviews and editor roles, software patents submitted and issued, research projects and presentations conducted, and technical memberships. Key details include serving as technical editor for two books on Tibco software, submitting several patents around automated tools for services, metadata, and network alarms, presenting on topics such as cloud computing and SOA, and holding memberships in technical organizations like IEEE, The Open Group, and OASIS.
This document provides a faculty profile for Dr. S. Duraisamy, an Assistant Professor at Chikkanna Government Arts College in Tirupur, Tamil Nadu. It includes his contact details, academic qualifications, teaching experience of 23 years at both undergraduate and postgraduate levels, areas of research interest, research guidance provided to 18 Ph.D. students, 94 research publications, participation and organization of various national conferences and seminars, and membership in professional organizations.
This document contains the resume of Aditya Gupta. It outlines his education history including a current PhD in smart water systems at VNIT in Nagpur, India. It also lists his past masters and bachelors degrees as well as projects related to topics like biometric recognition, underwater robots, and more. His research interests and skills in areas like water leakage detection, optimization modeling, and hardware/software tools are mentioned. The resume concludes with his teaching experience and involvement in social organizations.
This document summarizes a research paper on an airport management system using face recognition. It discusses:
1) Developing a face recognition-based attendance tracking system to improve efficiency over previous systems.
2) Creating face databases to train the recognition algorithm to identify passengers during check-in.
3) The system automatically records attendance by identifying faces, displaying passenger IDs and names, and saving records.
Sweenkrishna is seeking a position in embedded systems. He has a Bachelor's degree in Electrical and Electronics Engineering and has worked as an embedded developer for over 2 years. His experience includes designing and developing embedded software and hardware, providing training, and completing projects for clients involving PIC and ARM microcontrollers. His areas of interest include embedded systems, digital electronics, VLSI, and programming languages like C, C++, and Java.
April 2020: Top Read Articles in VLSI design & Communication SystemsVLSICS Design
International Journal of VLSI design & Communication Systems (VLSICS) is a bi monthly open access peer-reviewed journal that publishes articles which contribute new results in all areas of VLSI Design & Communications. The goal of this journal is to bring together researchers and practitioners from academia and industry to focus on advanced VLSI Design & communication concepts and establishing new collaborations in these areas.
consumers use a smartphone device to display the media contents for work and entertainment purposes, as well as watching online video. Online video streaming is the main cause that consume smartphone’s energy quickly. To overcome this problem, smartphone’s energy management is crucial. Thus, a hybrid energy-aware profiler is proposed. Basically, a profiler will monitor and manage the energy consumption in the smartphone devices. The hybrid energy-aware profiler will set up a protocol preference of both the user and the device. Then, it will estimates the energy consumption in smartphone. However, saving energy alone can contribute to the Quality of Experience (QoE) neglection, thus the proposed solution takes into account the client QoE. Even though there are several existing energy-aware profilers that have been developed to manage energy use in smartphones however, most energy-aware profilers does not consider QoE at the same time. The proposed solution consider both, the performance of the hybrid energy-aware profiler is compared with the baseline energy models against a variation of content adaptation according to the pre-defined variables. Three types of variables were determined; resolution, frame rate and energy consumption in smartphone devices. In this area, QoE subjective methods based on MOS (Mean Opinion Score) are the most commonly used approaches for defining and quantifying real video quality. Nevertheless, although these approaches have been established to consistently quantify users’ amounts of approval, they do not adequately realize which the criteria of video attribute that important are. In this paper, we conducted an experiment with a certain devices to measures user’s QoE and energy usage of video attribute in smartphone devices. Our results demonstrate that the list of possible solution is a relevant and useful video attribute that satify the users.
IRJET- Online Compiler for Computer Languages with Security EditorIRJET Journal
This document describes a proposed online compiler system that allows users to write, compile, and debug programs for four computer languages (C, C++, Java, and Python) directly through a web browser or mobile application without needing to install separate compilers. The system would use cloud computing to reduce storage and memory requirements compared to local compilers. Programs would be compiled securely using MD5 encryption. Users could access their files and run test cases from any internet-connected device. The system aims to make programming practice and exams more convenient by removing installation burdens and allowing usage anywhere.
This document is the final year project report for a student who developed an attendance and access system. It includes sections on acknowledging contributors, describing the project objectives and scope, discussing the software and hardware used including LABView, a fingerprint reader, camera and card scanner. It also covers setting up a database in Microsoft Access to store student and attendance data. The system reads student cards and captures their photo and fingerprint, updates the database with time in/out and can generate web reports.
IEEE Final Year Projects 2011-2012 :: Elysium Technologies Pvt Ltd::Paralleld...sunda2011
IEEE Final Year Projects 2011-2012 :: Elysium Technologies Pvt Ltd
IEEE projects, final year projects, students project, be project, engineering projects, academic project, project center in madurai, trichy, chennai, kollam, coimbatore
The document provides information about an industrial training report submitted by Rajesh Kumar to fulfill the requirements for a Bachelor of Technology degree. It includes a declaration by Rajesh Kumar, an acknowledgement of those who provided guidance and support, and an introduction to CSIO (Central Scientific Instruments Organisation) where the training took place. CSIO is described as a laboratory that works on research, design and development of scientific and industrial instruments across various fields.
The document discusses a proposed system for detecting ranking fraud for mobile apps. It begins by describing existing ranking fraud and some current detection systems. It then outlines the proposed system which first identifies "leading sessions" in an app's historical ranking data that indicate periods of popularity. It then detects fraud by analyzing ranking, rating, and review behaviors during these sessions using statistical tests. Finally, the proposed system aggregates all the evidence to evaluate sessions for fraud and was tested on real app store data.
The document describes a proposed system for proactive moderation and personalized fraud product detection on e-commerce websites. The system aims to (1) improve customer-seller relationships and engagement by providing trustworthy product recommendations, (2) increase website productivity and sales by simplifying access to trusted product information, and (3) make users aware of product trustworthiness through analysis of user feedback and fraud detection rules. The system collects product rating and complaint data, analyzes it using rule-based and machine learning techniques, and provides recommendations to flag untrusted products and sellers. It includes modules for customers, sellers, admins, complaint filing and fraud detection.
This document proposes a system to detect ranking fraud for mobile apps. It aims to address the challenges of detecting local anomalies rather than global anomalies, doing so at scale without manual labeling, and identifying implicit fraud patterns. The system first identifies active periods called "leading sessions" in apps' historical ranking data. It then analyzes three types of evidence - ranking, ratings, and reviews - using statistical tests to model apps' behaviors. An optimization method integrates the evidence for fraud detection evaluation. The approach was validated on real app data, showing effectiveness and scalability. The key advantages are addressing when fraud occurs and enabling automatic detection at scale.
The document proposes a ranking fraud detection system for mobile apps. It first defines "leading sessions" as periods of high popularity for an app based on its historical ranking data. It then identifies leading sessions by analyzing ranking thresholds and time gaps between sessions. The system detects ranking fraud by examining ranking, rating, and review evidence within leading sessions using statistical hypothesis tests. It models each evidence type and proposes an optimization method to integrate all evidence in evaluating sessions. The approach was evaluated on real app data and showed effectiveness in fraud detection.
DISCOVERY OF RANKING FRAUD FOR MOBILE APPS - IEEE PROJECTS IN PONDICHERRY,BUL...Nexgen Technology
Nexgen Technology Address:
Nexgen Technology
No :66,4th cross,Venkata nagar,
Near SBI ATM,
Puducherry.
Email Id: praveen@nexgenproject.com.
www.nexgenproject.com
Mobile: 9751442511,9791938249
Telephone: 0413-2211159.
NEXGEN TECHNOLOGY as an efficient Software Training Center located at Pondicherry with IT Training on IEEE Projects in Android,IEEE IT B.Tech Student Projects, Android Projects Training with Placements Pondicherry, IEEE projects in pondicherry, final IEEE Projects in Pondicherry , MCA, BTech, BCA Projects in Pondicherry, Bulk IEEE PROJECTS IN Pondicherry.So far we have reached almost all engineering colleges located in Pondicherry and around 90km
IRJET - Hand Gestures Recognition using Deep LearningIRJET Journal
This document discusses a proposed system to allow deaf or mute individuals to use voice-controlled digital assistants through hand gesture recognition. The system would use deep learning models to recognize hand gestures in real-time and convert them to text to query an assistant, and then convert the assistant's audio response to text for the user to read. This approach aims to provide an accessible alternative to audio-based assistants for those unable to use voice commands. The proposed system is designed to accurately recognize a series of gestures in real-time without requiring the user to wear any hardware.
Brochure of a two-day training program on Automotive Software Engineering Methodologies from 19th to 20th February 2010 organized by TIFAC-CORE in Automotive Infotronics @ VIT University, Vellore.
There is a Discount up to 50% on registration fee for VIT students who have done already any courses @ TIFAC-CORE
Virtual Classroom(Android Application for Accessing Server using Wi-Fi Services)IRJET Journal
This document describes a proposed Android application called Virtual Classroom that allows students to access educational videos and materials stored on a server using Wi-Fi. The application would allow students to stream video lectures, view presentations and documentation, and access other online educational resources without an internet connection by connecting to the server over a local Wi-Fi network. The proposed system aims to address limitations of existing online education platforms that require internet access. It also outlines the application's design, including user registration and authentication, displaying video lists by subject, and allowing teachers to manage materials on the server. The project aims to enhance access to education through a portable application that can retrieve online resources via Wi-Fi.
This document provides a summary of Abby Brown's technical experience including book reviews and editor roles, software patents submitted and issued, research projects and presentations conducted, and technical memberships. Key details include serving as technical editor for two books on Tibco software, submitting several patents around automated tools for services, metadata, and network alarms, presenting on topics such as cloud computing and SOA, and holding memberships in technical organizations like IEEE, The Open Group, and OASIS.
This document provides a faculty profile for Dr. S. Duraisamy, an Assistant Professor at Chikkanna Government Arts College in Tirupur, Tamil Nadu. It includes his contact details, academic qualifications, teaching experience of 23 years at both undergraduate and postgraduate levels, areas of research interest, research guidance provided to 18 Ph.D. students, 94 research publications, participation and organization of various national conferences and seminars, and membership in professional organizations.
This document contains the resume of Aditya Gupta. It outlines his education history including a current PhD in smart water systems at VNIT in Nagpur, India. It also lists his past masters and bachelors degrees as well as projects related to topics like biometric recognition, underwater robots, and more. His research interests and skills in areas like water leakage detection, optimization modeling, and hardware/software tools are mentioned. The resume concludes with his teaching experience and involvement in social organizations.
This document summarizes a research paper on an airport management system using face recognition. It discusses:
1) Developing a face recognition-based attendance tracking system to improve efficiency over previous systems.
2) Creating face databases to train the recognition algorithm to identify passengers during check-in.
3) The system automatically records attendance by identifying faces, displaying passenger IDs and names, and saving records.
Sweenkrishna is seeking a position in embedded systems. He has a Bachelor's degree in Electrical and Electronics Engineering and has worked as an embedded developer for over 2 years. His experience includes designing and developing embedded software and hardware, providing training, and completing projects for clients involving PIC and ARM microcontrollers. His areas of interest include embedded systems, digital electronics, VLSI, and programming languages like C, C++, and Java.
April 2020: Top Read Articles in VLSI design & Communication SystemsVLSICS Design
International Journal of VLSI design & Communication Systems (VLSICS) is a bi monthly open access peer-reviewed journal that publishes articles which contribute new results in all areas of VLSI Design & Communications. The goal of this journal is to bring together researchers and practitioners from academia and industry to focus on advanced VLSI Design & communication concepts and establishing new collaborations in these areas.
consumers use a smartphone device to display the media contents for work and entertainment purposes, as well as watching online video. Online video streaming is the main cause that consume smartphone’s energy quickly. To overcome this problem, smartphone’s energy management is crucial. Thus, a hybrid energy-aware profiler is proposed. Basically, a profiler will monitor and manage the energy consumption in the smartphone devices. The hybrid energy-aware profiler will set up a protocol preference of both the user and the device. Then, it will estimates the energy consumption in smartphone. However, saving energy alone can contribute to the Quality of Experience (QoE) neglection, thus the proposed solution takes into account the client QoE. Even though there are several existing energy-aware profilers that have been developed to manage energy use in smartphones however, most energy-aware profilers does not consider QoE at the same time. The proposed solution consider both, the performance of the hybrid energy-aware profiler is compared with the baseline energy models against a variation of content adaptation according to the pre-defined variables. Three types of variables were determined; resolution, frame rate and energy consumption in smartphone devices. In this area, QoE subjective methods based on MOS (Mean Opinion Score) are the most commonly used approaches for defining and quantifying real video quality. Nevertheless, although these approaches have been established to consistently quantify users’ amounts of approval, they do not adequately realize which the criteria of video attribute that important are. In this paper, we conducted an experiment with a certain devices to measures user’s QoE and energy usage of video attribute in smartphone devices. Our results demonstrate that the list of possible solution is a relevant and useful video attribute that satify the users.
IRJET- Online Compiler for Computer Languages with Security EditorIRJET Journal
This document describes a proposed online compiler system that allows users to write, compile, and debug programs for four computer languages (C, C++, Java, and Python) directly through a web browser or mobile application without needing to install separate compilers. The system would use cloud computing to reduce storage and memory requirements compared to local compilers. Programs would be compiled securely using MD5 encryption. Users could access their files and run test cases from any internet-connected device. The system aims to make programming practice and exams more convenient by removing installation burdens and allowing usage anywhere.
This document is the final year project report for a student who developed an attendance and access system. It includes sections on acknowledging contributors, describing the project objectives and scope, discussing the software and hardware used including LABView, a fingerprint reader, camera and card scanner. It also covers setting up a database in Microsoft Access to store student and attendance data. The system reads student cards and captures their photo and fingerprint, updates the database with time in/out and can generate web reports.
IEEE Final Year Projects 2011-2012 :: Elysium Technologies Pvt Ltd::Paralleld...sunda2011
IEEE Final Year Projects 2011-2012 :: Elysium Technologies Pvt Ltd
IEEE projects, final year projects, students project, be project, engineering projects, academic project, project center in madurai, trichy, chennai, kollam, coimbatore
The document provides information about an industrial training report submitted by Rajesh Kumar to fulfill the requirements for a Bachelor of Technology degree. It includes a declaration by Rajesh Kumar, an acknowledgement of those who provided guidance and support, and an introduction to CSIO (Central Scientific Instruments Organisation) where the training took place. CSIO is described as a laboratory that works on research, design and development of scientific and industrial instruments across various fields.
The document discusses a proposed system for detecting ranking fraud for mobile apps. It begins by describing existing ranking fraud and some current detection systems. It then outlines the proposed system which first identifies "leading sessions" in an app's historical ranking data that indicate periods of popularity. It then detects fraud by analyzing ranking, rating, and review behaviors during these sessions using statistical tests. Finally, the proposed system aggregates all the evidence to evaluate sessions for fraud and was tested on real app store data.
The document describes a proposed system for proactive moderation and personalized fraud product detection on e-commerce websites. The system aims to (1) improve customer-seller relationships and engagement by providing trustworthy product recommendations, (2) increase website productivity and sales by simplifying access to trusted product information, and (3) make users aware of product trustworthiness through analysis of user feedback and fraud detection rules. The system collects product rating and complaint data, analyzes it using rule-based and machine learning techniques, and provides recommendations to flag untrusted products and sellers. It includes modules for customers, sellers, admins, complaint filing and fraud detection.
This document proposes a system to detect ranking fraud for mobile apps. It aims to address the challenges of detecting local anomalies rather than global anomalies, doing so at scale without manual labeling, and identifying implicit fraud patterns. The system first identifies active periods called "leading sessions" in apps' historical ranking data. It then analyzes three types of evidence - ranking, ratings, and reviews - using statistical tests to model apps' behaviors. An optimization method integrates the evidence for fraud detection evaluation. The approach was validated on real app data, showing effectiveness and scalability. The key advantages are addressing when fraud occurs and enabling automatic detection at scale.
The document proposes a ranking fraud detection system for mobile apps. It first defines "leading sessions" as periods of high popularity for an app based on its historical ranking data. It then identifies leading sessions by analyzing ranking thresholds and time gaps between sessions. The system detects ranking fraud by examining ranking, rating, and review evidence within leading sessions using statistical hypothesis tests. It models each evidence type and proposes an optimization method to integrate all evidence in evaluating sessions. The approach was evaluated on real app data and showed effectiveness in fraud detection.
DISCOVERY OF RANKING FRAUD FOR MOBILE APPS - IEEE PROJECTS IN PONDICHERRY,BUL...Nexgen Technology
Nexgen Technology Address:
Nexgen Technology
No :66,4th cross,Venkata nagar,
Near SBI ATM,
Puducherry.
Email Id: praveen@nexgenproject.com.
www.nexgenproject.com
Mobile: 9751442511,9791938249
Telephone: 0413-2211159.
NEXGEN TECHNOLOGY as an efficient Software Training Center located at Pondicherry with IT Training on IEEE Projects in Android,IEEE IT B.Tech Student Projects, Android Projects Training with Placements Pondicherry, IEEE projects in pondicherry, final IEEE Projects in Pondicherry , MCA, BTech, BCA Projects in Pondicherry, Bulk IEEE PROJECTS IN Pondicherry.So far we have reached almost all engineering colleges located in Pondicherry and around 90km
This document discusses fraud detection in online auctions. It begins with an introduction that describes how online auctions work and the types of fraud that can occur, such as sellers not delivering purchased items or posting fake listings. It then outlines the hardware and software requirements for developing a fraud detection system, including using Java, Tomcat web server, and MySQL database. The document provides literature reviews on these technologies and describes the existing system, proposed improved system, and system design modules.
A survey on identification of ranking fraud for mobile applicationseSAT Journals
This document summarizes research on identifying ranking fraud for mobile applications. It proposes a framework that mines leading sessions of mobile apps to detect ranking fraud more accurately. It examines three types of evidence - ranking-based, rating-based, and review-based - to analyze app ranking, rating, and review patterns using statistical tests. An aggregation method is proposed to combine all the evidence for fraud detection. The document also reviews related work on web ranking spam detection, online review spam detection, mobile app recommendation, internet water armies, and automatically detecting ranking fraud. Latent Dirichlet Allocation is also discussed as a technique for topic modeling.
Fraud can take many forms but generally involves deception for financial or personal gain. There are three main types of fraud: corruption, asset misappropriation, and financial statement fraud. Fraud is most often committed due to pressure, opportunity, and the ability to rationalize one's actions. Companies can help prevent fraud by breaking this fraud triangle through strong internal controls, monitoring, and creating a culture of integrity and accountability.
Data acquisition and storage in Wireless Sensor NetworkRutvik Pensionwar
1. Introduce to Wireless Sensor Network and various data retrieval techniques.
2. Present different algorithms used in Wireless Sensor Network to achieve efficiency and manage power effectively.
User Activity Analysis Using Accelerometer and Cloud ComputingMarwan Issa
This dissertation focuses on analyzing the accelerometer data collected from built-in sensors in smartphones using the advanced technology of cloud computing for processing and analyzing.
Key aggregate cryptosystem for scalable data sharing in cloud storage using pairng based cryptography. We used JPBC tool to implement Key Aggregate cryptosystem.
Die Präsentation gibt einen kurzen Überblick über die neuen Oracle Text Features in Oracle Database 12c. Die Beispiele basieren auf dem OTN Sample Code (siehe Präsentation) bzw. auf den Oracle Text Böog Einträgen und illustrieren die neuen Features.
Discovery of ranking fraud for mobile appsBoopathi Kumar
1. The document proposes a ranking fraud detection system for mobile apps. It aims to detect fraudulent activities aimed at artificially boosting an app's popularity ranking.
2. The system first identifies periods of high activity or "leading sessions" for each app. It then analyzes ranking, rating, and review data to extract evidence of anomalies during these sessions using statistical tests.
3. An optimization-based method is used to aggregate all evidence to evaluate the credibility of leading sessions and detect ranking fraud. The system is evaluated on real app data and shown to effectively detect fraud while scaling to the large number of apps.
This document discusses how to build a small distributed search engine using open source software. It describes the main subsystems of a search engine, including a page database, crawler, parser, indexer and link graph database. It then introduces Apache Hadoop and Apache Lucene as open source tools that can be used to build each subsystem in a distributed manner. Hadoop provides HDFS for distributed storage and MapReduce for distributed processing, while Lucene handles full-text indexing and search. The document outlines how Lucene indexes and searches document contents, and how its components can be integrated with HDFS to build a distributed search index and query system.
Project center in trichy @ieee 2016 17 titles for java and dotnetElakkiya Triplen
IEEE Final Year Projects for M.E/M.TECH,B.E-CSE/IT from any domain & Technologies.For more detail contact:-DreamWeb TechnoSolutions@7200021403/04, 73/5 3rd floor,Kamatchi cmplx,Thillai nagar 1st cross,Trichy.
This document is a project report submitted by four students - Apeksha A. Jain, Rohit M. Kulkarni, Soham C. Wadekar, and Kedar D. Wagholikar - for their Bachelor of Engineering degree. The report details a project on dynamic routing of packets in wireless sensor networks conducted under the guidance of Prof. G.R. Pathak. The project aims to implement clustering in a wireless sensor network and analyze the effects of increasing cluster size on cluster head energy. It further aims to implement an energy efficient dynamic algorithm to re-elect cluster heads periodically in order to save energy. The report presents the background, problem statement, project planning, analysis, design,
key aggregate cryptosystem for scalable data sharing in cloudSravan Narra
The document proposes a new key-aggregate cryptosystem (KAC) for secure and efficient data sharing in cloud storage. KAC allows encrypting data under a public key and identifier, and extracting an aggregate secret key from a master secret key. The aggregate key is compact yet provides decryption power for any subset of ciphertexts. This allows flexible delegation of decryption rights by sending a constant-sized aggregate key for sharing encrypted data on cloud storage. Formal security analysis is provided for the cryptosystem in the standard model.
This document proposes a system to detect ranking fraud for mobile apps. It investigates three types of evidence: ranking, rating, and review behaviors. The existing systems for related problems like web spam and review spam detection are insufficient for detecting ranking fraud in apps. The proposed system accurately locates fraudulent ranking periods in apps, and uses an optimization method to aggregate all evidence types to identify ranking fraud. It was evaluated on real app data and performed effectively at scale.
Implementing Saas as Cloud controllers using Mobile Agent based technology wi...Sunil Rajput
Setup your own cloud for Software as a Service (SaaS) over the existing LAN in your laboratory. In this assignment you have to write your own code for cloud controllers using open source technologies without HDFS. Implementing the basic operations may be like uploading and downloading files on/from cloud in encrypted form.
The document is a project report on using open hardware systems for surveillance. It was submitted by four students for their Bachelor of Technology degree. The report discusses conducting preliminary tests on the Raspberry Pi and Cubie Truck open hardware devices and their suitability for use in surveillance cameras. It also evaluates integrating surveillance camera feeds with an open source ERP (Enterprise Resource Planning) system to provide a low-cost surveillance solution using open hardware.
The document discusses improving security for mobile banking by using steganography to hide transaction details in images, with the goal of addressing challenges with directly sending sensitive information over networks. It was written by students to fulfill requirements for a bachelor's degree in computer science and engineering. The introduction provides background on the growing importance of mobile content delivery and the special requirements of securing data on mobile devices with limited capabilities.
The document summarizes a technical seminar report submitted by Rajendra Dangwal on virtual private networks. The report includes an introduction to VPNs, descriptions of VPN topology and types, components of VPNs including security protocols, and conclusions on the future of VPN technology. It was submitted in partial fulfillment of a Bachelor of Engineering degree and approved by the computer science department.
IRJET- Internet Video Streaming Service for Social NetworkIRJET Journal
This document proposes an internet video streaming service for social networks that uses dynamic adaptive streaming over HTTP (DASH) and Markov decision processes (MDPs) to optimize quality of service for video streaming on mobile devices. It develops an MDP model to choose the most favorable video streaming method across multiple wireless networks in order to improve startup latency, playback fluency, average playback quality, playback smoothness, and wireless data cost. The system was tested using an Android emulator and scalable video coding to provide an efficient, adaptive streaming service for various mobile devices and dynamic network environments.
IRJET- Internet Video Streaming Service for Social NetworkIRJET Journal
This document presents a system for internet video streaming service for social networks. It aims to improve quality of service for video streaming on mobile devices by developing an adaptive streaming method using a Markov Decision Process. The system uses Dynamic Adaptive Streaming over HTTP (DASH) to store multiple compressed video versions at different resolutions and qualities in segments. It formulates the multi-link video streaming as a reinforcement learning task and models it as a finite state Markov Decision Process. An algorithm is proposed to find near-optimal solutions in real-time to select the best video quality based on factors like bandwidth, buffer occupancy, and device resolution to improve streaming performance metrics while saving network bandwidth and costs. The system was tested using an Android emulator and Scalable Video
Iaetsd adaptive and well-organized mobile video streaming publicIaetsd Iaetsd
The document proposes a new mobile video streaming framework called AMES-Cloud that leverages cloud computing. It has two parts: Adaptive Mobile Video Streaming (AMoV) and Efficient Communal Video Sharing (ESoV). AMoV allows each user's private agent to adaptively adjust their streaming flow based on link quality feedback. ESoV monitors social networks between users, and their agents prefetch video content. The framework aims to provide high quality mobile video streaming services by adapting to varying network conditions and enabling social video sharing through cloud resources.
1. What are the advantages of cloud computing?
2. With an example, explain how software-as-a-service is different from platform-as-a-service?
3. What is an SLA? Why it is important in cloud computing?
4. Differentiate between scalability and elasticity.
5. What is an Amazon Machine Image?
6. What are the differences between modular and containerized data centers?
7. What is the relationship between IoT and cloud computing?
8. What is a sensor-cloud? Why do we use sensor-cloud?
9. Differentiate among different cloud deployment models.
A novel adaptive schema to facilitates playback switching technique for video...IJECEIAES
The services of the video on demand (VoD) are currently based on the developments of the technology of the digital video and the network’s high speed. The files of the video are retrieved from many viewers according to the permission, which is given by VoD services. The remote VoD servers conduct this access. A server permits the user to choose videos anywhere/ anytime in order to enjoy a unified control of the video playback. In this paper, a novel adaptive method is produced in order to deliver various facilities of the VoD to all devices that are moving within several networks. This process is performed via mobility modules within the produced method since it applies a seamless playback technique for retrieving the facilities of the VoD through environments of heterogeneous networks. The performance of the simulation is tested for checking clients’ movements through different networks with different sizes and speeds, which are buffered in the storage. It is found to be proven from the results that the handoff latency has various types of rapidity. The method applies smooth connections and delivers various facilities of the VoD. Meantime, the mobile device transfers through different networks. This implies that the system transports video segments easily without encountering any notable effects.
This document is a seminar report submitted by Suraj Kumar Yadava on Li-Fi technology under the guidance of Shobhit Kumar. Li-Fi is a visible light communication technology developed by a team at the University of Edinburgh including Dr. Gordon Povey and Prof. Harald Haas. It uses white LED light bulbs, which can vary their output at extremely high speeds, unseen by the human eye, to transmit data wirelessly. The report discusses the genesis of Li-Fi, its working principles, applications, and concludes that it is an emerging wireless communication technology.
QoE-enabled big video streaming for large-scale heterogeneous clients and net...redpel dot com
This document summarizes a research paper on providing quality of experience (QoE)-enabled video streaming for heterogeneous clients and networks in smart cities. It discusses the growth of video traffic and challenges in ensuring high QoE across different devices. The paper reviews video broadcasting technologies, coding methods for scalability and flexibility, and presents a paradigm for QoE-mapped joint coding and cross-layer transmission to dynamically adapt to different devices and networks. It evaluates system performance in terms of broadcasting efficiency and discusses open areas for future research.
Video streaming over Ad hoc on-demand distance vector routing protocoljournalBEEI
Video streaming is content sent in compressed form over the netwoks and viwed the users progressively. The transmission of video with the end goal that it can be prepared as consistent and nonstop stream. The point is that to give client support to client at anyplace and at whatever time. Mobile Ad hoc Networks (MANETs) are considered an attractive nertwork for information transmission in many applications where the customer programme can begin showing the information before the whole record has been transmitted.
Ad hoc On-demand Distance Vector (AODV) protocol is considered as one of the most important routing protocols in MANET. However, routing protocols assume a crucial part in transmission of information over the network. This paper investigates the performance of AODV Routing Protocol under video traffic over PHY IEEE 802.11g. The protocol model was developed in OPNET. Different outcomes from simulation based models are analyzed and appropriate reasons are also discussed. A different scenarios of video streaming were used. The metric in terms of throughput, end to end delay, packet delivery ratio and routing overhead were measured.
A comparision with GRP and GRP are also reported.
This document discusses the development of a video conferencing system using WebRTC. WebRTC allows real-time audio and video transmission between connected devices in a web browser without plugins. The system was created using Node.js as the web server and for signaling. The system allows users to create conference rooms and have real-time voice and video calls between multiple users. WebRTC provides APIs that allow applications to exchange video and audio streams in real-time directly in the browser. The system provides a platform for users to share their screens, chat, and record video conferences in a browser-based system that is platform and device agnostic.
Chimalamarri Swapnik is seeking a position in applications or firmware engineering. He has a Master's degree in integrated circuit design from Nanyang Technological University and Technical University of Munich, and a Bachelor's in electronics and communications from Jawaharlal Nehru Technological University. His experience includes firmware development for microcontrollers and test equipment using Python at Silicon Laboratories.
SECURITY IMPLEMENTATION IN MEDIA STREAMING APPLICATIONS USING OPEN NETWORK AD...Journal For Research
Media has been a very important medium for entertainment and communications and the captured media was transmitted in analog form. Media providers do not want their end users to store and duplicate the streamed media because the end user can freely distribute the streamed media without any control from the source. Hence while dealing with media streaming, replay protection and integrity protection are the most important factors. The main aim of this paper is to implement the concept of WebRTC to stream the media between the participating end points which is a powerful tool used to incorporate RTC capabilities into browsers and mobile applications. The aim is to develop a secure media stream from an end point that flows through the Open Network Adapter to the Avaya Media Server (AMS) and is hosted by an application on the Engagement Development Platform. The Open Network Adapter with Avaya Fabric Attach is capable of securing the required flow.
Real Time Head Generation for Video ConferencingIRJET Journal
This document proposes a real-time video synthesis model for video conferencing that reconstructs video at the receiver end to maintain a steady experience. It extracts and retargets motion from sender video frame by frame and synthesizes video on the receiver end using the first image and motion keypoints. This allows it to transfer facial expressions, head poses, and eye movements between videos using less bandwidth than standard H.264 video. The model uses WebRTC for peer-to-peer connections and a first-order motion model to extract and apply motion from one video to another in real-time for live video conferencing.
Video streaming using wireless multi hop in android phonesIAEME Publication
This document summarizes a research paper on implementing real-time video streaming over multiple wireless hops between Android devices. It proposes a wireless multi-hop video streaming application that allows users to capture live video on their Android devices and share it with nearby users over an ad-hoc wireless mesh network without internet. The application is broken down into a mobile client and routing layer. It implements H.264 video encoding and decoding to compress and transmit video streams over the network using Real-Time Streaming Protocol and Real-Time Transport Protocol to establish connections and control streaming between devices. The paper evaluates the application's performance in various experimental scenarios testing multi-hop video streaming feasibility on Android phones.
The rapid growth that has taken place in Computer Vision has been instrumental in driving the advancement of Image processing techniques and drawing inferences from them. Combined with the enormous capabilities that Deep Neural networks bring to the table, computers can be efficiently trained to automate the tasks and yield accurate and robust results quickly thus optimizing the process. Technological growth has enabled us to bring such computationally intensive tasks to lighter and lower-end mobile devices thus opening up a wide range of possibilities. WebRTC-the open-source web standard enables us to send multimedia-based data from peer to peer paving the way for Real-time Communication over the Web. With this project, we aim to build on one such opportunity that can enable us to perform custom object detection through an android based application installed on our mobile phones. Therefore, our problem statement is to be able to capture real-time feeds, perform custom object detection, generate inference results, and appropriately send intruder alerts when needed. To implement this, we propose a mobile-based over-the-cloud solution that can capitalize on the enormous and encouraging features of the YOLO algorithm and incorporate the functionalities of OpenCV’s DNN module for providing us with fast and correct inferences. Coupled with a good and intuitive UI, we can ensure ease of use of our application.
The document proposes a real-time mobile surveillance system using WebRTC. It utilizes computer vision techniques like YOLO for object detection on live video feeds captured by an Android application. The feeds are sent to a NodeJS server and then to a Flask server using REST APIs where OpenCV's DNN module performs inference. Detected objects and alerts are then sent back to the Android device. The system aims to provide low-latency, remote surveillance capabilities using mobile devices and over-the-cloud solutions.
Video transmission over wireless networks is considered the most interesting application in our daily life nowadays. As
mobile data rates continue to increase and more people rely on wireless transmission, the amount of video transmitted over at least one
wireless hop will likely continue to increase. This kind of application needs large bandwidth, efficient routing protocols, and content
delivery methods to provide smooth video playback to the receivers. Current generation wireless networks are likely to operate on
internet technology combined with various access technologies. Achieving effective bandwidth aggregation in wireless environments
raises several challenges related to deployment, link heterogeneity, Network congestion, network fluctuation, and energy consumption.
In this work, an overview of technical challenges of over wireless networks is presented. A survey of wireless networks in recent video
transmission schemes is introduced. Demonstration results of few scenarios are showed.
1. A FRAMEWORK OF MOBILE VIDEO STREAMING AND
SECURE VIDEO SHARING IN THE CLOUD
A Project report submitted in partial fulfilment of the requirements for the
award of the Degree of Bachelor of Technology
in
Computer Science & Engineering
By
C.ANNAPURNA (11011M2211)
P.KATHYAYANI REDDY (11011M2202)
T.SAI PRIYA (11011M2208)
Under the guidance of
Mrs.E.Hemalatha
Assistant Professor
Department of Computer Science and Engineering,
Jawaharlal Nehru Technological University College of Engineering,
Kukatpally,Hyderabad-500 085.
2014
2. ii
Department of Computer Science and Engineering,
Jawaharlal Nehru Technological University College of Engineering,
Kukatpally, Hyderabad-500 085.
DECLARATION BY THE CANDIDATE
We, C.Annapurna (11011M2211), P.Kathyayani Reddy (11011M2202),
T.SaiPriya(11011M2208) hereby declare that the project report entitled “A Framework of
Mobile Video Streaming and Secure Video Sharing in the Cloud”, carried out by us
under the guidance ofE.Hemalatha, is submitted in partial fulfilment of the requirements for
the award of the degree of Bachelor of Technology in Computer Science.
The results embodied in this project report have not been submitted to any other
university or institute for the award of any other degree or diploma.
C. Annapurna (11011M2211)
P.Kathyayani Reddy (11011M2202)
T.Sai Priya(11011M2208)
3. iii
Department of Computer Science and Engineering,
Jawaharlal Nehru Technological University College of Engineering,
Kukatpally, Hyderabad-500 085.
CERTIFICATE BY THE SUPERVISOR
This is to certify that the project report entitled “A Framework of Mobile Video Streaming
and Secure Video Sharing in the Cloud”, being submitted by C.Annapurna
(11011M2211), P.Kathyayani Reddy (11011M2202), T.SaiPriya (11011M2208)in partial
fulfillment of the requirements for the award of the degree of Bachelor of Technology in
Computer Science & Engineering, is a record of bonafide work carried out by them. The
results embodied in this project report have not been submitted to any other University or
Institute for the award of any other degree or diploma.
Mrs.E.Hemalatha,
Assistant Professor,
Department of Computer Science &Engineering,
JNTUH College of Engineering Hyderabad.
Date:
4. iv
Department of Computer Science and Engineering,
Jawaharlal Nehru Technological University College of Engineering,
Kukatpally, Hyderabad-500 085.
CERTIFICATE BY THE HEAD OF THE DEPARTMENT
This is to certify that the project report entitled “A Framework of Mobile Video Streaming
and Secure Video Sharing in the Cloud”, being submitted by C. Annapurna
(10011M2211) ,P. Kathyayani Reddy (10011M2202), T.Saipriya (10011M2208)in partial
fulfillment of the requirements for the award of the degree of Bachelor of Technology in
Computer Science & Engineering, is a record of bonafide work carried out by them.
Dr. V. Kamakshi Prasad,
Professor & Head of the Department,
Department of Computer Science & Engineering,
JNTUH College of Engineering Hyderabad.
Date:
5. v
Acknowledgements
We wish to extend our sincere thanks to our guide Mrs.E.Hemalatha,
Assistant Professor, Department of Computer Science and Engineering for being a
driving force all through the way. The project would not be so smooth and so
interesting without his encouragement.
We wish to express our gratitude to Dr. V. Kamakshi Prasad,Professor&
Head, Department of Computer Science and Engineering, for providing necessary
computing facilities. We are indebted to the Department of Computer Science &
Engineering, JNTUH for providing us with all the required facility to carry our work
in a congenial environment.
We extend our gratitude to the CSE Department staff for providing the
needful time to work whenever requested.
Above all, we are grateful to our parents and friends for their patience and
continuous supply of inspirations and suggestions for our ever-growing performance.
Last but not the least; we thank the Almighty for making us a part of the world.
C. Annapurna (11011M2211)
P.Kathyayani Reddy (11011M2202)
T.Sai Priya(11011M2208)
6. vi
Abstract
Over the past decade, the number of people using mobile devices is increasing rapidly. This
dependency is resulting in a shift of large number of applications and services to the mobile
platform. In particular, video streaming services over mobile networks have become
prevalent over the past few years. Mobile applications provide convenient, fast and one-touch
accessibility to the users. A recent study shows that 85% of the consumers favor apps over
mobile websites.
Cloud computing promises lower costs, rapid scaling, easier maintenance, and service
availability anywhere and anytime. A model of private cloud provides for greater control and
privacy with accessibility only to specified users or an organization.
But, one of the major issue and a key challenge in the cloud computing platform is regarding
how to ensure and build confidence that the cloud can handle user data securely. On the other
hand, the mobile platform deals with the issue of scalability of the content of mobile
applications over a wide spectrum of mobile devices.
The proposal is to develop a mobile video streaming framework where only an authorized
administrator manages uploading, modifying and deleting the videos that are securely stored
in the private cloud (VC) using RSA algorithm. It utilizes the cloud computing technology to
construct private agents (sub VC) for each mobile user to try and offer video streaming
functionality. It is shown that the private agents in the clouds can effectively provide for the
video streaming and perform video sharing based on the network analysis over mobile
platforms.
7. vii
List of Figures
Description Page
FIG5.2.1: FLOW CHART DIAGRAM FORTHE SYSTEM........................................................................................................19
FIG5.3.1: USE CASE DIAGRAM FOR THE SYSTEM..............................................................................................................21
FIG5.3.2: USE CASE DIAGRAM FORTHE SYSTEM............................................................................................................22
FIG5.4.1: CLASS DIAGRAM FOR THE SYSTEM....................................................................................................................24
FIG5.5.1: SEQUENCE DIAGRAM FORTHE SYSTEM.............................................................................................................26
FIG5.6.1: ACTIVITY DIAGRAM FOR THE SYSTEM...............................................................................................................28
FIG8.1: ADMIN LOGIN PAGE ..............................................................................................................................................46
FIG8.2: ADMIN WELCOMEPAGE........................................................................................................................................47
FIG8.3: ADMIN VIEW ALL VIDEOSPAGE............................................................................................................................47
FIG8.4: ADMIN VIEW USER DETAILS PAGE........................................................................................................................48
FIG8.5: ADMIN VIEW COMMENTSPAGE............................................................................................................................48
FIG8.6: ADMIN/DATA OWNER FILE WINDOW....................................................................................................................49
FIG8.7: CLOUD SERVER WINDOW ......................................................................................................................................50
FIG8.8: CENTRAL CONTROLLER VIDEO FILE DATAWINDOW..........................................................................................51
FIG8.9: CENTRAL CONTROLLER VIEW MODIFIED FILESWINDOW .................................................................................51
FIG8.10: MODIFIED VIDEO FILEWINDOW...........................................................................................................................52
FIG8.11: MOBILE USER LOGINTO APP.................................................................................................................................53
FIG8.12: MOBILE USER REGISTER TO APP...........................................................................................................................54
FIG8.13: MOBILE USER PLAY VIDEO....................................................................................................................................55
8. viii
List of Tables
Description Page
TABLE6.7.1: ADMIN..........................................................................................................................................................29
TABLE6.7.2: LOGIN ............................................................................................................................................................29
TABLE6.7.3: DATAOWNER................................................................................................................................................29
TABLE6.7.4: CSP FILES.....................................................................................................................................................30
TABLE6.7.5: VIDEOS..........................................................................................................................................................30
TABLE6.7.6: COMMENTS...................................................................................................................................................30
TABLE6.7.7: TPA FILES.....................................................................................................................................................30
TABLE6.7.8: MODIFIEDFILES............................................................................................................................................30
9. ix
Contents
Abstract
List of Figures
List of Tables
1. Introduction 1
1.1 An overview of mobile video streaming 1
1.2 An overview of secure video sharing 2
1.3 An overview of cloud computing 3
1.4 An overview of mobile applications 6
1.5 Problem Definition 7
2. Literature Survey 9
2.1 Existing System 9
2.2 Implemented System 9
3. Requirements Analysis 11
3.1 Requirements Specification 11
3.2 Minimum Software Requirements 12
3.3 Minimum Hardware Requirements 13
4. Software Requirements Specification 14
4.1 Functional Requirements 15
4.2 Non-Functional Requirements 15
5. Software Design 17
5.1 Introduction 17
5.2 Flow Chart Diagram 17
5.3 Use Case Diagram 20
5.4 Class Diagram 23
5.5 Sequence Diagram 25
5.6 Activity Diagram 27
10. x
5.7 Data Dictionary 29
6. Implementation 31
6.1 Technologies Used 31
6.2 Implementation Modules 36
7. Testing 41
8. Output Screens 46
9. Conclusion 56
9.1 Summary 56
9.2 Scope for future extension 56
Bibliography 57
11. Page 1 of 67
1. Introduction
This section provides a brief overview about cloud computing and the various services
offered by cloud storage.
1.1. An Overview of Mobile Video Streaming
Streaming media is multimedia that is constantly received by and presented to an end-
user while being delivered by a provider. The verb "to stream" refers to the process of
delivering media in this manner; the term refers to the delivery method of the medium rather
than the medium itself.
A client media player can begin playing the data (such as a movie) before the entire file has
been transmitted. Distinguishing delivery method from the media distributed applies
specifically to telecommunications networks, as most of the delivery systems are either
inherently streaming (e.g., radio, television) or inherently non-streaming (e.g., books, video
cassettes, audio CDs).The term "streaming" was first used in the early 1990s as a better
description for video on demand on IP networks. A broadband speed of 2.5 Mbit/s or more is
recommended for streaming movies. The audio stream is compressed using an audio codec
such as Mp3, Vorbis or AAC. The video stream is compressed using a video codec such
as H.264 or VP8. Encoded audio and video streams are assembled in a container bit stream
such as MP4, FLV, WebM, ASF or ISMA.MPEG-4 is a method of defining compression of
audio and visual (AV) digital data. It was introduced in late 1998 and designated
a standard for a group of audio and video coding formats and related technology agreed upon
by the Moving Picture Experts Group (MPEG).
Mobile video comes in several forms including 3GPP, MPEG-4, RTSP .The Android
platform provides libraries you can use to stream media files, such as remote videos,
presenting them for playback in your apps.
12. Page 2 of 67
1.2. An Overview of Secure Video Sharing
Video Share is an IP Multimedia System (IMS) enabled service for mobile networks
that allows users engaged in a circuit switch voice call to add a unidirectional video
streaming session over the packet network during the voice call. Any of the parties on the
voice call can initiate a video streaming session. There can be multiple video streaming
sessions during a voice call, and each of these streaming sessions can be initiated by any of
the parties on the voice call. The video source can either be the camera on the phone or a pre-
recorded video clip.
RSA is an algorithm used by modern computers to encrypt and decrypt messages. It is an
asymmetric cryptographic algorithm. Asymmetric means that there are two different keys.
This is also called public key cryptography, because one of them can be given to everyone.
The other key must be kept private. It is based on the fact that finding the factors of an
integer is hard (the factoring problem). RSA stands for Ron Rivest, AdiShamir and Leonard
Adleman, who first publicly described it in 1978. A user of RSA creates and then publishes
the product of two large prime numbers, along with an auxiliary value, as their public key.
He prime factors must be kept secret. Anyone can use the public key to encrypt a message,
but with currently published methods, if the public key is large enough, only someone with
knowledge of the prime factors can feasibly decode the message.
DSA is faster for signature generation but slower for validation, slower when encrypting but
faster when decrypting and security can be considered equivalent compared to an RSA key of
equal key length.
The security of the RSA algorithm is based on the fact that factorization of large integers is
known to be "difficult", whereas DSA security is based on the discrete logarithm problem.
Today the fastest known algorithm for factoring large integers is the General Number Field
Sieve, also the fastest algorithm to solve the discrete logarithm problem in finite fields
modulo a large prime p as specified for DSA. Now, if the security can be deemed as equal,
there would be a favour of the algorithm that is faster. It’s seen that DSA performs faster in
generating a signature but much slower when verifying a signature of the same key length.
13. Page 3 of 67
Verification is generally what you want to be faster if you deal e.g. with a signed document.
The signature is generated once - so it's fine if this takes a bit longer - but the document
signature may be verified much more often by end users.
Both do support some form of encryption method, RSA out of the box and DSA using an El
Gamal. DSA is generally faster in decryption but slower for encryption, with RSA it's the
other way round. Again you want decryption to be faster here because one encrypted
document might be decrypted many times. In commercial terms, RSA is clearly the winner,
commercial RSA certificates are much more widely deployed than DSA certificates.
1.3. An Overview of Cloud Computing
Cloud computing is a general term for anything that involves delivering hosted
services over the internet. These services are broadly divided into three categories:
Infrastructure-as-a-Service (IaaS), Platform-as-a-Service (PaaS) and Software-as-a-Service
(SaaS). The name cloud computing was inspired by the cloud symbol that is often used to
represent the internet in flowcharts and diagrams.
A cloud service has three distinct characteristics that differentiate it from traditional hosting.
It is sold on demand, typically by the minute or the hour; it is elastic, which means, a user
can have as much or as little of a service as they want at any given time; and the service is
fully managed by the provider (the consumer needs no more than a personal computer and
internet access). Significant innovations in virtualization and distributed computing, as well
as improved access to high-speed internet and affordable costs, have accelerated interest in
cloud computing.
Infrastructure-as-a-Service like Amazon Web Services provides virtual server (instance API)
to start, stop, access and configure their virtual servers and storage. In the enterprise, cloud
computing allows a company to pay for only as much capacity as is needed, and bring more
online as soon as required. Because this pay-per-use model resembles the way electricity, fuel
and water are consumed; it's sometimes referred to as utility computing.
14. Page 4 of 67
Platform-as-a-service in the cloud is defined as a set of software and product development
tools hosted on the provider's infrastructure. Developers create applications on the provider's
platform over the internet. PaaS providers may use APIs, website portals or gateway software
installed on the customer's computer. Force.com, (an outgrowth of Salesforce.com) and
Google Apps are examples of PaaS. Developers need to know that currently, there are not
standards for interoperability or data portability in the cloud. Some providers will not allow
software created by their customers to be moved off the provider's platform.
In the software-as-a-service cloud model, the vendor supplies the hardware infrastructure, the
software product and interacts with the user through a front-end portal. SaaS is a very broad
market. Services can be anything from Web-based email to inventory control and database
processing. Because the service provider hosts both the application and the data, the end user
is free to use the service from anywhere.
A cloud can be private or public. A public cloud sells services to anyone on the internet.
(Currently, Amazon Web Services is the largest public cloud provider.) A private cloud is a
proprietary network or a data center that supplies hosted services to a limited number of
people. When a service provider uses public cloud resources to create their private cloud, the
result is called a virtual private cloud. Private or public, the goal of cloud computing is to
provide easy, scalable access to computing resources and IT services.
Private Cloud
A private cloud a particular model of cloud computing that involves a distinct and
secure cloud based environment in which only the specified client can operate. As with other
cloud models, private clouds will provide computing power as a service within a virtualized
environment using an underlying pool of physical computing resource. However, under the
private cloud model, the cloud (the pool of resource) is only accessible by a single
organization providing that organization with greater control and privacy.
Private cloud services draw their resource from a distinct pool of physical computers but
15. Page 5 of 67
these may be hosted internally or externally and may be accessed across private leased lines
or secure encrypted connections via public networks.The private cloud model is closer to the
more traditional model of individual local access networks (LANs) used in the past by
enterprise but with the added advantages of virtualization.
The features and benefits of private clouds therefore are:
• Higher security and privacy: Public clouds services can implement a certain level of
security but private clouds - using techniques such as distinct pools of resources with
access restricted to connections made from behind one organization’s firewall, dedicated
leased lines and/or on-site internal hosting - can ensure that operations are kept out of the
reach of prying eyes.
• More control: As a private cloud is only accessible by a single organization, that
organization will have the ability to configure and manage it in line with their needs to
achieve a tailored network solution. However, this level of control removes some of the
economies of scale generated in public clouds by having centralized management of the
hardware.
• Cost and energy efficiency: Implementing a private cloud model can improve the
allocation of resources within an organization by ensuring that the availability of
resources to individual departments/business functions can directly and flexibly respond
to their demand. Therefore, although they are not as cost effective as a public cloud
services due to smaller economies of scale and increased management costs, they do
make more efficient use of the computing resource than traditional LANs as they
minimize the investment into unused capacity. Not only does this provide a cost saving
but it can reduce an organization’s carbon footprint too.
• Improved reliability: Even where resources (servers, networks etc.) are hosted
internally, the creation of virtualized operating environments means that the network is
more resilient to individual failures across the physical infrastructure. Virtual partitions
can, for example, pull their resource from the remaining unaffected servers. In addition,
where the cloud is hostedwith a third party, the organization can still benefit from the
physical security afforded to infrastructure hosted within data centers.
16. Page 6 of 67
1.4. An Overview of Mobile Applications
A mobile app is a computer program designed to run on smartphones, tablet
computers and other mobile devices. Apps are usually available through application
distribution platforms, which began appearing in 2008 and are typically operated by the
owner of the mobile operating system, such as the Apple App Store, Google Play, Windows
Phone Store, and BlackBerry App World. Some apps are free, while others must be
bought.Usually, when people hear “mobile app” they assume you mean native app. This is a
program that runs on a handheld device (phone, tablet, e-reader, iPod Touch, etc.) which has
a “smart” operating system which supports standalone software and can connect to the
internet via wireless fidelity or a wireless carrier network. Usually people download native
mobile apps from app stores such as the Apple app store or the Android Market.
A native app can only be “native” to one type of mobile operating system: iOS, Android,
BlackBerry, Symbian, Windows Phone, Web OS, etc. This is why an iPhone app works only
on iOS devices — so if you want to also make your app experience available to Android or
Blackberry users, you’ll need to develop and maintain a separate piece of software. That gets
complicated and expensive.
In contrast, a mobile web app is software that uses technologies such as Java Script
or HTML5 to provide interaction, navigation, or customization capabilities. These programs
run within a mobile device’s web browser. This means that they’re delivered wholly on the
fly, as needed, via the internet; they are not separate programs that get stored on the user’s
mobile device .Mobile web apps can be designed to run reasonably well via almost any smart
mobile web browser — from the full-featured browsers such as the ones available for
iPhones and Android phones, to the mid-range browsers such as you see on many
BlackBerry phones. “Feature phone” is the telecom industry term for non-
smartphones. According to ComScore ,73% of the mobile handsets in use in the US are
feature phones. And most of these phones can connect to the internet and browse the web.
17. Page 7 of 67
Developing apps for mobile devices requires considering the constraints and features of these
devices. Mobile devices run on battery and have less powerful processors than personal
computers and also have more features such as location detection and cameras. Developers
also have to consider a wide array of screen sizes, hardware specifications and configurations
because of intense competition in mobile software and changes within each of the platforms.
Mobile application development requires use of specialized integrated development
environments. Mobile apps are first tested within the development environment using
emulators and later subjected to field testing. Emulators provide an inexpensive way to test
applications on mobile phones to which developers may not have physical access.
As part of the development process, Mobile User Interface (UI) Design is also an essential in
the creation of mobile apps. Mobile UI considers constraints & contexts, screen, input and
mobility as outlines for design. The user is often the focus of interaction with their device,
and the interface entails components of both hardware and software. User input allows for
the users to manipulate a system, and device's output allows the system to indicate the effects
of the users' manipulation. Mobile UI design constraints include limited attention and form
factors, such as a mobile device's screen size for a user's hand(s). Mobile UI contexts signal
cues from user activity, such as location and scheduling that can be shown from user
interactions within a mobile application. Overall, mobile UI design's goal is primarily for an
understandable, user-friendly interface. The UI of mobile apps should: consider users' limited
attention, minimize keystrokes, and be task-oriented with a minimum set of functions.
1.5. Problem Definition
The main benefit of developing a mobile app over a mobile friendly website is that by
developing a mobile app in native code, you can embrace the native functionality or the
hardware of the phone. For example, most smartphones have built in accelerometers,
cameras, GPS and gyroscopes. While a mobile friendly website will always require an
18. Page 8 of 67
internet connection with an app, this is not always the case. Many apps can store data locally
on the phone, and you can continue interacting with them even when no connections are
available. Android is about to become the most widely used OS on mobile phones and hence
developing android based native apps is on a raise, but with Android comes the storage
constraints for the application contents that very few take into account.
Cloud Computing is an emerging paradigm which is gaining popularity due to its ability to
reduce the costs associated with computing. Cloud computing has key benefits such as
scalability, instant provisioning, virtualized resources and ability to expand the server base
quickly. Hence the convergence of mobile app with cloud computing termed as the cloud-
mobile app is a solution that helps us deal with the major issue: storage on the device, which
can be reduced considerably as much of the computing and processing is now shifted to the
cloud.
In today’s era, it is most interesting and enticing technology which is offering the services to
its users on demand over the internet.Once the client host videos to the cloud there should be
some guarantee that access to that video data will only be limited to the authorized users who
can upload,modify and delete the video data. Inappropriate access to customer sensitive data
by cloud personnel is another risk that can pose potential threat to cloud data. Private cloud
computing, by definition is a single-tenant environment where the hardware, storage and
network are dedicated to a single client or company .Private cloud computing,thus resolves
the issue of privacy and control along with provision for customizability to a greater extent
than a public cloud. Since Cloud Computing stores the data and disseminated resources in the
open environment, security has become the main obstacle which is hampering the
deployment of Cloud environments. Even though the Cloud Computing is promising and
efficient, there are many challenges for data security as there is no vicinity of the data for the
cloud user. To ensure the security of data, we proposed a method by implementing RSA
algorithm which provides security, low complexity and no-alteration video encryption.
19. Page 9 of 67
2. Literature Survey
2.1 Existing System
The Android operating system was first developed by Google in 2008 in response to
Apple’s iOS, which dominated the smartphone market at the time. Since 2008, the Android
OS has proven itself a worthy competitor and officially took over as the market leader in the
fourth quarter of 2010. The number of new Android devices being activated each month
continues to climb at a staggering rate.While the number of android app downloads increased
by 1.5 billion from 2013 to 2014, most of these apps are based on a server back end and
hence have a few constraints along the dimensions of flexibility, cost and processing-
overheads.
Cloud computing is internet-based computing in which large groups of remote servers are
networked to allow the centralized data storage, and online access to computer services or
resources .Cloud computing promises lower costs, rapid scaling, easier maintenance, and
service availability anywhere, anytime. But a key challenge is how to ensure and build
confidence that the cloud can handle user data securely. A recent Microsoft survey found that
“58 percent of the public and 86 percent of business leaders are excited about the possibilities
of cloud computing. But more than 90 percent of them are worried about security,
availability, and privacy of their data as it rests in the cloud.”
2.2 ImplementedSystem
The aim of the project is to develop a framework to achieve streaming of videos that are
shared by central administrator/data owners on a scalable android mobile platform. The
facility to upload , modify , delete and verify the status of the modified videos in the private
cloud ,with an enhancement of encrypting the videos to be stored in the cloud using the RSA
20. Page 10 of 67
algorithm for security. The proposal is to develop a mobile video streaming and secure video
sharing framework. Here only an authorized administrator manages uploading, modifying
and deleting the videos through a web based interface. These videos are stored in a private
cloud (VC) containing a Video Base(VB) which helps in caching the most popular videos to
be serviced to the clients on demand. It utilizes the cloud computing technology to construct
private agents (sub VC) for each mobile user to try and offer video streaming functionality. It
is shown that the private agents in the clouds can effectively provide for the video streaming
and perform video sharing based on the network analysis over mobile platforms .The cloud
platform also maintains a Central Controller(CC) that monitors the file transactions between
the remote mobile users and the csp(cloud service provider) along with maintaining the
integrity of the data of the uploaded multimedia files.
The mobile application for the clients to stream the videos is developed on the android
platform which is fast moving towards being the top Operating System in the world enjoying
a gargantuan share of 78.4% of the market in 2013. This mobile application is scalable over a
large set of devices from mobile phones to laptops and tablets increasing the client base for
the services rendered by it.
The security concern related to the cloud platform is handled by using RSA algorithm which
provides high security, low complexity and no-alteration encryption of the videos. Also,
utilization of a private cloud and a centralized administration system ensures monitoring of
the transactions and improves control over the data while reducing the high cost and
processing overhead of maintaining large-scale servers.
Mobile users can install the application and register to view all the available videos on the go
assuming good internet access is available. Cloud service provider can employ this system so
as to provide data security and assurance to the various file operations .An additional
functionality, where the administrator can view all the details of the users, videos, etc related
to the application on the web is provided. Hence the system is best suited to use by a private
organization like a college and its users aiming for greater control and security.
21. Page 11 of 67
3. Requirements Analysis
3.1 Requirements specification
The system after careful analysis has been identified to be presented with the following
modules:
• SystemModel (Cloud computing)
• Data Owner
• Cloud Server Operations
• Central Controller
• Mobile User
System Model(Cloud computing)
It includes preparation of Cloud computing which is internet-based computing in which large
groups of remote servers are networked to allow the centralized data storage, and online
access to computer services or resources. The cloud components like the cloud platform,
cloud storage, cloud infrastructure and cloud service communicate with each other to deliver
the service to the customers/ clients who have requested for it over the internet.
Cloud operations
Upload Operation, it enables the authorized administrator to upload some data( videos in this
context) into the cloud, this operation is termed as data upload. In other words, the data must
be encrypted and uploaded into the cloud storage and must be made available only to the
authorized group of users.
Delete Operation, after being stored in the cloud, certain data may need to be deleted. The
delete operation being considered is a general one, where the data that is no longer needed
will be removed from the cloud storage. Here only the administrator has the authority to
delete any data from the cloud.
22. Page 12 of 67
ModifyOperation, here the administrator is given the authority to modify details pertaining to
the data that has been stored in the cloud.
Data Owner (Administrator)
The data owner is responsible for all the multimedia file operations: uploading, deleting,
verifying and modifying. It is the centralized administrator which provides for the cloud
services to the remote mobile users. The encryption of the multimedia file using the RSA
algorithm along with their respective public and private key for each file are generated on
uploading in the data owner.
Central Controller
The Central Controller monitors the data owners file by verifying the data owner’s file and
stores the metadata of the multimedia file in its database .Also, the central controller
manages the tpa(third party administrator) table in the database to compare with the
csp(cloud service provider) files to check and assure for data integrity. The transactions
between the cloud service provider and the remote mobile user are monitored by the Central
Controller.
3.2 Minimum Software Requirements
The following are a list of minimum software requirements needed for deployment of the
above proposed system:
• LINUX and WINDOWS OS (XP / 2000 / 2003 / 2008 Server / 7)
• Android ADT bundle for windows 32/64 bit
• Tomcat 6.0 and above.
23. Page 13 of 67
• Eclipse IDE
• MS Access 2007/2010 or MySQL
3.3 Minimum Hardware Requirements
The following are a detailed list of minimum hardware requirements necessary for
deploying the system in desired environment:
• PIV 3.5 GHz Processor and Above
• RAM 1 GB and Above
• HDD 5 GB Hard Disk Space and Above
24. Page 14 of 67
4. Software Requirements Specification
This Chapter describes about the requirements. It specifies the hardware and software
requirements that are required in order to run the application properly. The Software
Requirement Specification (SRS) is explained in detail, which includes overview of this
dissertation as well as the functional and non-functional requirement of this dissertation.
SRS for System
Functional Control the file access at cloud server, Data Integrity Proof at
Central Controller, Multi Media File Management, File
Encryption.
Non- Functional Cloud server never monitors and controls the Central
Controller, Remote mobile users do not upload the files.
External interface LAN , Routers
Performance Maintaining the Multimedia File Access between the remote
mobile user and the cloud server.
Attributes Multimedia File Management ,Video Streaming Services,
Maintain Cloud Servers ,Multimedia File Virtualization
Table: 4.1 Summaries of SRS
25. Page 15 of 67
4.1 Functional Requirements
Functional Requirement defines a function of a software system and how the system must
behave when presented with specific inputs or conditions. These may include calculations,
data manipulation and processing and other specific functionality. In this system following
are the functional requirements:
• The Owner will upload the Multimedia Files To the cloud servers.
• The Cloud server has to authorize the valid remote mobile users. The Central
Controller has to maintain the data integrity and has to monitor the Cloud Server
Multi Media File Transaction.
• The Remote mobile user has to register in the mobile application to get access to the
Multimedia files and use the Video Streaming Services through Virtualization.
• Central Controller - has to maintain the Video Streaming Multimedia File transactions
and provide for the auditing from the data owner.
• The Attributes are Multimedia File Management, Central Controller, cloud server,
owner and Remote mobile user.
4.2 Non Functional Requirements
Requirement specification plays an important part in the analysis of a system. Only
when the requirement specifications are properly given, it is possible to design a system,
which will fit into required environment. It rests largely in the part of the users of the
existing system to give the requirement specifications because they are the people who
finally use the system. This is because the requirements have to be known during the initial
stages so that the system can be designed according to those requirements. It is very difficult
to change the system once it has been designed and on the other hand designing a system,
26. Page 16 of 67
which does not cater to the requirements of the user, is of no use.
The requirement specification for any system can be broadly stated as given below:
• The system should be able to interface with the existing system
• The system should be accurate
• The system should be better than the existing system
• The system throughput must be maximum at 95% cases during the lifetime
• The response time for any user query must be less than or equal to the standard
specification standard of response time
The existing system is completely dependent on the user to perform all the duties.
27. Page 17 of 67
5. Software Design
5.1. Introduction
Software design sits at the technical kernel of the software engineering process and is
applied regardless of the development paradigm and area of application. Design is the first
step in the development phase for any engineered product or system. The designer’s goal is
to produce a model or representation of an entity that will later be built. Beginning, once
system requirement have been specified and analyzed, system design is the first of the three
technical activities -design, code and test that is required to build and verify software.
The importance can be stated with a single word “Quality”. Design is the place where
quality is fostered in software development. Design provides us with representations of
software that can assess for quality. Design is the only way that one can accurately translate a
customer’s view into a finished software product or system. Software design serves as a
foundation for all the software engineering steps that follow. Without a strong design there is
a risk building an unstable system –one that will be difficult to test, one whose quality cannot
be assessed until the last stage.
During design, progressive refinement of data structure, program structure, and
procedural details are developed reviewed and documented. System design can be viewed
from either technical or project management perspective. From the technical point of view,
design is comprised of four activities –architectural design, data structure design, interface
design and procedural design.
5.2. Flow Chart Diagram
A flow chart diagram is graphical tool used to describe and analyze movement of
data through a system. These are the central tool and the basis from which the other
components are developed. The transformation of data from input to output, through
processed, may be described logically and independently of physical components associated
28. Page 18 of 67
with the system. These are known as the logical flow chart diagrams. The physical data flow
diagrams show the actual implements and movement of data between people, departments
and workstations. A full description of a system actually consists of a set of flow chart
diagrams. Using two familiar notations Yourdon, Gane and Sarson notation develops the
flow chart diagrams. Each component in a FCD is labelled with a descriptive name. Process
is further identified with a number that will be used for identification purpose. The
development of FCD’S is done in several levels. Each process in lower level diagrams can
be broken down into a more detailed FCD in the next level. The lop-level diagram is often
called context diagram. It consists a single process bit, which plays vital role in studying the
current system. The process in the context level diagram is exploded into other process at the
first level FCD.
The idea behind the explosion of a process into more process is that understanding at
one level of detail is exploded into greater detail at the next level. This is done until further
explosion is necessary and an adequate amount of detail is described for analyst to
understand the process.
Larry Constantine first developed the FCD as a way of expressing system
requirements in a graphical from, this lead to the modular design.
A FCD is also known as a “bubble Chart”has the purpose of clarifying system
requirements and identifying major transformations that will become programs in system
design. So it is the starting point of the design to the lowest level of detail. A FCD consists
of a series of bubbles joined by data flows in the system.
FCD Symbols
In the FCD, there are four symbols
• A square defines a source(originator) or destination of system data
• An arrow identifies data flow. It is the pipeline through which the information flows
• A circle or a bubble represents a process that transforms incoming data flow into
outgoing data flows.
• An open rectangle is a data store, data at rest or a temporary repository of data.
29. Page 19 of 67
Flow Chart Diagram
Fig 5.2.1: FCD for the system
30. Page 20 of 67
5.3. Use Case Diagram
The purpose of use case diagram is to capture the dynamic aspect of a system. But
this definition is too generic to describe the purpose.
Because other four diagrams (activity, sequence, collaboration and Statechart) are also
having the same purpose. So we will look into some specific purpose which will distinguish
it from other four diagrams.
Use case diagrams are used to gather the requirements of a system including internal and
external influences. These requirements are mostly design requirements. So when a system is
analysed to gather its functionalities use cases are prepared and actors are identified.
Now when the initial task is complete use case diagrams are modelled to present the outside
view.
So in brief, the purposes of use case diagrams can be as follows:
Used to gather requirements of a system.
Used to get an outside view of a system.
Identify external and internal factors influencing the system.
Show the interacting among the requirements are actors.
31. Page 21 of 67
Use Case Diagram
Fig 5.3.1: Use Case Diagram for the System
32. Page 22 of 67
Fig. 5.3.2: Use Case Diagram for the System
33. Page 23 of 67
5.4. Class Diagram
The class diagram is a static diagram. It represents the static view of an application.
Class diagram is not only used for visualizing, describing and documenting different aspects
of a system but also for constructing executable code of the software application.
The class diagram describes the attributes and operations of a class and also the constraints
imposed on the system. The class diagrams are widely used in the modelling of object
oriented systems because they are the only UML diagrams which can be mapped directly
with object oriented languages.
The class diagram shows a collection of classes, interfaces, associations, collaborations and
constraints. It is also known as a structural diagram.
The purpose of the class diagram is to model the static view of an application. The class
diagrams are the only diagrams which can be directly mapped with object oriented languages
and thus widely used at the time of construction.
The UML diagrams like activity diagram, sequence diagram can only give the sequence flow
of the application but class diagram is a bit different. So it is the most popular UML diagram
in the coder community.
So the purpose of the class diagram can be summarized as:
Analysis and design of the static view of an application.
Describe responsibilities of a system.
Base for component and deployment diagrams.
Forward and reverse engineering.
34. Page 24 of 67
Class Diagram
Fig. 5.4.1: Class Diagram for the System
35. Page 25 of 67
5.5. Sequence Diagram
From the name Interaction it is clear that the diagram is used to describe some type of
interactions among the different elements in the model. So this interaction is a part of
dynamic behaviour of the system.
This interactive behaviour is represented in UML by two diagrams known as Sequence
diagramand Collaboration diagram. The basic purposes of both the diagrams are similar.
Sequence diagram emphasizes on time sequence of messages and collaboration diagram
emphasizes on the structural organization of the objects that send and receive messages.
The purposes of interaction diagrams are to visualize the interactive behaviour of the system.
Now visualizing interaction is a difficult task. So the solution is to use different types of
models to capture the different aspects of the interaction.
That is why sequence and collaboration diagrams are used to capture dynamic nature but
from a different angle.
So the purposes of interaction diagram can be describes as:
To capture dynamic behaviour of a system.
To describe the message flow in the system.
To describe structural organization of the objects.
To describe interaction among objects.
36. Page 26 of 67
Sequence Diagram:
Fig. 5.5.1: Sequence Diagram for the system
37. Page 27 of 67
5.6. Activity Diagram
Activity diagram is another important diagram in UML to describe dynamic aspects
of the system.
Activity diagram is basically a flow chart to represent the flow form one activity to another
activity. The activity can be described as an operation of the system.
So the control flow is drawn from one operation to another. This flow can be sequential,
branched or concurrent. Activity diagrams deals with all type of flow control by using
different elements like fork, join etc.
The basic purposes of activity diagrams are similar to other four diagrams. It captures the
dynamic behaviour of the system. Other four diagrams are used to show the message flow
from one object to another but activity diagram is used to show message flow from one
activity to another.
Activity is a particular operation of the system. Activity diagrams are not only used for
visualizing dynamic nature of a system but they are also used to construct the executable
system by using forward and reverse engineering techniques. The only missing thing in
activity diagram is the message part.
It does not show any message flow from one activity to another. Activity diagram is some
time considered as the flow chart. Although the diagrams looks like a flow chart but it is not.
It shows different flow like parallel, branched, concurrent and single.
So the purposes can be described as:
Draw the activity flow of a system.
Describe the sequence from one activity to another.
Describe the parallel, branched and concurrent flow of the system.
38. Page 28 of 67
Activity Diagram
Fig. 5.6.1: Activity Diagram for the System
39. Page 29 of 67
5.7. Data Dictionary
After carefully understanding the requirements of the client the entire data storage
requirements are divided into tables. The below tables are normalized to avoid any anomalies
during the course of data entry.
Table 5.7.1:Admin
Field Type
Aname nvarchar(50)
Password nvarchar(50)
Table 5.7.2:Login
Field Type
Username nvarchar(50)
Password nvarchar(50)
Email nvarchar(50)
Table 5.7.3:DataOwner
Field Type
FileName nvarchar(50)
OwnerName nvarchar(50)
UploadDate date(dd/mm/yyyy)
Pkey nvarchar(10,0)
Skey int
40. Page 30 of 67
Table 5.7.4:cspfiles
Field Type
FileId int
FileName nvarchar(50)
OwnerName nvarchar(50)
UploadDate date(dd/mm/yyyy)
Pkey nvarchar(50)
Skey int
Table 5.7.5:Videos
Field Type
Mname nvarchar(50)
Rank int
Table 5.7.6:Comments
Field Type
Mname nvarchar(50)
Comments nvarchar(50)
Table 5.7.7:TPAFiles
Field Type
FileId int
Pkey nvarchar(10,0)
Skey int
Table 5.7.8:ModifiedFiles
Field Type
FileName nvarchar(50)
Pkey nvarchar(10,0)
41. Page 31 of 67
6. Implementation
6.1. Technologies Used
JAVATECHNOLOGY
Java technology is both a programming language and a platform.
The Java Programming Language
With most programming languages, you either compile or interpret a program so that you can
run it on your computer. The Java programming language is unusual in that a program is both
compiled and interpreted. With the compiler, first you translate a program into an
intermediate language called Java byte codes —the platform-independent codes interpreted
by the interpreter on the Java platform. The interpreter parses and runs each Java byte code
instruction on the computer. Compilation happens just once; interpretation occurs each time
the program is executed.
What are the advantages of Java programming?
Java programming is likely to make the programs better and requires less effort than other
languages. Java technology will help you do the following:
• Get started quickly: Although the Java programming language is a powerful
object-oriented language, it’s easy to learn, especially for programmers
already familiar with C or C++.
• Write less code: Comparisons of program metrics (class counts, method
counts, and so on) suggest that a program written in the Java programming
language can be four times smaller than the same program in C++.
• Write better code: The Java programming language encourages good coding
practices, and its garbage collection helps you avoid memory leaks. Its object
orientation, its JavaBeans component architecture, and its wide-ranging, easily
42. Page 32 of 67
extendible API let you reuse other people’s tested code and introduce fewer
bugs.
• Develop programs more quickly: Your development time may be as much as
twice as fast versus writing the same program in C++. Why? You write fewer
lines of code and it is a simpler programming language than C++.
• Avoid platform dependencies with 100% Pure Java: You can keep your
program portable by avoiding the use of libraries written in other languages.
The 100% Pure JavaProduct Certification Program has a repository of
historical process manuals, white papers, brochures, and similar materials
online.
• Write once, run anywhere: Because 100% Pure Java programs are compiled
into machine-independent byte codes, they run consistently on any Java
platform.
• Distribute software more easily: You can upgrade applets easily from a
central server. Applets take advantage of the feature of allowing new classes
to be loaded “on the fly,”without recompiling the entire program. Java has
two things: a programming language and a platform.
Sockets
A socket is a data structure maintained by the system to handle network connections.
A socket is created using the call socket. It returns an integer that is like a file descriptor. In
fact, under Windows, this handle can be used with Read File and Write File functions.
Here "family" will be AF_INET for IP communications, protocol will be zero, and
type will depend on whether TCP or UDP is used. Two processes wishing to communicate
over a network create a socket each. These are similar to two ends of a pipe - but the actual
pipe does not yet exist.
43. Page 33 of 67
JSON Object
JSON (JavaScript Object Notation) is a lightweight format that is used for data
interchanging. It is also a subset of JavaScript's Object Notation .An example of where this is
used is web services responses. In the 'old' days, web services used XML as their primary
data format for transmitting back data, but since JSON appeared, it has been the preferred
format because it is much more lightweight.
JSON is built on two structures:
1. A collection of name/value pairs. In various languages, this is realized as an object,
record, struct, dictionary, hash table, keyed list, or associative array.
2. An ordered list of values. In most languages, this is realized as an array, vector, list, or
sequence.
The JSON Parser also offers another very useful method, stringify. This method accepts a
JavaScript object as a parameter, and outputs back a string with JSON format. This is useful
for when you want to send data back to the server.
ANDROID APPLICATIONS
The Android Operating System
Android is an open source and Linux-based Operating System for mobile devices such as
smartphones and tablet computers. Android was developed by the Open Handset Alliance,
led by Google, and other companies .Android offers a unified approach to application
development for mobile devices which means developers need only develop for android, and
their applications should be able to run on different devices powered by Android.
The first beta version of the Android Software Development Kit (SDK) was released by
Google in 2007 where as the first commercial version, Android 1.0, was released in
September 2008.
The source code for android is available under free and open source software licenses.
44. Page 34 of 67
Google publishes most of the code under the Apache License version 2.0 and the rest, Linux
kernel changes, under the GNU General Public License version 2.
Android Applications
Android applications are usually developed in the Java language using the android Software
Development Kit .Once developed, android applications can be packaged easily and sold out
either through a store such as Google Play or the Amazon appstore. Android powers
hundreds of millions of mobile devices in more than 190 countries around the world. It's the
largest installed base of any mobile platform and growing fast. Every day more than 1
million new android devices are activated worldwide.
Eclipse IDE
In the context of computing, Eclipse is an integrated development environment (IDE)
for developing applications using the Java programming language and other programming
languages such as C/C++, Python, PERL, Ruby etc.
The Eclipse platform which provides the foundation for the Eclipse IDE is composed of
plug-ins and is designed to be extensible using additional plug-ins. Developed using Java, the
Eclipse platform can be used to develop rich client applications, integrated development
environments and other tools. Eclipse can be used as an IDE for any programming language
for which a plug-in is available.
Eclipse ADT (Android Development Tools)
Android Development Tools (ADT) is a plugin for the Eclipse IDE that is designed to
provide an integrated environment in which to build android applications. ADT extends the
capabilities of Eclipse to let developers set up new android projects, create an application UI,
add packages based on the android Framework API, debug their applications using the
Android SDK tools, and export signed (or unsigned) .apk files in order to distribute their
applications .It is a freeware available to download.
45. Page 35 of 67
MS ACCESS
Introduction: What is Access?
Microsoft Access is a relational database management system (DBMS). At the most basic
level, a DBMS is a program that facilitates the storage and retrieval of structured information
on a computer’s hard drive.
The many faces of Access:
Microsoft generally likes to incorporate as many features as possible into its products .For
example, the Access package contains the following elements:
•A relational database system that supports two industry standard query languages:
Structured Query Language (SQL) and Query by Example (QBE).
•A full-featured procedural programming language—essentially a subset of Visual
Basic
•A simplified procedural macro language unique to Access
•A rapid application development environment complete with visual form and
report tool
•A sprinkling of objected-oriented extensions and,
•Various wizards and builders to make development easier.
ODBC
Microsoft Open Database Connectivity (ODBC) is a standard programming interface for
application developers and database systems providers. Before ODBC became a de facto
standard for Windows programs to interface with database systems, programmers had to use
proprietary languages for each database they wanted to connect to. Now, ODBC has made
the choice of the database system almost irrelevant from a coding perspective, which is as it
should be. Application developers have much more important things to worry about than the
syntax that is needed to port their program from one database to another when business needs
suddenly change.
46. Page 36 of 67
JDBC
In an effort to set an independent database standard API for Java; Sun Microsystems
developed Java Database Connectivity, or JDBC. JDBC offers a generic SQL database
access mechanism that provides a consistent interface to a variety of RDBMSs. This
consistent interface is achieved through the use of “plug-in” database connectivity modules,
or drivers. If a database vendor wishes to have JDBC support, he or she must provide the
driver for each platform that the database and Java run on.
6.2. Implementation Modules
Upload file into cloud
The purpose of the system is to provide security to video files stored in the private cloud.
It is using this functionality of video file uploading that an administrator/data owneris
provided to choose a file to upload along with the name of its owner. Also, this present
system is limited in functionality that it is operational with only few file types such as “.mp4”
and “.ovi” extensions. Hence, the administrator needs to make sure that only such files are
uploaded. Once uploaded, the file is encrypted and stored in the cloud .The following code
demonstrates the very functionality discussed so far.
RSA Key Generation Algorithm
importjava.util.ArrayList;
importjava.util.Collections;
importjava.util.List;
importjava.util.Random;
public class KeyGenerator {
Random rr=new Random();
publicintgetKeys(){
String str="";
str=String.valueOf(rr.nextInt(10))+String.valueOf(rr.nextInt(10))+String.valueOf(rr.n
47. Page 37 of 67
extInt(10))+String.valueOf(rr.nextInt(10))+String.valueOf(rr.nextInt(10))+String.valu
eOf(rr.nextInt(10));
returnInteger.parseInt(str);
}
public static void main(String args[]){
KeyGeneratorGenerator = new KeyGenerator();
System.out.println(Generator.getKeys());
}
}
The following is the RSA encryption algorithm used while uploading the video:
try {
KeyPairGenerator kg = KeyPairGenerator.getInstance("RSA");
encoder = Cipher.getInstance("RSA");
KeyPairkp = kg.generateKeyPair();
prKey = kp.getPrivate();
pubKey = kp.getPublic();
byte[] pub = pubKey.getEncoded();
System.out.println("PUBLIC KEY" + pub);
System.out.println("File Name" + fname);
String pk = String.valueOf(pub);
KeyGeneratorkgenerate = newKeyGenerator();
String secretkey = String.valueOf(kgenerate.getKeys());
tf.append("File Name :" + fname + "n");
tf.append("Public Key :" + pk + "n");
tf.append("File Secret Key :" + secretkey + "n");
Class.forName("sun.jdbc.odbc.JdbcOdbcDriver");
java.sql.Connection con = DriverManager
.getConnection("jdbc:odbc:AMES");
Statement s = con.createStatement();
s.executeUpdate("insert into DataOwner values('" +fname
+ "','" + downer + "','" + udate +
"',' "+pk + "','"+
secretkey + "')");
Upload metadata of the video file into central controller
48. Page 38 of 67
The purpose of this is to guarantee that the central controller maintains the data integrity
and the transactions monitoring of the multimedia files. In cases where the multimedia file is
not able to be fetched from the VB(video base) of the Video Cloud(VC) to the remote mobile
users , the central controller provides for the video through virtualization.The following code
demonstrates the very functionality discussed so far:
Multimedia File Operations
Delete Multimedia File
The data owner has the sole authority to delete or permanently remove any particular
multimedia file from the cloud. Once a file is deleted, it cannot be retrieved back and
would not be available any more for the remote mobile users.
Modify Multimedia File
The data owner (cloud service provider) is the sole authority who can modify the
uploaded multimedia files. Given the video file name, the related details i.e. owner name,
date of upload can be modified by the administrator. Once modified the multimedia file
encryption is performed once again for security. The modified files can be viewed even
by the central controller to ensure data integrity.
Verify Multimedia File
The data owner can verify the status of any uploaded multimedia file as either modified
or not modified. The uploaded file database table is checked against the modified files
database table to determine any change in the encryption keys.
Administrator Login
49. Page 39 of 67
The central administrator is the sole person who can login to the website by providing the
username and password. Once logged in he/she can view all the mobile video streaming
application details: the registered mobile user details, the uploaded multimedia video details,
the video comments etc.
Mobile User Registration
Any user interested to be a part of this system and to make use of the services must first
install and then register in the mobile application. The sign up page is designed for first time
novice users or first time visitors. The details furnished by the user are checked by making
use of validation controls that verify that the email id does not exist.
Mobile User Login
Once a user successfully registers in the mobile application, for all further interaction, it
becomes mandatory to login by providing username and password. It is only after verifying
the user name and password that a user is provided an access to the application services.
Failing to provide any of the above details will result in denial of user access to the
application.
Mobile Video Streaming
Once the registered mobile users’ login, they can play any of the available videos in the
cloud. Here, the users can even add comments for the various multimedia files and with each
view of a video by the user the rank of the video file gets incremented by one.
The following is the Video Streaming code:
public void onClick(View arg0) {
String movie = mname.getText().toString()+".mp4";
50. Page 40 of 67
String moviename=mname.getText().toString();
VideoViewvd = (VideoView) findViewById(R.id.videoView1);
String url = "http://192.168.0.103:8080/MVSC/"+movie ;
System.out.println(url);
// uri = Uri.parse("android.resource://" + getPackageName()+
// "/" + R.raw.test);
uri = Uri.parse(url);
vd.setMediaController(mc);
vd.setVideoURI(uri);
vd.start();
Toast.makeText(getApplicationContext(), moviename+"->is Playing
Currently and Total Ranks="+ds.viewrank(movie), 90000).show();
51. Page 41 of 67
7. Testing
TestCases
The purpose of testing is to discover errors. Testing is the process of trying to discover
every conceivable fault or weakness in a work product. It provides a way to check the
functionality of components, sub-assemblies, assemblies and/or a finished product It is the
process of exercising software with the intent of ensuring that the software system meets its
requirements and user expectations and does not fail in an unacceptable manner. There are
various types of test. Each test type addresses a specific testing requirement.
Activity
Function
being tested
Initial System
State
Input Expected Output
MOBILE USER
REGISTER
Validation
of form
Data
User is not
Registered
All the
entered data
is valid
according to
the validation
conditions
Alert box
displaying
registration
Successful.
Redirected to
homepage for
Login
ADMIN
LOGIN
Validation
of
User name
&
Password
Admin
attempting to
log in
Entered
Username&
Password
do not match
Wronglogin.jsp page
with the panel
displaying “sorry such
a user does not exist”
, with a redirect back
to the login page.
52. Page 42 of 67
Activity
Function
being tested
Initial System
State
Input Expected Output
ADMIN
LOGIN
Validation
of
User name
&
Password
Admin
attempting to
log in
Entered
Username&
Password
do not match
Wronglogin.jsp page
with the panel
displaying “sorry such
a user does not exist”
, with a redirect back
to the login page.
MOBILE USER
LOGIN
Validation
of
username
and
password.
Mobile user
attempting to
log in
Entered
username is
valid and
password
also matches.
Mobile user is
successfully
logged in. A
“success” toast
message is
displayed and is
redirected to video
streaming page.
MULTIMEDIA
FILE UPLOAD
Selection of
Video file
User attempts
to upload a
file
No Selection,
and choosing
upload option
Upload button does
not function. Alert
box with “file not
uploaded
successfully”
53. Page 43 of 67
Activity
Function
being tested
Initial System
State
Input Expected Output
MULTIMEDIA
FILE UPLOAD
Selection of
video file
User attempts
to upload a
file
Connection to
the server
localhost is
refused or
fails.
File does not get
uploaded. Alert box
with “file not
uploaded
successfully”
MULTIMEDIA
FILE UPLOAD
Selection of
video file
User attempts
to upload a
file
File with
correct
location and
extension is
chosen.
File successfully
uploaded. Alert box
with “file uploaded
successfully”
MULTIMEDIA
FILE METADATA
UPLOAD
Selection of
video file
from the
uploaded
MM files.
User attempts
to upload a
file
File with
correct
location and
extension is
chosen.
File successfully
uploaded. Alert box
with “file uploaded
successfully”
MOBILE VIDEO
STREAMING
Streaming/p
laying of
the MM file
User attempts
to play a MM
file .
File is not
available in
the cloud / not
uploaded by
data owner.
File is not played. A
text box with “Can’t
play video” is
displayed.
MOBILE VIDEO
STREAMING
Streaming/p
laying of
the MM file
User attempts
to play a MM
file .
File is
available in
the cloud / is
uploaded by
data owner.
The video file plays
on the mobile
device.
54. Page 44 of 67
Activity
Function
being tested
Initial System
State
Input Expected Output
MULTIMEDIA
FILE OPERATION
Modify File
function
User is
displayed
with all the
correspondin
g uploaded
video file
details.
Selecting the
text fields and
modifying
them. Click on
reset button
No modification is
done. Message
saying “the file is
not modified “.
MULTIMEDIA
FILE OPERATION
Modify File
function
User is
displayed
with all the
correspondin
g uploaded
video file
details.
Selecting the
text fields and
modifying
them. Click on
update button
Message saying
“the file is modified
successfully”.
MULTIMEDIA
FILE OPERATION
Delete File
function
Selection of
the File to be
deleted.
Wrong file
name or the
connection to
the localhost
server not
established
Message alerting “
File not deleted
successfully”.
MULTIMEDIA
FILE OPERATION
Delete File
function
Selection of
the File to be
deleted.
Wrong file
name or the
connection to
the localhost
server not
established
Message alerting “
File not deleted
successfully”.
55. Page 45 of 67
Activity
Function
being tested
Initial System
State
Input Expected Output
MULTIMEDIA
FILE OPERATION
Verify File
function.
Selection of
the file name
to be verified
Selecting the
correct
uploaded
video file
name which
has been
modified by
the data owner
Message saying
“File is not safe !it
has been modified”.
MULTIMEDIA
FILE OPERATION
Verify File
function.
Selection of
the file name
to be verified
Selecting the
correct
uploaded
video file
name which
has not been
modified by
the data owner
Message saying
“File is safe! Not
been modified”.
56. Page 46 of 67
8. Output Screens
This chapter presents the screen shots of the project during execution.
Fig 8.1: Admin Login Page
Fig 8.1: The administrator logins to the web using this form.
57. Page 47 of 67
Fig 8.2: Admin Welcome Page
Fig 8.2: Page displayed on successful admin login
Fig 8.3: Admin View All Videos Page
Fig 8.3: The list of all videos in the cloud are displayed
58. Page 48 of 67
Fig 8.4: Admin View User Details Page
Fig 8.4: The list of registered mobile users are displayed.
Fig 8.5: Admin View Comments Page
Fig 8.5: The list of comments on the videos are displayed.
59. Page 49 of 67
Fig 8.6: Admin/Data Owner File Window
Fig 8.6: Admin/Data Owner can upload, verify, delete and view all uploaded
files.
60. Page 50 of 67
Fig 8.7: Cloud Server Window
Fig 8.7: Cloud server displays all the video file details.
61. Page 51 of 67
Fig 8.8: Central Controller Video File Data Window
Fig 8.8: Window to view all the uploaded meta data files.
Fig 8.9: Central Controller View Modified Files Window
Fig 8.9: Window to view the modified files.
62. Page 52 of 67
Fig 8.10: Modify Video File Window
Fig 8.10: Window to make the modifications to uploaded video files.
63. Page 53 of 67
Fig 8.11: Mobile User Login to App
Fig 8.11: The form to login to use the app services.
64. Page 54 of 67
Fig 8.12: Mobile User Register to App
Fig 8.12: Form where new users register in the app.
65. Page 55 of 67
Fig 8.13: Mobile User Play Video
Fig 8.13: Window to comment, view comments, list videos and stream videos
in the app.
66. Page 56 of 67
9. Conclusion
9.1. Summary
In this project, an in depth investigation is done into the concept of mobile video
streaming and secure video sharing on the cloud to explore the possible advantages of
convergence of the two emerging platforms, mobile applications and cloud computing. A
framework that implements a private cloud to securely store video files using the RSA
algorithm with a centralized administrative system and streaming these videos over mobile
devices has been proposed. The system works with a wide range of mobile devices ranging
from phones to laptops and tablets hence addressing the scalability factor, allowing users
with heterogeneous devices to view the application contents without a glitch. This framework
is best suited for private organization like universities and colleges, who can securely share
video data at low cost and higher control, availability, accessibility and security.
9.2. Scope for Extension
In the project work presented above, the following extensions can be made:
• The video streaming function can be made adaptable to ensure continuous streaming
with the best possible quality, even with varying bandwidth during heavy traffic.
• A combination of algorithms can be used to improve the security of the video content
stored in the cloud.
67. Page 57 of 67
Bibliography
• Book References
[1] Chris Bates ,Web Programming, Wiley-India, Third Edition, 2006.
[2] Jeff Friesen ,Learn Java for Android Development , Apress , Second Edition ,2013.
• Journal References
[3]M D Walker, M Nilsson, T Jebb and R Turnbull- BT Technology Journal , Mobile
video-streaming, Volume 21 No 3, July 2003.
[4]Parsi Kalpana , Sudha Singaraju-IJRCCT , Data Security In Cloud computing
Using RSA Algorithm , Volume One , 2012
[5] SuhasHola,Mahima M Katti–IJCTTJournal,Android Based Mobile Application
Development and its Security ,Volume Three, 2012.
• Website References
[6]www.stackoverflow.com
[7] developer.android.com
[8] www.tutorialpoint.com
[9] blogs.technet.com
[10] www.support.mircosoft.com
[11] www.wikipedia.org/wiki/Cloud_computing
[12] www.wikipedia.org/wiki/Mobile_applications
[13] www.javamex.com