Distributed Software Development
Requirements Definition and Design Description Presentation : Live TV Customers : Damir Isovic (MDH) and Klas Eriksson (OneDial AB)
What we’ll speak about ? 1. The goal of the project 2. Requirements 3. Use case diagrams 4. Architecture and Technologies (Design)
1. The goal of the project 1/2 Implement a system that can be used for live TV broadcasting using mobile phones Record Select the stream Watch
1. The goal of the project 2/
2. Requirements Recording application requirements : –OneDial provided the “recorder mobile” –Desirable to record with a variety of mobile –Possibility to choose the quality of recording –Have the possibility to receive client’s feedback (optional)
2. Requirements Production studio application requirements : –Minimum 6 streams can be received simultaneously –Be able to select the stream –Add commercials in the stream –Run on Windows system
2. Requirements Player application requirements : –Available on variety of mobile phone brands –Allows users to send feedback (optional) –Ability to check mobile device support (optional)
2. Requirements Non-functional requirements: –Use existing network (3G, Wifi, …) –5s delay maximum from the event to the client mobile –Quality of sound should not be compromised
2. Requirements IdentityPriorityDescription Recorder application REC-11Record video using phone’s camera REC-21Stream video to a remote server REC-32Change the recording resolution REC-43Receive feedback from server Player application PLY-11Play video stream from remote server PLY-23Check streaming support on the mobile device PLY-33Send feedback to the server PLY-42Platform independent
2. Requirements IdentityPriorityDescription Production studio application STU-11Receive at least 6 different streams at a time STU-21Show all incoming streams STU-31User can choose which stream to broadcast STU-42Insert a commercial at any point in a stream STU-53Send feedback from players to recorders Project-wide nonfunctional requirements PNF-11The delay introduced by the system should be less than 5 seconds PNF-21 The video streaming must be done through some existing mobile network, e.g., 3G PNF-31The quality of the sound should not be compromised
3. Use case diagrams
3. Use case diagrams
3. Use case diagrams
4. Architecture System Components Live TV System Mobile Recorder PC Studio Mobile Client Player
4. Architecture Mobile RecorderPC Studio Mobile Client Player Stream 3GP over RTP 3GP/MP4 over RTSP Feedback XML Web Services PUSHPULL
4. Architecture Mobile Recorder Camera API Internal H.263 and AMR Encoders Encoded Video & Audio Streams 3GP Encapsulation RTP Streaming Feedback Notification UI
DSS serves stream over RTSP 4. Architecture PC Studio Windows Web Server (hosts Web Services for Feedback) LibVLC in C# receiving multiple streams over RTP Stream Selection & Ads Injection UI Output stream relayed to DSS
4. Architecture Mobile Client Player RTSP De-Packetizer Internal H.263 and AMR Decoders Live stream playback Viewer Feedback UI (I Love it / I Hate it) Viewer Feedback UI (I Love it / I Hate it)