Suitable function and requirement, enough for user, possible to implement Passed the key issue - streaming. Design quite good and can solve the problems Nice GUI and good user ex[r]
(1)Thesis Topic
CONSTRUCTION AND DEVELOPMENT MUSIC STREAMING ASSOCIATED REAL-TIME SYNCHRONIZATION MOBILE
APPLICATION WITH HIGH INTERACTIVITY ON MULTIPLE PLATFORMS
Major: Computer science
Supervisor: Assc.Prof Bui The Duy
(2)The Content
Introduction Related Work Our System
(3)Introduction
(4)“
”
An amazing Application
makes a new way we listen to music.
(5)Listen Together ?
- Have you ever try this experience?
(6)Ideal of our application
Allow to listen a same song at the same time Make a feeling that we are beside
Disappear our distance Share our emotion
Start a new relationship
Be a good music player and manager With a full function of a music application Help to listen by the most convenient way
(7)(8)Opportunities
There are a lot of good response from many people The application with same idea have not occurred
Amount of demand is very big especially from the young Construction and development are possible
Strong spillover
(9)Challenges
Extremely big workload
Need many developers and supporters
Require to research and learn about many issue High difficulty on design and development
(10)Related Work
(11)Related Work
Streaming Research RTSP
RTP and RTCP
Digital Audio and MP3 File Format
Modern Application Architecture Web service Model
Social Login
(12)Streaming Research
RTSP (Real Time Streaming Protocol).
Become a standard and widely used in streaming Used to establish and control media session
Using TCP to maintain end to end connection Using requests to communicate
Using RTP to carry streaming data
(13)(14)Streaming Research
RTP (Real Time Transport Protocol) and RTCP (RTP Control Protocol) RTP deliver audio and video over IP networks
RTP carry the data; RTCP handle transmission, synchronization multiple stream UDP package to deliver data
Can detect the wrong or lost package, resend package RTP header contain information of RTP package
(15)(16)Streaming Research
(17)Streaming Research
Application Framing Layer. A principle for using RTP
(18)Modern applications architecture
Web service model Social login
(19)Modern applications architecture
Web service model
Design for machine-to-machine interaction over a network
Best way to connect applications on different programming languages
and platforms
Connection method does not depend on any specific programming
language
(20)Modern applications architecture
(21)Modern applications architecture
Social login
Using an available social network account instead of create a new one to
login
Becoming common for websites and applications Quickly login, convenient for user
Highly trusted user information, good security Provide additional precious information of user
Taking advantage of Social network popularity for spreading
(22)Modern applications architecture
(23)Modern applications architecture
Peer to peer connection Finding IP address problem
(24)Our System
(25)Our System
Analysis and Requirement Design
(26)Analysis and Requirement
Is it potential?
Who is target of the application? What is user want?
(27)Analysis and Requirement
Function Requirement
Be a good music application on the smart phone device Have listening together function
Be connected and logged by using Facebook account Contact with other user
Non function requirement
Multiple mobile platforms, many of operating system versions Manage large amounts of user, back end controlling
(28)Analysis and Requirement
Use case diagram
Logging and geting Friend from Facebook
View Friends List, online, offline Friends
Invite Friend to Listen Contact with Friend General User
(29)Design
(30)Design
UML Design
Use case diagram Class diagram
(31)Design
Sequence diagram
: MainActivity
: MainActivity : FriendConnector : FriendConnector ExternalFriendUserExternalFriendUser
1: SendMessage(friendUser, Message)
2: SendMessage(message)
3: DisplayMessage 4: sendMessageRecivedNotify
5: MessageSentNotify 6: DisplayMessageSent
(32)Design
MainActivity
MainActivity : FriendConnector : FriendConnector : MusicStreamSender : MusicStreamSender ExternalFriendClientExternalFriendClient
1: Invite(friendUser,Song) 2: sendInviteListent(Song) 3: acceptToListen 4: SendDenytListen 5: DenyMessage 6: SendAcceptListen 9: CreateMusicStreamSender(FriendUser,song) 8: AcceptMessage 10: StartStream 11: StopPlay() 12: Disconnect() 7: CreateMuicStreamReciver()
(33)GUI Design
(34)Implement
Our simple streaming protocol
Replacing for RTSP
Inherits the traits and ideas of RTSP
Omit some elements, simpler, possible to implement Meet the requirements, suit for application
(35)Implement
Buffer processing
Used to load streaming data to Media Player
(36)Implement
Design pattern Singleton
Observable (Listener) Abstract Factory
Multithreading Handler
(37)Our Result and
(38)Result
Our completed work Design the Essential Success in Streaming
(39)Our completed work
(40)Our completed work
(41)Discussion
Self commendation
Advantage
Suitable function and requirement, enough for user, possible to implement Passed the key issue - streaming
Design quite good and can solve the problems Nice GUI and good user experience
Conner stone for future development
Disadvantage
Not completed because of enormous workload Some functions not perform in perfect
No unit testing
(42)Future Work
Finding investment Expanding the team Implement server side
Implement client on other platforms Testing
Publicizing product
(43)Thank you for
paying attention