A Novel Real-Time Video Transmission Approach for Remote
Total Page:16
File Type:pdf, Size:1020Kb
PAPER A NOVEL REAL-TIME VIDEO TRANSMISSION APPROACH FOR REMOTE LABORATORY DEVELOPMENT A Novel Real-time Video Transmission Approach for Remote Laboratory Development http://dx.doi.org/10.3991/ijoe.v11i1.3167 Ning Wang1, Xuemin Chen1, Gangbing Song2 and Hamid Parsaei3 1Texas Southern University, Houston, USA; 2University of Houston, Houston, USA; 3Texas A&M University at Qatar, Doha, Qatar Abstract—Remote laboratories are an inevitable necessity Remote laboratories offer a range of benefits that can for Internet enabled education in Science, Technology, En- significantly improve pedagogical success: 1) they adapt gineering, and Math (STEM) fields due to their effective- to the pace of each student; 2) an experiment may be con- ness, flexibility, cost savings, and the fact that they provide cluded from home if the time available at the lab was not many benefits to students, instructors and researchers. sufficient; 3) it can be repeated to clarify doubtful meas- Accordingly, real-time experiment live video streaming is an urements obtained at the lab; 4) the student may improve essential part of remote experimentation operation. Never- the effectiveness of the time spent at the lab by rehearsing theless, in the development of real-time experiment video the experiment beforehand; 5) safety and security are transmission, it is a key and difficult issue that the video is improved as there is no risk of catastrophic failure [6]. transferred across the network firewall in most of the cur- Remote laboratories are often used in Control, Robotic rent remote laboratory solutions. To address the network and Mechatronic education to illustrate theoretical princi- firewall issue, we developed a complete novel solution via ples and deployment methodologies [7]. Remote laborato- HTTP Live Streaming (HLS) protocol and FFMPEG that is ries can be of many kinds and our previous works mainly a powerful cross-platform command line video trans- focused on remote laboratories where the users accessed code/encoding software package on the server side. In this physical equipment through the Internet for remote exper- paper, a novel, real-time video streaming transmission ap- imentation purposes. From the point of view in the soft- proach based on HLS for the remote laboratory develop- ware architectures, remote laboratories architects have no ment is presented. With this new solution, the terminal users choice but to build a middleware allowing remote clients can view the real-time experiment live video streaming on to connect to the local computer that handle the device.[8] any portable device without any firewall issues or the need The novel unified framework was designed and developed for a third party plug-in., This new solution also significant- to allow the set up of a distributed network of online ex- ly benefits remote laboratory development in the future. periments that works in any Internet browser without the Index Terms—Remote Laboratory; HTTP Live Streaming; need of any extra plug-ins [9]. And then, we also deliver HLS; FFMPEG; Across Firewall. the improved unified remote laboratory framework, which uses a Comet solution via Node.js and its Socket.IO pack- I. INTRODUCTION age to improve the control commands and experiment data transmission performance. Nevertheless, real-time exper- As the cost of setting up and maintaining the physical iment live video streaming is an essential function for equipment rises, engineering laboratories are becoming an remote control experiment development, and normally it obstacle for school administrations. A good solution for is also a very important interface for the remote experi- this is the use of remote laboratories that allow students to ment controllers and viewers [10]. perform real experiments over the Internet. Remote labor- Currently, among the many common solutions of the atories, also known under the name of online laboratories, remote laboratory, the real-time video transmission ap- remote workbenches, etc., have found widespread ac- proach in remote laboratory implementation almost used ceptance during the last decade [1][2]. Over 20 years ago, the special network port and Virtual Private Network Stanford University introduced a new concept to learning: (VPN) to transfer the video streaming. Accordingly, there the use of video for the distribution and broadcast of class- is still an essential challenge of remote laboratory devel- room lectures [3]. Then, in the following few years, re- opment which is real-time video transmission across a mote control of experiments and equipment over the Web network firewall. Consequently, our improved solution for was an idea that was being explored. Tools were also the real-time experiment video transmission across a net- becoming available for remote control of instrumentation work firewall is an essential improvement of the remote using network communication, and several demonstra- laboratory development, which will extend into the future. tions of camera control and data acquisition, as well as simple experiments have been made [4][5]. In the last II. PREVIOUS WORKS AND METHODS SEARCH decade, with the fast improvement and development of Internet technology, video broadcasting and the Web have In our previous works, we developed the unified remote merged and remote experiments are now available over laboratory framework [10] and also resolved some chal- the Internet to students, instructors and researchers any- lenges of developing a cross-browser and cross-device where and anytime. Consequently, the laboratory setting Web user interface for improvement of the unified frame- has been globalized. work [11]. This framework was used to implement the remote control engineering experiments in the last year. As an example, the new Smart Vibration Platform (SVP) 4 http://www.i-joe.org PAPER A NOVEL REAL-TIME VIDEO TRANSMISSION APPROACH FOR REMOTE LABORATORY DEVELOPMENT remote experiment, which was used to teach students in order to achieve this goal, we proposed the new real-time materials engineering courses, and this remote control video transmission solution via HTTP Live Streaming experimentation were aimed to offer students hands-on protocol in combination with FFMPEG, which is a power- experience through the Internet on structural vibration ful cross platform command line video trans-code / encod- control using Magneto-Rheological (MR) or Shape ing software package. For addressing the network firewall Memory Alloy (SMA) braces under the novel unified and flash plug-in issue, our new approach works by break- remote laboratory framework. In order to improve the ing the overall real-time experiment video stream into a control commands and experiment data transmission per- sequence of small HTTP-based file downloads. Each formance of the unified framework, a Comet solution via download contains one short chunk of an overall poten- Node.js and its Socket.IO package was implemented on tially unbounded transport stream. As the stream is the server side, and a new Web socket protocol, which lets played, the client may select from a number of different the experiment communicate with Socket.IO was created alternate streams containing the same material encoded at for the workstation [10]. With this improved unified a variety of data rates, allowing the streaming session to framework, the terminal users can remotely conduct the adapt to the available data rate. Briefly, the client (normal- experiment by using any portable device without installing ly proposed Web browser) loads a playlist file of these any plug-ins. However, we still faced an across the net- video segments which was created following HLS proto- work firewall issue and the real-time experiment video col on the Web server (we proposed Apache Web Server). was transferred via port 1026, which is the special net- The content of this playlist are short clips residing on a work port in this improved framework of the remote la- Web server. In order to keep the real-time video transmis- boratory. In order to resolve this essential real-time exper- sion and playing smoothly, we regularly proposed 10 imentation video transmission issue, we need to be look- seconds for one short video clip. So for the server, we ing for a new approach to transfer the real-time video via need to create and maintain a playlist file and the short network port 80. Meanwhile, all Web contents of the segments of the real-time video stream. Therefore, the experimentation are also transferred to the terminal users sequence of small HTTP-based file downloads is trans- via the same network port. Therefore, the goal of this ferred via HTTP Live Streaming protocol, and we used a novel approach is to solve the real-time experiment video FFMPEG software package to break the overall real-time transmission across the network firewall issue and the experiment video stream into short segments. Finally, the Flash plug-in in Web browser issue we faced in the re- real-time experiment video segments are transferred via mote laboratory development. HLS protocol through network port 80 and the real-time Nowadays, with the fast development and improvement video will be reassembled in the Web browser and shown of network technology, a novel, reliable and free video to the end users. steaming transmission protocol, HTTP Live Streaming Real Time Video Streaming Video Source Segment, Enclosure, and (HLS), is more and more popularly used for real-time transmission Network FFMPEG Segmenter video transmission across a network firewall. HLS is an Camera HTTP-based media streaming communications draft pro- HTTP Live Streaming tocol implemented by Apple Inc. Apple used this protocol Protocol on September 1, 2010 to stream their iPod Keynote event Media Server HTTP Server Real Time Video Streaming live over the Internet, and on October 20, 2010 to stream collection and Process their ‘Back to the Mac’ Keynote event live over the Inter- Internet net as part of their QuickTime and iOS software [12]. (HTTP protocol) Currently, there are more and more giant software compa- nies’ solutions to support HLS, such as Adobe Flash Me- dia Server (Adobe FMS), Microsoft IIS Media Server, Google Android Honeycomb, etc.