Download presentation
Presentation is loading. Please wait.
Published byLinda Williamson Modified over 9 years ago
1
1 Net-HD Future LIVE HD TV over the web, HD movies online streaming NGN technologies What do we have at present? YouTube - Videos in HD quality Few another sites with more or less same technology No streaming online Problems? Internet bandwidth doesn’t suit the needs 720p HD live video stream needs ~2.5Mbit/sec Average connection speed is about ~2.0Mbit/sec Time - we don’t want to waste it in eternal waiting Online movies in HD quality?
2
Net-HD Global Goal of the project HD Streaming over the web w/o changing bandwidth Secondary Goals Development of prototype of software for experimental purposes Server/Client based application Manager application for multiple Clients Half-Real Time VOD streaming experiments
3
Basic structure of application: Net-HD Manager Client/s creates Server request 1. Manager starts 2. Manager creates instances of Clients 3. Clients send a movie requests with specified parameters 4. Server finds requested references 5. Server returns demanded movie stream Global Networking communication
4
Net-HD Tutorial: Introduction To run this project requires NetBeans and VS IDE’s It also requires a dom4j.jar as external library Basic entities are: Client – Java implemented Server – C# implemented Client Manager – Java implemented This presentation explains uses and implementation of Client and Client Manager This presentation uses screenshots of NetBeans IDE
5
Tutorial: Client Main form Net-HD URL – link to movie Control options Log for Data Transfer Observation Hides this form (means it is still working when hidden) frame from which movie will be played(represents time) Edit option for this instance of client Address of server Port of the server for client to connect
6
Net-HD Tutorial: Manager Main Form General Form URL – link to movie checkbox Random URL option from created earlier list – checkbox Select randomly specified number of Clients Choose a command from the drop list for all of the selected Clients Execute chosen command for selected Clients Load and run XML file with scenario Opens Form of selected Client Log Textbox and Show/Clear options for current session log
7
Net-HD Tutorial: Manager Main Form Editing server settings Set server IP address Set port through which Clients connect to server
8
Net-HD Tutorial: Manager Main Form Editing server settings Open a list of URL’s from text file Save existing URL list to text file
9
2) Enter number of Clients 3) Choose one of the options : b)Delete existing Client & add new one 4) To view list of created Clients : Press drop list 1) Press EDIT then NetHD CLIENT a)Add new Client Net-HD Tutorial: Manager Main Form Creation of multiple Clients
10
1)Press “Edit” then “URLs list” 2)In next form add a link of URL 3)In the “logs” window possible to use that the URL added successfully 4)To see the added URLs press dropped list. Net-HD Tutorial: Manager Main Form Editing URL list
11
Cengine – class that contains all logical functions Cgui – class that responsible for graphical interface Cmain – Start point for GUI Cnetwork – class that is responsible for networking components Cscreen – represents log box with data shown during transmission Cvideo – class that responsible converting data to video file RandomGUID – class that generates a unique ID for Client instance SetingsGUI – Graphical form for setting “Host” and “Port” Net-HD Packages explanation - basics Client
12
Net-HD Packages explanation - basics Log Main LogHD– data structure that remembers all events with application MainFrame – basic start point for the project, brings up a screen
13
EditNetHDClientsWindow – Graphic window that responsible of creating new Client EditURLslistWindow – Graphic windows for adding URLs links FileManager – Graphic window for file chooser Mengine - class that contains all logical functions of manager Mgui – Graphic window of manager Mmain - Start point for GUI NetHDServerSetingsWindow - Graphical form for setting “Host” and “Port” of server. Net-HD Packages explanation - basics Manager
14
Net-HD Code explanation - basics Client Main functions Play pressed : Cgui.Class called Methods invoked in order of appearance 1.Cengine.setFrame(frame) Sets current Client offset frame from which movie will starts 2.Cengine.Play(URL) Cnetwork.connect() - Connects to server Cnetwork.setMessage(msg) – Prepares a message for a server Cnetwork.GetVideoStream() - Gets video from server for this instance of Client
15
Net-HD Code explanation - basics Client Main functions Pause pressed : Cgui.Class called Methods invoked in order of appearance 1.Cengine.pauseSave() Sets flag request to status REPEATED Cengine.pauseTime() – saves time when movie stopped Cengine.getLastPackage() – saves last package to restore point
16
Net-HD Code explanation - basics Client Main functions Stop pressed : Cgui.Class called Methods invoked in order of appearance 1.Cengine.Stop() If Client was receiving data then Cnetwork.sendMessage(stop) – message with “stop” sent to server Cnetwork.disconnect() – kills connection with the server
17
Net-HD Code explanation - basics Manager Main functions Scenario Execute pressed : Mgui.Class called Methods invoked in order of appearance 1.Mengine.scenarioExecute() Function trys to read from XML file If successfully then program executes scenario
18
Net-HD Manager Main function : This Manager created for manage Clients. Execute button pressed : _engine.setURL(); - take urls links Checking one of two options : 1)_engine.selectFirstsClients(Take “All” clients); or 2) _engine.selectFirstsClients(Take num of client); LogHD.addLog(); - add information to “Information vector - LogHD”. this.setLog(); – print all changes on screen log.
19
Net-HD Manager Main function : This Manager created for manage Clients. _engine.executeSelected(take info from Comand ComboBox) { this function have Switch for 3 options : PLAY, STOP,PAUSE. checking on of two options : Random or No Creat new Client ; client.SetNetHDserver(_host, _port); - set host & port data for client whos took from Server Settings client.start(); - start new Thread/ Client with all describe data. }
Similar presentations
© 2025 SlidePlayer.com. Inc.
All rights reserved.