Home

ILONANI - e-Archivo Principal

image

Contents

1. Create elements Camera video stream comes from a Video4Linux driver camera src gst element factory make VIDEO SRC camera src Colorspace filter is needed to make sure that sinks understands the stream coming from the camera csp filter gst element factory make ffmpegcolorspace csp filter Tee that copies the stream to multiple outputs t gst element factory make tee tee Queue creates new thread for the stream Screen queue gst element factory make queue screen queue Sink that shows the image on screen Xephyr doesn t support XVideo extension so it needs to use ximagesink but the device uses xvimagesink Screen sink gst element factory make VIDEO SINK screen sink Creates separate thread for the stream from which the image is captured image queue gst element factory make queue image queue Filter to convert stream to use format that the gdkpixbuf library can use 67 image filter gst element factory make ffmpegcolorspace image filter A dummy sink for the image stream Goes to bitheaven image sink image sink gst element factory make fakesink Check that elements are correctly initialized if pipeline amp amp camera src amp amp screen sink amp amp csp filter amp amp Screen queue amp amp image queue a
2. Hyper Text Transfer Protocol GSM Global System for Mobile communications MMS Multimedia Messaging Service MP3 MPEG 1 audio layer 3 NSV Nullsoft Streaming Video PBX Private Branch eXchange PDA Personal Digital Assistant PSTN Public Switched Telephone Network PWM Pulse Width Modulated SCP Secure Copy can also refer to Secure Copy Protocol or Secure Copy Program used to transfer files between a local and a remote host or between two remote hosts using SSH SHOUTcast server software for streaming media developed by Nulsoft SMS Short Messaging Service SSH Secure Shell a network protocol that allows data to be exchanged using a secure channel between to networked devices Theora lossy video compression codec developed by the Xiph Org Foundation as part of their Ogg project USB Universal Serial Bus Vorbis lossy audio compression codec receiving its name from the Vorbis project headed by the Xiph Org Foundation VoIP Voice over Internet Protocol WLAN Wireless Local Access Network Resumen en espanol Introduccion Este documento presenta los resultados de la investigaci n realizada con el objetivo de desarrollar un robot para la interacci n remota La concepci n de este robot de mesa incluye el uso de un Internet Tablet de Nokia el N810 como la cabeza y cara del robot concentrando las funciones de procesamiento y la interfaz con los usuarios Este dispositivo ir a montado s
3. video x raw yuv width 640 height 480 framerate fraction 15 1 xvimagesink The limits of producing video conferencing using this command line interface lie on the fact that media negotiation is not possible These command line tools are useful to determine the best combination of elements and parameters for our pipeline Once these have been established the pipeline should be coded into a proper Maemo application CONCLUSION The work of this project didn t continue on this path due to lack of time the end was coming closer and even though the viability of following this path is clear it would have required more time and knowledge to create an application using this approach After reaching this point this project focused on finding some other approach that would provide video conferencing even if it wasn t through a custom made application that complied with all of the details of the initial vision To this respect the rest of the chapter will be devoted to describing briefly some of the options that were explored and in more detail the option that was implemented at the end Should a future project continue the work of this one the recommended line of action would be to start at this point after understanding the GStreamer framework and having found a working pipeline code the application that would support server less point to point video conferencing and then extend the system by supporting a server of some kind
4. 15 1 NULL Link the image branch of the pipeline The pipeline is ready after this if gst element link many tee image queue image filter NULL return FALSE 69 if gst element link filtered image filter image sink caps return FALSE gst caps unref caps window ID will be advised to the As soon as screen is exposed sink g signal connect appdata gt screen expose event G CALLBACK expose cb Screen sink gst element set state pipeline GST STATE PLAYING El return TRUI Destroy the pipeline on exit static void destroy pipeline GtkWidget widget AppData appdata This automatically also unrefs all elements Fr the pipelin added to the pipeline I gst element set state appdata pipeline GST STATE NULL gst object unref GST OBJECT appdata gt pipeline Initialize the gui by creating a HildonProgram and HildonWindow void gui initialize HildonProgram program HildonWindow window int argc char argv gchar example name g thread init NULL 70 Initialize GTK gtk init argc argv Create HildonProgram and set application name program HILDON PROGRAM hildon program get instance g set application name example name Create the toplevel HildonWindow window HILDON WINDOW hildon window new
5. 3 3 Different approaches for video conferencing The system envisioned defined a software application that would perform audio amp video communication between two N810 or between one N810 and any other device conceivable in a simple reliable and straightforward manner The user interface provided on the N810 would be intuitive user friendly and clean This requirements definition leaves a lot of room for creativity regarding the system used to perform this communication No appropriate off the self solutions were known at the start of this project so researched focused on finding frameworks and platforms that would be convenient for developing a custom made solution The most noteworthy options explored will be discussed in the following text 45 SERVER LESS POINT TO POINT VIDEO CONFERENCING The first option explored was the one that seemed most basic having a point to point communication established between tablets One application that was doing almost this was Peekaboo 28 an open source application developed as a school project Still this application was developed for the N800 and included just basic one way streaming without NAT traversal 29 At this point research focused on establishing the feasibility of developing a new video conferencing application from scratch Advantages Disadvantages Relatively easy to build Not robust communications would No need to have aserve running on not work properly thro
6. AVR que ser usado para generar las sehales PWM para el control de los servos del sistema de giro y balanceo Adicionalmente se usar una tarjeta impresa donde se incluir toda la electr nica de adaptaci n de potencia para generar los niveles de alimentaci n necesarios para los dem s elementos del sistema Esta tarjeta tambi n dispondr de una conexi n a bater a para obtener potencia o para recargarla dependiendo de si el robot est conectado o no a una toma de corriente el ctrica Tambi n se decidi alimentar el tablet de Nokia usando su propio conector de alimentaci n para simplificar el sistema y disminuir la probabilidad de que produzcan da os en el aparato El Nokia N810 es un internet tablet un dispositivo desarrollado por Nokia bajo la gama N de productos No se trata de un tel fono m vil ya que no dispone de ninguna forma para conectarse a la red celular t pica de los tel fonos m viles Sin embargo dispone de conectividad Wi Fi y Bluetooth que le puede proporcionar acceso a Internet en el caso del Bluetooth cuando es utilizado en conjunci n con un tel fono m vil con acceso a Internet La tabla 1 en la p gina 35 proporciona un resumen de las principales caracter sticas del dispositivo 17 Esta l nea de productos de Nokia ejecuta un versi n modificada del sistema Debian GNU Linux llamada Maemo Es un sistema operativo hecho a medida para los internet tablets de Nokia La tarjeta del micro co
7. For example as part of the user interface some virtual buttons could be presented on the screen to allow the user to pan or tilt the robot s head which would be the Nokia itself It could also allow the implementation of a tele controlled system where a remote user controls the movement of the system by sending commands to the software running on the tablet AVR MICROCONTROLLER BOARD The AVR microcontroller board has been developed by Antti Karjalainen at the Department of Automation and Systems Technology of TKK It features an AT90USB162 microcontroller from ATMEL Relevant to this discussion it has already been successfully used within the Laboratory to control sets of servos from Linux machines The only work left would be to adapt the systems and Linux drivers to the Maemo environment Additionally using this board provides the potential to extend the system through the use of the Zigbee network developed under a different project within the Laboratory More information in Gonzalo Zubieta s Final Project POWER SUPPLY BOARD An idea considered has been to have all the power adaptation and electronics concentrated in one board In an initial vision this would include e Electronics that measure the charge of the battery this gives the information to operate the low battery indicator and to operate the 36 recharging of the battery that should stop when a certain voltage level is reached that is the battery is prop
8. Illustration 11 Illustration 12 Illustration 13 Illustration 14 Illustration 15 Illustration 16 Illustration 17 Illustration 18 Index of Illustrations The internet of things 2 ooh 25 Telemedicine comes home 4 esee 26 Nabaztag bunnies 6 ere rre eren re ree 27 1896 telephone Odio 28 Social networking Sites ocoooooooooooom 29 second life logo AL er P e usaha 30 Dona block dada did ma E EMI RS UR 34 vie b Ea P ata 37 Example home view on N810 eese 40 GStreamer overview 20 Loco pasak 41 GStreamer pipeline for a simple Ogg player 22 42 Example application for camera operation 44 Screenshot of implemented solution 49 Concept user interface oo oo 49 Maemo touchscreen areasIA3l seeren 57 Settings MOL 58 Connection setup wizard 20 ooooooooomoooooooo ooooooooooooo 58 Account setup Wisata bahkan 59 Index of Tables Table 1 N810 s technical specifications III 35 Table 2 Futaba S3003 spechficatons en 37 Table 3 Evaluation of server less point to point solution 46 Table 4 Evaluation of icecast solution 46 Table 5 Evaluation of Jabber XMPP soluton 47 Glossary and abbreviations ACC also known as HE ACC High Efficiency Advance Audio Coding AVR microcontroller family developed by ATMEL HTTP
9. maneras de comunicar e interactuar a trav s de la red y muchas m s ver n la luz en el futuro cercano Si enlazamos esta idea con la de los objetos ambientales e inteligentes es claro que artilugios como Ilonani no s lo tendr n un lugar en el mundo de hoy y del ma ana sino que jugar n un papel importante en nuestros hogares lugares de trabajo y de ocio Adicionalmente la tendencia de la industria del software de producir aplicaciones accesibles a trav s del navegador de Internet las aplicaciones web hace que sea m s razonable si cabe pensar que en el futuro todos los dispositivos estar n conectados a la nube proporcionando posibilidades ilimitadas de interacci n y comunicaci n 15 TELE ASISTENCIA No es algo nuevo el hecho de que la poblaci n en los pa ses desarrollados est envejeciendo Se espera que esta tendencia aparezca tambi n en los pa ses en v as de desarrollo Las sociedades envejecidas supondr n una carga muy grande a los sistemas de seguridad social y se tender a buscar soluciones que provean de estos servicios de una manera m s eficiente y barata 14 Si fijamos nuestra atenci n en las nuevas tecnolog as como las mencionadas en el apartado anterior es evidente que muchas de estas soluciones incluir n elementos del rea de las telecomunicaciones En este sentido uno de los usos previstos para Ilonani y para los dispositivos de su clase es el de sistemas de monitorizaci n de uso amigab
10. on your device Tap Next to continue Ej Text i Illustration 17 Connection setup wizard 58 SETTING UP AN ACCOUNT Once both Nokia s have a working WLAN Internet connection you need to configure an account Go back to the Control Panel and select Accounts New and follow the Account setup wizard Control panel Account setup wizard allows you to define new communication accounts Tap Next to continue Bi Illustration 18 Account setup wizard For our proposed setup you will need two GTalk accounts You can create a Google Talk account from the Account setup wizard or by accessing the Google account web page 48 on a web browser You will also need to add each contact to each others contact list in order to do this we recommend that you use GMail or GTalk themselves A 3 Using the system To try out the system make sure both tablets are connected and have managed to authenticate correctly with the GTalk server Use one of the tablets to initiate the call by clicking on the Contacts icon am the Task navigator Select New Internet call in the menu that pops up select the right contact and press the phone button 59 Appendix B Camera operation example program The following listing provides the code used to operate the camera It captures video from the camera and outputs it to the screen include include include include include inc
11. As demonstrated with this work it is possible to videoconference using this tablet Nevertheless Nokia s Internet Tablet does pose some other limitations that might want to be considered If a decision to keep using the N810 was made the next thing to do would be to establish the kind of communication architecture that is best suited for the system An initial research has been presented here but a deeper investigation should be performed in order to evaluate each of the approaches taking also into account the conditions particular to the situation e g previous knowledge of the implementer availability of time etc Finally the code and experience summarized in this document could be reused in the coding of a final application in order to save time and effort 52 11 21 31 4 5 6 7 8 9 10 11 12 13 14 15 References Horizon Report 2009 http www nmc org pdf 2009 Horizon Report K12 pdf checked April 30 2009 TIME magazine Best inventions of 2008 http www time com time specials packages article 0 28804 185274 7 1854195 1854158 00 html checked April 30 2009 Ambient devices philosophy http www ambientdevices com cat philosophy html checked April 30 2009 Telemedicine comes home The Economist Technology Quarterly June 5 2008 http www economist com displaystory cfm story id211482580 amp CFID 52750040 amp CFTOKEN 80324836 checked April 3
12. life logo 13 30 e Online virtual worlds provide users with the possibility of creating a virtual personality logging into a virtual world and interacting with virtual objects and personalities that are in turn controlled by other human beings These are just the point of the iceberg Many more ways of communicating and interacting exist on the web and many more will see the light in future years If we couple this with the idea of smart objects and ambient devices it s clear that conceptions like Ilonani not only have a place in today s and tomorrow s world we can expect to have them all around in our homes our working places and during our leisure time Added to this the current trend in the software development industry of making applications available through a browser web applications will make it even more reasonable to think that all devices will be connected to the cloud providing limitless possibilities of interacting and communicating ELE ASSISTANCE It S not new to us the fact that the population in developed countries is becoming older This trend is expected to appear in developing countries as well Aged societies will be a great load to social security systems and the tendency will be to search for solutions that enable social services in a cheaper and more efficient way 14 If we turn our attention to new technologies like the ones mentioned in the previous section it s clear that some of these solutions
13. m nimo de un bot n de encendido apagado y unos botones para controlar el movimiento de giro y balanceo No obstante tambi n se estudiaron las ventajas de incluir unos botones por software aprovechando que el Nokia 810 proporciona pantalla t ctil La aplicaci n software INTRODUCCI N La visi n para el desarrollo de la aplicaci n de software inclu a la siguiente funcionalidad e Video conferencia bidireccional fiable Interfaz de usuario sencilla e Para controlar y configurar la video conferencia 18 e Para controlar el movimiento del mecanismo de giro y balanceo Al comienzo del proyecto no estaba comprobado que el Nokia N810 fuese capaz de soportar video conferencia bidireccional de manera robusta Aparentemente no exist a ninguna soluci n de video conferencia que funcionase de f brica y diversas opciones ya hab an sido investigadas dentro del Grupo de Investigaci n de Tecnolog a de Autom tica 21 Como no parec a razonable suponer que el dispositivo no fuese capaz de realizar video conferencia se invirti un gran esfuerzo en averiguar c mo conseguirlo Esto result ser m s complicado de lo que cab a esperar El resultado de esta investigaci n s incluye una configuraci n b sica que permite la video conferencia pero no de la forma prevista EXPLORANDO LA PLATAFORMA MAEMO Y GSTREAMER La plataforma Maemo es el nombre con el que se conoce a la pila de software desarrollada para los inter
14. take their services for granted Our mobile phone that will have become our mobile computer by that time will provide ubiquitous video conferencing capabilities and will be able to guide us using GPS technologies It will carry or have access to our whole music collection and will be able to talk to our car s computer and stream a play list of songs custom made to match our current state of mind Most probably computing power storage capacity and intelligent reasoning will be distributed among this assortment of smart objects Their interconnection will be seamless and natural to us 1 25 All this interconnection brings the possibilities for communication Communication as we say between objects between persons and between objects and persons New unimaginable ways of Human Machine Interaction will be devised tending to more natural and intuitive methods It will be assumed that objects interact together and exchange information information that empowers objects to provide better services to humans Most probably society will also be more open and communicative The availability of information will be ubiguitous This is just a consequence of interconnectedness if all things and systems are connected they can share information better which makes it available for more systems and persons and in more places This information will not only be objective information about facts news or business available in your local area it
15. the server an on each of the tablets clients In 1998 Jeremie Miller started the Jabber project aimed at setting up the technology to enable Instant Messaging and Presence using open source software and open standards In 2000 a first version of the first Jabber server jabberd was released This early Jabber protocol evolved to XMPP which is as Jabber was an open XML based protocol aimed originally at instant messaging and presence information This means that many projects developing both servers and clients have arisen 36 Nowadays XMPP has been extended which shouldn t be a surprise since the X is for eXtensible to support voice video or file transfer Google in collaboration with the XMPP Standards Foundation developed Jinggle to allow peer to peer signalling for these kind of multimedia interactions 37 Following a different path we have SIP which stands for Session Initiation Protocol This is a TCP IP based signalling protocol used for setting up and tearing down multimedia communication sessions It fits into the application layer of the OSI reference model 38 though it is sometimes placed under the session layer SIP is quite general purpose and independent of the transport protocol used to send and receive the actual data which could be TCP UDP or SCTP It s based on the same technologies that power the Internet so it s certainly a good option to take into account In this implemented solution we us
16. will involve telecommunication systems and networks In this regard one of the visions for Ilonani and similar devices is the use as user friendly monitoring systems Aged people need user friendly devices with big buttons and intuitive interfaces Carers could use devices like Ilonani to keep an eye on elderly people The use of these kind of devices will also provide useful for the area of tele medicine Having objects that allow us to interact and exchange information in ways that support services like tele medicine and tele assistance will surely be a trend to watch out in the near future 31 Chapter 2 Ilonani the concept 21 The concept and goals Having the previous section in mind the goal for the project started by designing and constructing a table top robot providing a friendly user interface for elderly people to aid in the supply of tele assistance services The list of goals pursued has been e Research the possibility of using Nokia s N810 internet tablet as the platform for the robots brain and face Finding out if video conferencing is feasible taking into account different application scenarios and if it provides potential for a friendly enough user interface given our requirement that it should be usable for elderly people e If the Nokia is sufficient research what possible solutions exist what different paths can be followed to create a working system and implement the best solution e Design
17. window gtk dialog error Failed to initialize pipeline g signal connect G OBJECT appdata window destroy G CALLBACK destroy pipeline amp appdata 72 Begin the main application gui run appdata program appdata Fr the gstreamer resources window lemen El to the pipeline will be freed return 0 ts added automat tically 73
18. 0 2009 http www violet net checked April 30 2009 http www nabaztag com checked April 30 2009 http ambientdevices com checked April 30 2009 http www violet net ztamps rfid tag that give powers to your objects html checked April 30 2009 http www violet net mirror give powers to your objects html checked April 30 2009 http en wikipedia org wiki File 1896 telephone jpg checked April 30 2009 http en wikipedia org wiki History of telecommunication checked April 30 2009 http en wikipedia org wiki Internet checked April 30 2009 http secondlife com checked April 30 2009 The shape of things to come Population Action International http www populationaction org Publications Reports The Shape of Things to Come Summary shtml checked April 30 2009 http en wikipedia org wiki Internet Tablet checked April 30 2009 53 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 http en wikipedia org wiki Nokia N810 checked April 30 2009 http europe nokia com find products devices nokia n810 specifications checked April 30 2009 http europe nokia com find products nseries checked April 30 2009 http Maemo org intro white paper checked April 30 2009 http en wikipedia org wiki Maemo operating system checked April 30 2009 2008 A33 Omaishoitajan kuvapuhelinjarj
19. 4 The user should familiarize himself with the platform by browsing through the Internet Tablet 2008 edition User Guide 44 and by playing around with the different buttons and menus A 2 Setting up the system In order to get this solution running we need the following 57 e Two Nokia Internet Tablets running the appropriate version of Maemo In this project two N810 running Maemo Diablo release number 5 2008 43 7 were used An appropriate version of Maemo should include an up to date version of Nokia s built in VoIP client e A working WLAN and a firewall routing configuration that allows VoIP communications In particular it should allow authentication and use of GTalk accounts SETTING UP A CONNECTION The first thing to do is to connect both tablets to the wireless LAN Once the tablet has booted click on the Application menu icon from the Task navigator My selection A Control panel SES iJ SE Internet 3r Application manager Communication T Backup Restore Utilities Connection manager Settings KY Handwriting recognition Illustration 16 Settings menu In the menu that pops up Illustration 16 select Settings gt Control Panel and then inside the Control Panel select Connectivity Connections gt New and follow the Connection setup wizard Illustration 17 Control panel Connection setup Welcome Connection setup wizard allows you to define Internet access points connections
20. Connect destroying of the main window to gtk main quit g signal connect G OBJECT window delete event G CALLBACK gtk main guit NULL void gui run HildonProgram program HildonWindow window Show the window and widgets it contains and go to the main loop gtk widget show all GTK WIDGET window gtk window fullscreen GTK WIDGET window gtk main int main int argc char argv AppData appdata GtkWidget hbox vbox 71 Initialize and create the GUI gui initialize amp appdata program amp appdata window amp argc amp argv Camera example vbox gtk vbox new FALSE 0 hbox gtk hbox new FALSE 0 gtk box pack start GTK BOX hbox vbox FALSE FALSE 0 appdata screen gtk drawing area new gtk widget set size request appdata screen 500 380 gtk box pack start GTK BOX vbox appdata screen FALSE FALSE 0 Add hardware button listener to application g signal connect G OBJECT appdata window key press event G CALLBACK key press cb appdata window Connect signal to X in the upper corner g signal connect G OBJECT appdata window delete event G CALLBACK gtk main quit NULL Initialize the GTK pipeline if initialize pipeline amp appdata amp argc amp argv hildon banner show information GTK WIDGET appdata
21. El case HILDON_HARDKEY DOWN 62 hildon banner show information GTK WIDGET window Navigation Key Down return TRUI El I EY EFT case HILDON HARDK hildon banner show information GTK WIDGET window Navigation Key Left return TRUI El case HILDON_HARDKEY RIGHT hildon banner show inform Navigation Key Right return TRUI El case HILDON_HARDK EY S EI ECT ation GTK WIDGET window hildon banner show information GTK WIDGET window Navigation Key select return TRUI El case HILDON HARDKEY FULLSCR EEN gtk window fullscreen HIL DON WINDOW window hildon banner show information GTK WIDGET window Screen return TRUI EN case HILDON HARDKEY INCR EASE hildon banner show information GTK WIDGET window Increase zoom in return TRUI El EY ECR EASE case HILDON HARDK NULL NULL NULL NULL NULL Full NULL 63 hildon banner show information GTK WIDGET window NULL Decrease zoom out return TRUE El case HILDON_HARDKEY ESC hildon banner show information GTK WIDGET window NULL Cancel Close return FALSI return TRUI El E Callback that gets called whenever pipeline s message bus h
22. Flickr y Legal Torrents Ofrecen contenido creado por los propios usuarios del sistema Los contenidos del futuro ser n distribuidos de esta manera a diferencia del modo actual en que una gran productora de contenidos realiza todo el esfuerzo creativo para que los usuarios luego consuman los resultados de manera pasiva El contenido se vuelve interactivo y los usuarios aportan contenido original y remezclan el contenido aportado por otros usuarios Tambi n podemos esperar que el futuro sea tele todo Si las cosas siguen evolucionando como hasta ahora resolver los problemas de CO2 sobre problaci n consumo excesivo de energ a y dem s quiz puedan ser resueltos con cosas como la tele medicina de manera que los pacientes reciben atenci n en casa o en un hospital cercano sin tener que desplazarse grandes distancias tele trabajo de manera que desaparezcan las horas puntas de tr fico en las ciudades etc En el mundo del futuro dispositivos como ILONANI ir n jugando un papel cada vez m s importante NABAZTAG OBJETOS INTELIGENTES DISPOSITIVOS AMBIENTALES Y COMPUTACI N UBICUA Uno de los proyectos que inspir la visi n de este proyecto fin de carrera fue Nabaztag Nabaztag es un objeto de electr nica de consumo con forma de conejo Se conecta a Internet a trav s de una conexi n inal mbrica y puede ser configurado y programado para hacer cosas como consultar e informar al usuario sobre previsiones meteorol gicas comprobar e
23. ILONANI A table top robot for remote interaction Department of Automation and Systems Technology Helsinki University of Technology Ra l Rodr guez Pearson 2009 Table of Contents Index of IAS TACOS AA nece lao date D Index of Tables emas Sana 7 Glossary and abbreviations eere eere eene tan take rear an aua van 9 Resumen en espanol cc cececceccsccecceccecsecsecseeeceeceecseeeceeceeceenes 11 o aan a ni S FoU d dag intende 11 Visi n y estado del arte ieceesee tere ttr Ee HERE tae eran 11 Nabaztag objetos inteligentes dispositivos ambientales y computaci n iinbur e E 12 Telecomunicaciones redes sociales y entretenimiento 2 0 13 IAEA saaseeeisausaevagdaau sang tess 16 onani Tee DE 16 Concepto y obietivos Woo aan 16 Diagrama de blooues oo maan 17 La aplicaci n software 18 Introducir dis 18 Explorando la plataforma maemovgstreamer 19 E A O Bere 20 Resu ltadO Seiner renerne pes o iii 20 Trabajos TULUTOS ETT 21 PINS WAC aa aries adios 23 Chapter Kate ee eege EEN 25 sn an MUG bulan 25 1 2 State e EE 27 Nabaztag smart objects ambient devices and ubiguitous computing 27 Telecommunication trends social web and entertainment 2 0 28 IEEE Ie EAR 31 Chapter 2 Ilonani the concept eee rre rnnt nt nnn non 33 2 1 The concept and e e EE 33 Extensibility and basis for future work 33 9 2 Blo
24. Mnet 46 Se estima que esta opci n merecer a la atenci n de futuros trabajos que pretendan continuar el iniciado bajo este proyecto En el Appendix B se incluye el c digo fuente desarrollado para implementar la primera opci n explorada de video conferencia sin servidor central Como ya se ha comentado este camino fue abandonado porque se estim que faltar a tiempo para llevarla a cabo con rigor A la vista de la soluci n implementada finalmente podr a parecer que el trabajo realizado bajo este proyecto habr a sido poco productivo Para ser justos hay que tener en cuenta que muchos descubrimientos tuvieron que tener lugar hasta llegar al punto en el que se pudo implementar dicha soluci n Gran cantidad de esfuerzo y energ a tuvo que invertirse en identificar problemas de conectividad derivados de la infraestructura de la que se dispon a en el laboratorio incluyendo problemas derivados del NAT y los corta fuegos 20 TRABAJOS FUTUROS Puede que sea necesario revisar la visi n detr s de Ilonani Sin embargo se estima que ser a interesante continuar el trabajo realizado en este proyecto Muchas falsas pistas y caminos sin salida han sido descubiertos y tenerlos en cuenta en el futuro ser a adecuado Una de las cosas que convendr a hacer es estudiar la idoneidad de usar el Nokia N810 como plataforma Aunque se consigui elaborar una soluci n de video conferencia puede que sea buena idea investigar otras opciones s
25. R profiles supported HID FTP DUN GAP SPP HSP SAP and OPP e USB high speed for PC connectivity e 3 5 mm stereo headphone plug Nokia AV Connector Table 1 N810 s technical specifications 17 The tablets run a modified version of Debian GNU Linux called Maemo It S a custom made operating system for Nokia Internet Tablets Similarly to other tablet operating systems it features a home screen with a menu 35 bar an application launching area and a customizable desktop where different applets ranging from RSS readers to clocks can be run It s heavily based on the GNOME project from which it draws many libraries GUI components and application frameworks like GStreamer used for multimedia handling It uses Matchbox as window manager and the GTK based Hildon application framework for GUI elements 20 Maemo offers a very wide range of software applications from telecommunication applications for Internet instant messaging and VoIP office and media applications to games and a huge range of applications common in Linux desktop PCs As shown in Illustration 7 the N810 is intended to be connected with an AVR microcontroller card developed in the Automation Technology Laboratory using a USB interface The goal is to implement some code to control the movement of the turn and tilt mechanism from the tablet This code should be developed so that it will be embeddable in applications developed for the N810
26. The selection is so huge that it s difficult to cover Nevertheless an effort to provide an overview of the current state will be made in the following lines W EIFE Ofriendster Slashdot Amrv Wii orkut a del icio us iy easy FLOCK es ni pe gt Ouders Online n KO ESKEURIG SIMIO WIR pM You Ti flickr pem pu pe m sma GG 8 Ez H Kchinay Com mess am rocks com Y SQUEN E 15s EEM facebook mm EN ME AEN YEEJEE di neopets Y tribe QUe O um p FoceRen a YuMe net 29 Wool SchoolBANK dedgebatt TEED CT Illustration 5 Social networking sites The main thing that we should take into account in order to understand the current state of telecommunications is the idea of networks A network in this context is a system of interconnected entities With the invention of the telegraph a network of lines through which to send messages was created The invention of the telephone provided further push for the development of these telecommunication networks Nowadays these original networks improved with new technology provide the basis on with Internet the network of networks is built 12 The trend will probably be to have more and more telecommunication services running on top of this network To this regard we can observe today applications like the following 29 Instant messaging programs that enable text chatting in almost real time VoIP services that route voice calls through the packet swi
27. US COMPUTING One of the projects that inspired the vision for this thesis was Nabaztag Nabaztag is a rabbit like consumer electronics device manufactured by Violet 5 It can connect to the Internet through a wireless connection and be programmed and configured to do things like check and inform about weather forecasts check email and read messages out loud read RSS feeds play streaming music and much more 6 6 6 6 Tv vr 7 e eee eee 5 Illustration 3 Nabaztag bunnies 6 Nabaztag is one of a new kind of consumer electronics On one hand it can be considered as an ambient device and on the other it s also a smart object Both concepts are quite recent and they promise huge potential for new applications and markets Ambient devices are a new genre of consumer electronics that make use of pre attentive processing These is the capacity of the brain to process information without having to pay explicit attention These devices deliver information in a non intrusive way The idea behind these devices was conceived in MIT s MediaLab and resulted in a spin off called Ambient Devices 7 One of the products offered by this company is the Orb which glows with different colours to display real time stock market trends traffic congestion weather forecasts or any other Ambient information channel information streams provided by Ambient Devices Objects that have some electronics that make them smarter a
28. Widget widget GdkEventExpose event gpointer data Tell the xvimagesink ximagesink the x window id of the screen widget in which the video is shown After this the video is shown in the correct widget gst x overlay set xwindow id GST X OVERLAY data 65 GDK WINDOW XWINDOW widget window return FALSE Initialize the the Gstreamer pipeline Below is a diagram of the pipeline that will be created si Screen Screen x queue gt sink gt Display Camera CSP Tee Jare gt Filter gt IX Image Image Image x queue filter gt sink gt JPEG file static gboolean initialize pipeline AppData appdata int argc char argv GstElement pipeline camera src screen sink image sink GstElement screen queue image queue m GstElement csp filter image filter tee GstCaps caps GstBus bus Initialize Gstreamer gst init argc argv Create pipeline and attach a callback to it s message bus pipeline gst pipeline new test camera 66 bus gst pipeline get bus GST PIPELINE pipeline gst bus add watch bus GstBusFunc bus callback appdata gst object unref GST OBJECT bus Save pipeline to the AppData structure appdata gt pipeline pipeline
29. a e void gui initialize HildonProgram program HildonWindow window int argc char argv gchar example name e void gui run HildonProgram program HildonWindow window e int main int argc char argv The initial version of the example used a stream format that produced unsatisfactory results After a bit of tweaking the end final format found to produce best results was caps get caps mew sample UNTIL olexoy aeter xe 19 ee 6 TVE INI 392 height E wwen INT 288 vsot Greiner INT 24 42 depth G TYPE INT 24 framerate GST TYPE FRACTION 15 1 NULL After setting up the SDK and compiling the executable we need to transfer it to the tablet For this we need to set up USB networking between the tablet and our Linux host The steps that need to be followed are Make sure that rootsh xterm and openssh are installed on the tablet check them out from the application catalogue or the maemo org website Open the terminal window on the tablet Applications gt Utilities gt X Terminal and execute the command sudo gainroot On the tablet edit etc network interfaces so that it includes the following lines auto usb0 iface usb0 inet static acowess 1 97 LEE LES nenas 2552552350 gateway 192 168 2 14 On the Linux host make sure that the kernel has usbnet enabled and edit etc network interfaces so that it includes the following lines mapping hotplug script grep ma
30. and build a physical prototype of the robot including a charging base a case hosting all the necessary electronics and a turn and tilt mechanism The original vision also included the functionality of tracking the speaker with the camera but after some research this was deemed too difficult Additionally the original project was split in two so this project will actually take care of the first two goals concerning all the issues around the video conferencing solution and the N810 More information about the design and building of a physical prototype will be found in Gonzalo Zubieta s Final Project which does not exist at the time of these writting EXTENSIBILITY AND BASIS FOR FUTURE WORK Another objective that has been kept in mind is trying to develop a design that will be extensible Since the beginning it has been obvious that a lot of great ideas of development and application for Ilonani would have to be set aside since it would not be possible to implement all of them in the time given Pursuing this goal means that a lot of extra research has been done in order to set the basis for future projects wanting to build on this one Hopefully it also means that the information written in this document will be easy to follow and put into practice 33 2 2 Blocks description The system will consist of the blocks depicted in Illustration 7 As already stated Nokia s N810 will be the main brain and face of the robot It wi
31. aneras Por ejemplo Blogs es muy sencillo crear un espacio virtual donde expresar opiniones o a trav s del cual mantener al d a al mundo sobre nuestras ltimas ocurrencias Myspace ha adquirido gran popularidad entre adolescentes de todo el mundo y ha supuesto una especie de est ndar de p ginas web de artistas y m sicos de todos los niveles Las redes sociales como Facebook son prueba de que la gente est dispuesta a compartir cierta cantidad de informaci n privada a cambio de la posibilidad de reconectar con gente en su vida La mensajer a instant nea la voz sobre IP y el correo electr nico son versiones r pidas y elegantes del tel grafo y el tel fono acercando a gente de todo el mundo e Portales como Youtube o Legal Torrents abren las puertas a nuevas formas de comunicaci n en las cuales la gente genera contenidos audiovisuales con fines art sticos de entretenimiento o para comunicar un mensaje Cualquier persona puede escribir y publicar un libro usando servicios como Lulu que pueden publicar contenidos bajo pedido La tecnolog a que usan hace posible que sea viable la publicaci n incluso de obras que vayan a tener poca tirada e Los mundos virtuales online proporcionan la posibilidad de crear un avatar una personalidad virtual y de interactuar con objetos y otras personalidades virtuales controladas a su vez por otras personas Estos ejemplos son s lo la punta del iceberg Existen muchas otras
32. as a message static void bus callback GstBus bus GstMessage message AppData appdata gchar message str const gchar message name G Error error Report errors to the console if GST MESSAGE TYPE message GST MESSAGE ERROR gst message parse error message amp error amp message str g error GST error sWn message str g free error g free message str Report warnings to the console 64 if GST MESSAGE TYPE message GST MESSAGE WARNING gst message parse warning message amp error amp message str g warning GST warning s n message str g free error g free message str See if the message type is GST MESSAGE APPLICATION which means that the message is sent by the client code this program and not by gstreamer if GST MESSAGE TYPE message GST MESSAGE APPLICATION Get name of the message s structure message name gst structure get name gst message get structure message The hildon banner must be shown in her callback is because the bus called in the main thread and calling GUI functions in gstreamer threads usually leads to problems with X server Callback to be called when the screen widget is exposed static gboolean expose cb Gtk
33. asses message bus media type negotiation plugin system utility libraries language bindings protocols sources formats codecs filters sinks file alsa avi mp3 converters alsa http V412 mp4 mpeg4 mixers xvideo rtsp tcp udp ogg vorbis effetcs tcp udp gstreamer plugins 3rd party gstreamer includes over 150 plugins plugins Illustration 10 GStreamer overview 26 architecture a pipeline architecture a mechanism for media type handling negotiation over 150 plugins and a set of tools 25 According to the official documentation plug ins can be classified into protocols handling sources for audio and video formats parsers formaters muxers demuxers codecs filters and sinks for audio and video Illustration 10 presents a graphical overview of the framework The three basic objects in GStreamer are elements pads and bins Elements are the most important class of objects they provide some basic functionality which could be reading of data from a file decoding of this data outputting this data to your sound card and are normally chained together forming a pipeline to provide some global functionality like playing an audio file Pads provide elements input and output Pads have capabilities that define what kind of data can flow through them Pads can be considered as plugs with different shapes depending on their capabilities that can be used to connect elements together Tw
34. cks descriptiva eddie 34 Nokia s internet tablet the N810 oo ooooWoo ooh 34 AVR microcontroller board aa 36 Power supply board oo Wa 36 Se e E 37 el EE 37 BU EE 37 Chapter 3 The software application 39 3 buet MEN ANN BB naa 39 3 2 Bxploring the plato ie ba AA MA enam in Aan 39 Introduction to the GStreamer framework 40 Example application for camera operation ooooooc 42 Using GStreamer tools to find the right opene 44 korake KOKAKO a PAEA EE TEA AE E 45 3 3 Different approaches for video conferencing 45 Server less point to point video conferencing ooooo 46 Using Icecast Server EEN 46 Using Jabber XMPP aaee eet bea Sena en una 47 3 4 Implemented solution 48 3 5 Wrapping it up with some user mterface ce sec ee eee eees 49 Chapter E Concl siQDs s ur o od ES 51 d RESAPAN DAR 51 42 UU WOK EE 02 e 53 Appendix A User manual 57 A 1 Getting to know the system 57 AA Seung Up Lie SSL secca AA RU Kai 57 Setting up CODTIecLiOn i kesan cian annie ka EDEN a ERR E nanas 58 Setting UP n aCccoUull 2 rt ae e er tare oaa nan Faro Debe Vau EN Ta DER aa 59 A3 Using the systemie sid A der 59 Appendix B Camera operation example program 61 Illustration 1 Illustration 2 Illustration 3 Illustration 4 Illustration 5 Illustration 6 Illustration 7 Illustration 8 Illustration 9 Illustration 10
35. ed a set up including Google accounts Nevertheless as the reader might have already noticed it would have been quite straightforward to set up a private Jabber server running on the WLAN which would have prevented us from having to count on an external service provider The resulting video conferencing experience should remain the same to the user whichever of this two 48 solutions is employed Using an Asterisk 43 server with SIP Jabber or even GTalk accounts could have worked also Many other possibilities exist and were explored in the research done for this project The reason why the GTalk solution was chosen has to do with the resources available after many unfruitful attempts not many spare time was left and configuring this setting proved to be the guickest solution A screenshot of the result can be seen on Illustration 8 ra 7 Illustration 13 Screenshot of implemented solution 3 9 Wrapping it up with some user interface The initial vision for Ilonani was to have a clean and simple application including just the most important functionality The intention was to have a big video display with simple and visible user interface including big buttons The concept looked something like Other s IP number here Illustration 14 Concept user interface The concept presented in Illustration 9 should also include some space for the buttons that would be used to move the servos if this solu
36. elieve that a server client architecture makes for a better solution To this respect a solution that was only briefly investigated and hence not included in this study was the use of the GIMnet communications infrastructure 46 We believe that this solution deserves some more investigation Finally some source code is also included Appendix B This code represents the initial research done following the line of server less videoconferencing It seemed at the moment to be a good idea in order to get acquainted with the Maemo Platform The idea was to quickly build on that code to create the application using some of the server architectures outlined later As already mentioned any projects wanting to continue the work of this project could start by building on top of this code The reason no more effort was devoted to this part was that time was running out and it was deemed convenient to move onto different grounds in order to be able to provide a more comprehensive product at the end of the project Hindsight might make it look as though the progress done in this project was little and without any clear direction This has some truth to it but it 51 should be taken into account that many discoveries had to be made On the first hand it wasn t clear that videoconferencing was possible with the N810 though it seem that it should secondly after searching the web no reports were found of people trying to do this all of the l
37. enviar un SMS o un MMS usando su PDA o una video conferencia usando su cliente jabber Las posibilidades son tan numerosas que son dif ciles de cubrir El concepto fundamental a tener en cuenta es el de red Una red en este contexto es un sistema de entidades interconectadas Con la invenci n del tel grafo se cre una red de l neas a trav s de las cuales pod an enviarse mensajes La invenci n el tel fono proporcion un empuje adicional al desarrollo de estas redes de telecomunicaciones A d a de hoy estas redes originales han sido mejoradas con la tecnolog a actual proporcionando la base para Internet la red de redes 12 La tendencia ser la de que m s y m s servicios est n ejecut ndose sobre este soporte de interconexiones Una muestra de los servicios que existen a d a de hoy son e Programas de mensajer a instant nea gue permiten la comunicaci n a trav s de chats Sistemas de VoIP voz sobre IP que enrutan las llamadas a trav s de redes de conmutaci n de paquetes con una calidad de servicio m s que aceptable Streaming de video desde productores de contenido o entre usuarios que se hace m s com n a medida que las tecnolog as VoIP comienzan a soportar la transmisi n de video de manera m s generalizada 14 Esta ubicuidad de las redes de telecomunicaciones ha proporcionado un terreno fertil para el florecimiento de nuevas interacciones sociales Las personas pueden interactuar de nuevas m
38. erly charged Low battery LED indicator Drivers for servos Power adaptation to provide supply for AVR microcontroller board Connector where a 220V AC to 12V DC transformer could be plugged in to provide connection to the mains Connectors for battery AVR microcontroller board and servos Not all features might be implemented For the final version and a more in depth description go to Gonzalo Zubieta s Final Project BATTERY From a preliminary study the peak current demanded by each servo when blocked is around 1 3 Amperes On the other hand nominal consumption of the whole system was found to be around 1 Ampere The initial specification required batteries to support 6 hours of normal operation before needing a recharge Details will follow in Gonzalo Zubieta s Final Project SERVOS The servos used to build the turn and tilt mechanism are the classical Futaba S3003 They provide an affordable and reliable solution Using a PWM signal they can be position controlled Dimension 40 4 mm x 19 8 mm x 36 0 mm Weight 37 2g Operating Speed 0 23 sec 60 4 8V 0 19 sec 60 6 0V Output torque 3 2 kg cm 4 8V 4 1 kg cm 6 0V Table 2 Futaba S3003 Illustration 8 S3003 servo specifications BUTTONS The idea of adding physical buttons was also pondered On off and movement buttons seem to be a minimum They would add usability but they would also make the system more complex Hardware butto
39. estelma Simo Heimonen 2008 http gstreamer freedesktop org data doc gstreamer head manual h tml section intro basics bins html checked April 30 2009 http maemo org maemo release documentation maemo4 1 x checked April 30 2009 http en wikipedia org wiki Gstreamer checked April 30 2009 http gstreamer freedesktop org data doc gstreamer head manual h tml checked April 30 2009 http gstreamer freedesktop org data doc gstreamer head manual h tml chapter gstreamer html checked April 30 2009 GStreamer Application Development Manual http gstreamer freedesktop org data doc gstreamer head manual h tml index html checked April 30 2009 http peekaboo garage maemo org checked April 30 2009 http en wikipedia org wiki NAT traversal checked April 30 2009 http en wikipedia org wiki Icecast checked April 30 2009 http maemo org downloads OS2008 checked April 30 2009 http en wikipedia org wiki Ejabberd checked April 30 2009 http en wikipedia org wiki Erlang programming language checked April 30 2009 http wiki jabber org index php XMPP Case Studies checked April 30 2009 http xmpp org services checked April 30 2009 54 36 37 38 39 40 41 42 43 44 45 46 47 48 http xmpp org tech checked April 30 2009 http code google com apis talk open communications html checked April 30 2009 http en wikipedia org wiki O
40. etos interconectados la Internet de las cosas Esto abre el camino para multitud de aplicaciones nuevas por ejemplo un detector de humo podr a pedir a los electrodom sticos de una casa que se apagasen evitando quiz que el fuego fuese a peor una nevera inteligente preparada para leer etiquetas RFID podr a alertar al usuario de que hay ciertos alimentos que est n a punto de caducar o de enviar una lista de la compra con los objetos agotados al email del usuario Esto nos acerca a otra tendencia interesante Las etiquetas RFID parecen una buena forma de crear esa red de objetos interconectados Los usuarios pueden comprar paquetes de etiquetas que pueden ser programadas y adjuntadas a los objetos para llevar a cabo ciertas acciones Por ejemplo los Ztamp s de Violet 8 permiten al usuario pegar una etiqueta a un paraguas y obtener una previsi n meteorol gica en la pantalla del ordenador con solo acercarlo al lector de etiquetas el Mir ror 9 TELECOMUNICACIONES REDES SOCIALES Y ENTRETENIMIENTO 2 0 Hoy en dia asumimos como normal gue cualguiera puede ser contactado desde cualguier sitio y a cualguier hora pero no siempre fue asi Antes tele comunicarse no era algo tan com n si uno quer a comunicarse con alguien se establec a una cita y se trataban las cosas cara a cara Actualmente la tecnolog a permite la comunicaci n entre personas separadas por muchos kil metros Esto abre tambi n multitud de posibilidades mucha
41. f building a video conferencing system using this hardware Additionally different possible video conferencing architectures and servers have been researched briefly in order to provide a stepping stone for future projects The results of the project are double on one hand a system was put in place to support video conferencing though not in the form anticipated on the other the biggest deliverable coming from the effort invested in this project corresponds to the knowledge that could be used in future projects and that is summarized in this document 23 Chapter 1 Introduction 1 1 The vision In the future our homes work and leisure places will be inundated by smart devices and systems embedded with connectivity capabilities 1 It s already accepted as common the fact that most of the devices we carry or interact with are built with at least some kind of basic electronics including in most cases some type of programmable micro controller In the future as these technologies get better and better we can expect more powerful and functional devices Illustration 1 The internet of things 2 These devices will be expected to interconnect between each other and to bigger telecommunication networks like the Internet They will make use of the concepts of ambient devices 3 providing information and interaction capabilities in a non intrusive manner We will become oblivious to the fact that they exist and will
42. ferencing functionality but as it will be explained in this chapter not in the form initially envisioned A great deal of the effort invested in this project did not produce specific deliverables but was needed in order to acquire the knowledge that made the following steps possible In order to save future projects from having to invest this effort again this chapter attempts to summarize this knowledge The chapter starts with a brief overview of the platform Maemo and the GStreamer framework and a discussion of different approaches that could be followed to implement a video conferencing system A description of the system that was put into place is presented followed by some user interface considerations made at the end of the chapter 3 2 Exploring the platform Maemo Platform is the name given to the the software stack developed for Nokia Internet Tablets It includes the Maemo operating system and the Maemo Software Development Kit 39 Maemo is the operating system for the Nokia Internet Tablet line of handheld computers Similar to many handheld operating systems it features a Home screen the central point from which all applications and settings are accessed The Home Screen is divided into areas for launching applications a menu bar and a large customisable area that can display information such as an RSS reader an Internet radio player or a Google search box TET C 10 C IP 192 168 1 107 I
43. inks consulted pointed to the use of basic GStreamer lines that would enable the construction of such a system Only after thorough research the different possibilities started to be uncovered Additionally not until the last month of the project the possibility of performing videoconferencing with the suggested implemented solution was discovered This was in part due to the belief bias 45 but also because of technical difficulties involving firewalls and routers at the place were the research was developed Even the GTalk built in communications client solution was deemed not useful at some point in the research since it seems but was not confirmed that videoconferencing using this configuration is only supported between tablets and not between a table and a normal computer 4 2 Future work The vision of Ilonani a tablet top robot for remote interaction might want to be revised Nevertheless if it s considered to be current when new work is to be undertaken it might be useful to follow the work done on this project since many false trails have been uncovered and much work could be reused On the other hand some amount of work would have to be done on studying the convenience of using a different platform different from the N810 This was considered at some point in this project when it wasn t clear that videoconferencing was going to be achieved but discarded due to lack of time to restart research on a different platform
44. ipo f sico del robot incluyendo una base de carga un chasis que alojase los componentes electr nicos y un mecanismo de giro y balanceo La visi n original tambi n inclu a la funcionalidad de seguimiento del interlocutor con la c mara Despu s de un poco de investigaci n se estim que resultaba demasiado complicado y fuera por tanto del alcance de un proyecto fin de carrera como este Adem s el proyecto original fue dividido en dos El proyecto descrito en este documento se har cargo de los dos primeros objetivos La informaci n relativa al dise o y construcci n de un prototipo f sico se encontrar en la documentaci n del proyecto final de carrera de Gonzalo Zubieta Otro de los objetivos que ha sido tenido en cuenta es el de tener en cuenta en la fase de diseno la extensibilidad del sistema Desde el principio ha resultado evidente que multitud de ideas de aplicaci n y desarrollo de Ilonani tendr an que ser dejadas de lado puesto que no ser a posible implementar todas bajo este proyecto Para conseguir que el resultado de esta investigaci n y disefio sea extensible se ha realizado un gran esfuerzo para que de verdad pueda servir como base para el trabajo de futuros proyectos DIAGRAMA DE BLOQUES El sistema estar constituido por los bloques mostrados en la figura 7 p gina 34 como ya se ha mencionado el Nokia N810 ser el cerebro y la cara del robot Estar conectado por USB con un micro controlador
45. l email y leer los mensajes en alto leer archivos de sindicaci n RSS reproducir m sica en streaming y mucho m s 12 Por un lado puede ser considerado como un dispositivo ambiental y por otro tambi n es un objeto inteligente Ambos conceptos han sido creados en los ltimos a os y proporcionan la promesa de un gran n mero de aplicaciones y mercados potenciales Los dispositivos ambientales son un nuevo g nero de productos de electr nica de consumo que hacen uso de la capacidad de proceso pre atentiva Esta es la capacidad que tiene el cerebro de procesar informaci n sin tener que prestarle atenci n de manera expl cita Estos dispositivos proporcionan informaci n de una manera no intrusiva Este concepto surgi en el MediaLab del MIT que result en una spin off llamada Ambient Devices 7 Uno de los productos ofrecidos por esta compania es el Orb que brilla con diferentes colores en funci n de informaci n de la bolsa la congesti n del tr fico previsiones meteorol gicas o de cualquier otro canal de informaci n Ambiental flujos de informaci n proporcionados por Ambient Devices Los objetos que disponen de componentes electr nicos que los hacen m s inteligentes reciben el nombre de objetos inteligentes Aprovechando el bajo coste de muchos componentes electr nicos objetos corrientes pueden ser equipados con conectividad inal mbrica sensores e identificadores Esto permite la creaci n de obj
46. l have USB connection with an AVR microcontroller card used to generate the low level PWM signals to control the turn and tilt servos Additionally we will use a power card to concentrate the electronics needed to adapt and provide the supply lines to power the AVR microcontroller card and servos The power card will also provide an interface with the battery to recharge it or to draw power from it depending if the robot is connected or not to a power line through the power connector We also decided to power the Nokia tablet using it s own power connector to make the system simpler and prevent any damage from occurring Power connector Connections Information Power Mechanical Illustration 7 Ilonani block diagram NOKIA S INTERNET TABLET THE N810 Nokia s N810 is an internet tablet a kind of internet appliance a device aimed mainly at accessing internet services developed by Nokia under the N series These internet tablets should not be considered as mobile phones since they have no way of connecting to any cellular network typical for mobile phones Nevertheless they provide Wi Fi and Bluetooth connectivity that enable access to the internet with the latter when used in conjunction with a web enabled mobile phone 15 Historically it s the third version of Nokia s product preceded by the 770 and the N800 The first version the 770 was presented in May of 2005 and received many critics mainly due to its slo
47. le La gente mayor necesita dispositivos que sean f ciles de utilizar con grandes botones e interfaces intuitivas Los cuidadores podr an usar dispositivos como Ilonani para facilitar el cuidado de las personas mayores a su cargo Estos dispositivos tambi n pueden tener lugar en el rea de la tele medicina La evoluci n de objetos que permitan interactuar e intercambiar informaci n de manera que soporten servicios de tele medicina y tele asistencia ser una tendencia a la que convendr prestar atenci n Ilonani el concepto CONCEPTO Y OBJETIVOS El objetivo inicial del proyecto se centr en la construcci n de un robot de mesa que proporcionase una interfaz amigable para personas mayores para ayudar en las labores de tele asistencia La lista de objetivos perseguidos ha sido Investigar la posibilidad de usar el N810 como plataforma para implementar el cerebro y la cara de Ilonani Investigar la viabilidad de realizar video conferencia teniendo en cuenta distintos escenarios de aplicaci n y si proporciona potencial para realizar una aplicaci n con una interfaz suficientemente amigable teniendo en cuenta el requerimiento de que deber a ser usable por personas mayores Si el dispositivo de Nokia resultaba ser una buena elecci n investigar qu posibles soluciones existir an qu posibles implementaciones exist an para el sistema y cu l ser a la mejor opci n 16 e Dise ar y construir un protot
48. llustration 9 Example home view on N810 Maemo is based on Debian GNU Linux and draws much of its GUI frameworks and libraries from the GNOME project It uses the Matchbox window manager and the GTK based Hildon as its GUI and application framework The Maemo SDK provides a sandboxed maemo development environment on a GNU Linux desktop system It is largely built on a tool called Scratchbox and in most ways it behaves like the operating system on the device but with added development tools This means that the development process is very similar to a normal desktop GNU Linux and the kinks of embedded development such as cross compiling are handled transparently by Scratchbox For more information on application development for Maemo check Maemo Diablo Reference Manual 23 INTRODUCTION TO THE GSTREAMER FRAMEWORK GStreamer is a pipeline based multimedia framework programmed in the C language and using the GObject type system The pipeline architecture enables the building a varied range of applications from simple audio players to complicated video editors or streaming media broadcasters GStreamer is part of the GNOME desktop environment and is included in Nokia s Maemo Platform 24 The framework is based on plugins that provide various functionality GStreamer provides an API for multimedia applications a plugin 40 gstreamer tools multimedia applications gst inspect gst launch gst editor media agnostic base cl
49. lude include include lt stdlib h gt lt string h gt lt gtk gtk h gt lt gst gst h gt lt gst interfaces xoverlay h gt lt hildon hildon banner h gt lt hildon hildon program h gt gdk gdkkeysyms h Define sources and sinks according to running environment NOTE If you want to run the application in ARM scratchbox you have to change these ifdef arm x The device by default supports only vl4l2src for camera and xvimagesink for screen define VIDEO SRC v412src defin ls These VIDEO SINK xvimagesink are for the X86 SDK Xephyr doesn t 61 support XVideo extension so the application must use ximagesink The video source depends on driver of your Video4Linux device so this may have to be changed define VIDEO SRC v4lsrc define VIDEO SINK ximagesink ndif Define structure for variables that are needed thruout the application typedef struct HildonProgram program HildonWindow window GstElement pipeline GtkWidget screen guint buffer cb id AppData Callback for hardware keys gboolean key press cb GtkWidget widget GdkEventKey event HildonWindow window switch event gt keyval case HILDON HARDKEY UP hildon banner show information GTK WIDGET window NULL Navigation Key Up return TRUI
50. mp amp image filter amp amp image sink lements g critical Couldn t create pipelin return FALSE Set image sink to emit handoff signal before throwing away it s buffer g object set G OBJECT image sink NULL E Pi signal handoffs TRUI r Add elements to the pipeline This has to be done prior to linking them gst bin add many GST BIN pipeline camera src csp filter n sink image queue tee Screen queue scr image filter image sink NULL Specify what kind of video is wanted from the camera caps gst caps new simple video x raw yuv width G TYPE INT 352 TYPE INT 288 herght G NULL 68 Link the camera source and colorspace filter using capabilities specified if gst element link filtered camera src Cap filter caps return FALSE gst caps unref caps Connect Colorspace Filter gt Tee gt Screen Queue gt Screen Sink This finalizes the initialization of the screen part of the pipeline if gst element link many csp filter tee screen queue screen sink NULL return FALSI El gdkpixbuf requires 8 bits per sample which is 24 bits per pixel caps gst caps new simple video x raw rgb width G TYPE INT 352 height G TYPE INT 288 bpp G TYPE INT 24 depth G TYPE INT 24 framerate GST TYPE FRACTION
51. net tablets de Nokia Incluye un sistema operativo y un kit de desarrollo de software Maemo est basado en la distribuci n Debian GNU Linux e incorpora la mayor parte de la interfaz gr fica frameworks y librer as del proyecto GNOME Usa Matchbox como su gestor de ventanas y Hildon como su framework de interfaz gr fica y de aplicaciones Uno de los frameworks que resulta m s relevante para este proyecto es GStreamer un framework multimedia basado en una arquitectura de tuber as programado en C y que usa el sistema de tipos GObject La arquitectura de este sistema proporciona la posibilidad de crear un amplio rango de aplicaciones multimedia desde sencillos reproductores de audio hasta complicados editores de video y aplicaciones de streaming multimedia La figura 10 de la p gina 41 muestra un diagrama de bloques de este framework En el apartado 3 2 se elabora una exposici n del estudio que se realiz de este framework Se lleg a implementar un sistema que permit a el streaming de video en una direcci n pero se abandon esta l nea de investigaci n por la previsi n de que no habr a suficiente tiempo para construir una soluci n basada en ella En el apartado 3 3 se presentan las l neas de investigaci n m s importantes de entre las que se siguieron En el apartado 3 4 se discute la opci n elegida finalmente Como se coment anteriormente esta soluci n final no hab a sido anticipada e implementar el sistema de vide
52. ns e Advantages they are fixed and don t move while pressing 37 e Disadvantages more complicated to build difficult to add multi functionality not so flexible Software buttons e Advantages they are more flexible the information is easily captured processed and sent to AVR microcontroller as commands All of the thinking happens inside the tablet e Disadvantages they move while being pressed the tablet moves so it s not so comfortable Another solution would be to implement the buttons via software Each solution has it s own advantages and disadvantages 38 Chapter 3 The software application 3 1 Introduction The vision for the software application to be developed in this project included the following functionality e Reliable two way videoconferencing e Simple user interface e To control and configure the videoconferencing e To control the movement of the projected turn and tilt mechanism At the start of the project it wasn t clear that videoconferencing with the tablet was possible Apparently no out of the box solution existed for this and several approaches had been already investigated within the Automation Technology Research Group 21 Believing that the N810 should be capable of performing video conference a big effort was devoted to finding out how to This proved to be more difficult than expected The result of the work does include a basic set up providing video con
53. nte la potencia de computaci n almacenamiento de informaci n y la capacidad de razonamiento inteligente estar distribuida entre todos estos objetos inteligentes Toda esta interconexi n conlleva un incremento de las posibilidades de comunicaci n Comunicaci n entre objetos entre objetos y entre objetos y personas Aparecer n nuevas formas de interacci n humano maguina 11 formas mas intuitivas y naturales Se dara por hecho gue los objetos pueden interactuar entre si para proporcionar mejores servicios a los humanos Probablemente incluso la sociedad ser m s abierta y comunicativa La informaci n ser ubiqua Ser una s lo una consecuencia m s de la interconectividad si todos los artefactos y sistemas est n conectados pueden compartir informaci n mucho mejor lo que hace que est disponible en muchos m s sitios para m s sistemas y personas Esta informaci n no s lo ser informaci n objetiva sobre hechos como noticias o empresas en tu entorno local sino que incluir informaci n del terreno personal Ya a d a de hoy la gente est compartiendo grandes cantidades de informaci n personal a trav s de blogs y redes sociales lo que parece un compromiso que muchas personas est n dispuestas a hacer a cambio de la personalizaci n de los servicios que les son prestados Al menos hasta cierto punto Aparecer n nuevas formas de entretenimiento La tendencia ya ha sido establecida por p ginas como Youtube
54. ntrolador AVR fu desarrollada por Antti Karjalainen del Departamento de Autom tica y Sistemas de la Universidad de Tecnolog a de Helsinki Dispone de un AT90USB162 de ATMEL La tarjeta ha sido usada satisfactoriamente para el control de servos desde sistemas operativos Linux Adem s usar esta placa proporcionaba el potencial de extender el sistema con el uso de redes Zigbee desarrolladas bajo otro proyecto dentro tambi n del laboratorio de dicho Departamento Se prev e que la tarjeta de alimentaci n incluir componentes electr nicos para la monitorizaci n de la carga de la bater a y para actuar acorde al estado de la misma un LED de indicador de bater a baja los drivers para los servos adaptaci n potencia para alimentar la tarjeta del AVR y una serie de conectores que permitan la interconexi n de todos los elementos La bater a ser elegida tal que soporte un amperio nominal y 2 6 amperios de pico 1 3 amperios por servo cuando estos se encuentran bloqueados La especificaci n inicial requer a que el sistema pudiese funcionar durante 6 horas sin recarga Los servos elegidos son los Futaba S3003 puesto que proporcionan una soluci n asequible y fiable El control de los mismos se llevar a trav s de una se al PWM En la figura 8 y la tabla 2 p gina 37 puede observarse m s informaci n sobre dichos servos Tambi n se estudi la inclusi n de una serie de botones f sicos Se estim razonable la inclusi n como
55. o conferencia result ser mucho m s sencillo de lo que se pensaba Como se describe en dicho apartado el sistema estaba basado en un par de cuentas GTalk y la apropiada configuraci n del cliente de comunicaciones del Nokia N810 19 Conclusion RESULTADOS Los resultados fundamentales de este proyecto son un sistema de video conferencia funciona el conocimiento adquirido y condensado en este documento y e c digo fuente que podr a ser usado como base para la construcci n de una aplicaci n que siguiese la visi n esbozada al principio de este apartado El sistema de video conferencia no se parece al que se ten a en mente al inicio del proyecto pero al menos proporciona la funcionalidad con una calidad bastante razonable Tambi n requiere muy poco desarrollo y funciona pr cticamente de f brica Los invconvenientes son que se necesita un agente externo proveedor del servicio es decir Google y que el cliente de comunicaciones disponible no proporciona toda la funcionalidad requerida Del estudio desarrollado se desprende que podr an existir dos tipos de soluciones soluciones sin servidor y soluciones del tipo servidor cliente Las ventajas y desventajas de cada opci n son expuestas en el apartado 3 3 pero como conclusi n se considera la opci n de servidor cliente como m s apropiada Una opci n que no ha sido documentada por haber sido investigada s lo superficialmente es la del sistema de comunicaciones GI
56. o operating system This client would only need to be able to capture both audio from the microphone and video from the camera in a timely manner and stream it to the icecast server The stream coming from the other tablet could be visualised using any media player supporting these streaming formats 31 Usinc JABBER XMPP This solution would be very similar to the one explained in the section Implemented solution In this case we would set up our own XMPP Jabber server and would not have to rely on any external service like GTalk A popular Jabber XMPP server is ejabberd a very powerful highly compliant open source server written mostly in the Erlang language designed to support distributed fault tolerant soft real time non stop applications It runs on Windows and many Unix like systems 32 On the client side we could still use Nokia s built in client or develop our own To develop our own client we count with GStreamer Telepathy and Farsight frameworks Additionally existing open source clients could be reused in the building of a custom made application Additionally we could use the Asterisk server in conjunction with the Jabber XMPP server to greatly increase the functionality of the system Asterisk is an open source software implementation of a telephone PBX Private Branch eXchange system A PBX is a private telephone exchange or telephone switch which has traditionally been a system of electronic components to c
57. o types of pads exist source pads are used to output data from an element and sink pads are used to input data into an element Lastly bins are containers for a collection of elements They are used to simplify and provide structure Since they are subclasses of elements themselves they can also be controlled like elements 27 41 pipeline vorbis decoder audio sink JJ file source theora decoder video sink Gstreamer pipeline for a basic ogg player Illustration 11 GStreamer pipeline for a simple Ogg player 22 EXAMPLE APPLICATION FOR CAMERA OPERATION The Maemo Diablo Reference Manual 23 provides an example C program that captures video from the camera and outputs it to the screen This simple program is still far from the concept of Ilonani s software application but it will provide some basic understanding of how to work with GStreamer The code provided in Appendix A is an adapted version of the example provided with Maemo documentation 23 The functions implemented in the program are e gboolean key press cb GtkWidget widget GdkEventKey event HildonWindow window e static void bus callback GstBus bus GstMessage message AppData appdata e static gboolean expose cb GtkWidget widget GdkEventExpose event gpointer data e static gboolean initialize pipeline AppData appdata int argc char argv e static void destroy pipeline GtkWidget widget AppData appdat
58. obre todo teniendo en cuenta que la evoluci n en el mundo del hardware nunca descansa Si se decidiese mantener esta plataforma habr a que elegir qu arquitectura de comunicaciones ser a la m s adecuada Este documento presenta los resultados de una investigaci n inicial pero se estima que habr a que investigar un poco m s a fondo las opciones que parezcan m s interesantes antes de elegir una como la definitiva 21 Abstract This document presents the results of the research done on the topic of developing a table top robot for remote interaction This table top robot was conceived to include a Nokia Internet Tablet N810 as its head and face concentrating the functions of main processor and interface with users This N810 would sit on a base providing controlled turn and tilt movement through some microcontroller and servomechanisms The work done under this project concentrates on the development of a solution that would enable video conferencing between two Nokia Internet Tablets N810 The document starts with a description of the context in which this robot is conceived an interconnected world of smart and ambient devices where people expect to be able to tele communicate anywhere any time The work done under this project has focused on researching the Maemo Platform used by the aforementioned Internet Tablets it s frameworks and programming This was done with the intention of evaluating the feasibility o
59. obre una base que proporcionar a la capacidad de giro y balanceo controlado con un sistema formado por un microcontrolador y un grupo de servomecanismos El trabajo realizado bajo este proyecto se concentra en el desarrollo de una configuraci n software que permita la realizaci n de video conferencia entre dos de estos dispositivos Los resultados obtenidos tienen dos facetas por un lado se configur un sistema que proporcionaba la funcionalidad de video conferencia aunque no de la manera anticipada y por otro se obtuvo un conocimiento destilado en este documento con la idea de que fuese utilizado en futuros proyectos Visi n y estado del arte En el futuro nuestros hogares oficinas y lugares de ocio estar n inundados de dispositivos inteligentes y sistemas con capacidad de crear interconexiones Ya es com nmente aceptado el hecho de que gran mayor a de los objetos que llevamos encima incluyen cierta cantidad de electr nica A medida que vaya avanzando la tecnolog a podemos esperar que estos dispositivos ser n m s potentes y funcionales Se esperar que estos dispositivos sean capaces de interconectarse entre ellos y con redes m s grandes como Internet Incorporar n en su dise o conceptos propios de los conocidos como dispositivos ambientales 3 proporcionando informaci n de manera no intrusiva Nos acostumbraremos a la presencia de estos objetos y daremos por hecho los servicios que proporcionen Probableme
60. onnect telephone calls 34 Advantages Disadvantages Communication and streaming would Need for an external host running the be more robust server Standard streaming format Need to learn the workings of Many clients can plug in to the GStreamer Telapathy and Farsight stream at the same time frameworks Streaming based on proven technologies Streaming would be pluggable with existing IM and VoIP services Great potential for extensibility Table 5 Evaluation of Jabber XMPP solution The name for Asterisk comes from the name of the symbol and was used to reflect the fact that it was meant to be the Swiss army knife for telecommunications like the wild card in Unix systems Owing to its name Asterisk offers a very wide range of possibilities from connecting 47 VoIP calls with PSTN lines normal telephone lines to handling Jabber communications 3 4 Implemented solution The final solution to implement the video conferencing between tablets was obtained by using the built in VoIP client and two GTalk accounts Nokia N810 tablets come with a built in VoIP client These clients support SIP and Jabber accounts as well as Google Talk ones Using the approach discussed in this section in generic terms we would just need e Choosing a certain protocol SIP Google Talk or Jabber e Aserver which could be run by ourselves or by an external service provider 35 e Setting up two accounts both on
61. p usb0 auto usb0 iface usb0 inet static adams So 6g 2 L4 netmask 255 255 255 0 network 192 168 2 0 loscoxeweleeusio 1 92 s 118 s 2 42 515 Ld aApSteolas ct nat A POSTROUTING 6 STNO s 192 16852515 3 JEE DE up echo 1 gt proc sys net ipv4 ip forward Com ista les e mer D POSMAOUEING 0 eum 8 192 168 2 15 j MASQUERADE down echo 0 proc sys net ipv4 ip forward On the tablet s X Terminal execute following note that insmod might have to be executed twice insmod mnt initfs lib modules 2 6 21 omapl g ether ko ifup usb0 Connect the tablet to the host machine using the USB cable and test the connection using ping e g from the host machine pang 192 168 215 You will know be in aposition to use ssh to run a remote terminal session from the Linux host or to transfer files to and from the tablet using scp Once the executable is copied to the home directory in the tablet 1 For details on how to do this check the Maemo Diablo Reference Manual 23 43 Y W lt unnamed gt Illustration 12 Example application for camera operation home user the program can be run The result of running the program can be seen in the following screen shot Usinc GSTREAMER TOOLS TO FIND THE RIGHT PIPELINE GStreamer provides a command line interface that allows for quick testing of pipeline combinations To access this interface gst launch has to be used The package gs
62. r This opens up many applications many of which already exist Illustration 4 1896 telephone 10 Even though the history of telecommunications could be considered to start with smoke signals and drums for our purposes we could trace it back to the invention of the first electrical telecommunication systems The first one would be the telegraph which made it possible to send messages using electrical signals between locations connected by an electrical cable The first commercial telegraph started operation in 1839 over a twenty one kilometres stretch Some years later in 1876 28 Alexander Graham Bell invented the conventional telephone and the first commercial telephone services were set up in 1878 79 both in the USA and the UK Nevertheless it wasn t until 1927 that telephone communications between both sides of the Atlantic were possible through a radio link and until 1956 through the first transatlantic cable 11 Through high paced evolution these primal systems have developed up to what we have today a complex web of telecommunication systems and services that give users a vast array of possibilities to choose from Nowadays users can call a friend using a fixed phone on the PSTN or a mobile phone using GSM check their email inbox from any computer start Instant Messaging conversations with their contacts send and SMS or MMS using their hand held PDA or start up a voice video conference using their jabber client
63. re called smart objects Taking advantage of cheap electronics objects can be 27 embedded with wireless connection capabilities sensors and unigue identifiers This makes it possible to create networked objects the internet of things This creates a huge potential for new applications for example a smoke detector could ask all home appliances to turn off maybe preventing the fire from getting worse an intelligent fridge enabled to read RFID tags could alert the user about products that are about to go out of date or email a shopping list of items that have run out This brings us to another interesting trend RFID tags seem to be a very nice way in which to create this network of things Users can buy packs of tags that can be programmed and attached to objects to perform certain functions For example Violet s Ztamp s 8 allow users to stick a tag on an umbrella and get a weather forecast on the computer when placing the tag in the range of the tag reader Mir ror 9 TELECOMMUNICATION TRENDS SOCIAL WEB AND ENTERTAINMENT 2 0 We now take for granted that anyone can be contacted from anywhere and at any time but it wasn t always like this Before tele communicating was not such a common thing if you wanted to communicate with someone you normally set up a meeting and dealt with them face to face Nowadays technology is starting to enable the communication between persons that might be at many kilometres from each othe
64. s de las cuales ya son una realidad 13 Los origenes de las telecomunicaciones se remontan a las senales de humo y los tambores pero a efectos de esta discusi n podr amos trazarlos a la invenci n de los primeros sistemas de telecomunicaci n el ctricos El primero ser a el tel grafo que hacia posible la transferencia de mensajes usando se ales el ctricas transmitidas por cable El primer tel grafo comercial comenz a operar en 1839 a lo largo de un trazado de 21 kil metros Unos a os despu s en 1876 Alexander Graham Bell invent el tel fono convencional y los primeros servicios comerciales de telefon a fueron puestos en marcha entre 1878 y 1879 en Estados Unidos y Gran Breta a Sin embargo no fue hasta 1927 cuando fue posible conectar los continentes a ambos lados del Atl ntico a trav s de un enlace de radio y en 1956 a trav s del primer cable transatl ntico 11 A trav s de esta acelerada evoluci n estos primeros sistemas han dejado paso a lo que existe hoy en d a una compleja red de sistemas y servicios de telecomunicaci n que proporcionan a los usuarios una amplia selecci n de opciones entre las que elegir Hoy en d a los usuarios pueden llamar a un amigo usando una l nea fija de la Red Telef nica Conmutada un tel fono m vil usando GSM comprobar su buz n de entrada de correo electr nico desde cualquier ordenador iniciar una conversaci n de mensajer a instant nea con alguno de sus conocidos
65. si reference model checked April 30 2009 http www jabber org index php about checked April 30 2009 http en wikipedia org wiki Session Initiation Protocol checked April 30 2009 Peter Saint Andre 47 interviewed by Randal Schwartz and Leo Laporte http twit tv floss49 checked April 30 2009 http en wikipedia org wiki Instant messaging checked April 30 2009 http www asterisk org checked April 30 2009 N800 and N810 user guide https fjallfoss fcc gov prod oet forms blobs retrieve cgi attachment id 846889 amp native or pdf pdf checked April 30 2009 http en wikipedia org wiki Belief bias GIM Integrator documentation section 1 2 2 GIMnet http gim tkk fi RP9 Documents action download amp upname Integrator final pdf checked April 30 2009 http xmpp org xsf people stpeter shtml checked April 30 2009 https www google com accounts NewAccount checked April 30 2009 55 Appendix A User manual The following appendix is heavily based on the N810 User s Guide 44 A 1 Getting to know the system After power up and Nokia s splash screen the user will be presented with Maemo s home view The touch screen is divided into the following areas Illustration 15 1 Task navigator Application title area Status indicator area Minimize and close buttons Application area Toolbar Application switcher eh EM E D e 1 2 3 4 7 6 Illustration 15 Maemo touchscreen areas 4
66. tching network with quite reasonable Quality of Service Video streaming from content providers or from user to user as new VoIP technologies enable the transmission of video as well as audio content These ubiquitous presence of telecommunication networks has provided fertile ground for the emergence of new social interactions People are now able to communicate an interact in new ways For example Blogs it s very easy to create a web space in which to express your opinions or update the world on your latest musings Myspace has proved to be a very popular way of communicating among teenagers and has surprised everybody for being adopted by musicians and artists of all levels Social networks in the form of Facebook prove that people are willing to share their information and connect with new people Instant messages Voice over IP and email are quicker smarter versions of the telegraph and the telephone empowering many individuals to communicate with people around the globe Sites like Youtube com or LegalTorrents com open the doors of new forms of communication in which users generate audiovisual content with artistic entertaining or communicating purposes changing the old Anyone can write and publish a book using sites like Lulu com that offer the service of on demand publishing making it possible for anyone to create and publish a book even when the expected number of books to be sold is low Illustration 6 Second
67. tion was to be adopted check the Buttons section on page 37 for more information Additionally some configuration window should be accessible through the drop down menu usually available by clicking on the Application title area check Illustration 17 on page 58 for the naming of the different areas 49 Chapter 4 Conclusion 41 Results The main results of the project are three e a working videoconferencing solution e the knowledge acquired and summarized in this document and e source code that could used to build a custom made application that would follow the vision outlined at the beginning of the project The videoconferencing system built does not look like the system conceived at the beginning but it does provide videoconferencing with a very reasonable quality It also requires very little development and works almost out of the box The main drawbacks are that an external service provider needs to be used i e Google and that the built in communications client that we use doesn t provide the kind of user interface that we were looking for The knowledge acquired pertains mainly to the exploration of videoconferencing possibilities using the N810 and different technologies From the studied undertaken it seems that two types of architecture could be put into place server less and server client configurations Advantages and disadvantages for both have been put forward in section 3 3 but as a conclusion we b
68. treamer tools should be installed on the tablet Capturing video from the camera and displaying it on the screen can be done easily using the following command gst launch v4l2src video x raw yuv width 640 height 480 framerate 15 1 xvimagesink This produces the same result as the C program presented on the previous section This could make it seem that using this second approach is much better since the code needed is much simpler and no compilation hassle has to be dealt with For simple settings like the previous one this will be the case but producing a full blown video conferencing application will require turning to C programming This might become obvious when we look at the command needed to produce one way audio video streaming On the emitter gst launch 0 10 gconfv4l2src video x raw yuv width 640 height 480 framerate 1 fraction V 15 1 hantro4200enc stream type 1 profile and level 1001 video x h263 framerate fraction 15 1 rtph263ppay mtu 1438 application x rtp clock rate 90000 udpsink host 192 168 1 106 port 5434 dsppcmsrc queue audio x raw int channels 1 rate 8000 mulawenc rtppcmupay mtu 1438 udpsink host 192 168 1 106 port 5432 On the receiver 2 Fora detailed explanation of the gst launch command check Linux manual pages 44 gst launch 0 10 udpsrc port 5434 application x rtp clock rate 90000 rtph263pdepay video x h263 framerate fraction 15 1 hantro4100dec
69. ugh NAT some external system Not completely automatized users would have to manually exchange IP addresses Table 3 Evaluation of server less point to point solution The video conferencing that was intended to be achieved consisted in using the GStreamer framework to stream audio and video from one tablet to a certain IP and port which could be another tablet a PC or any other capable device This first solution wouldn t include NAT traversal either and would require users to manually exchange IP addresses and to introduce them in the application through some kind of user interface USING ICECAST SERVER Icecast is a quite popular open source streaming server maintained by the Xiph org Foundation dedicated to producing free multimedia formats and tools like the Ogg family of formats This server is capable of streaming Vorbis and Theora content over HTTP and MP3 ACC and NSV over the SHOUTcast protocol 30 Advantages Disadvantages Relatively easy to build Need for an external host running the Communication and streaming would server be more robust Standard streaming format Many clients can plug in to the stream at the same time Streaming based on proven technologies Table 4 Evaluation of icecast solution The setting that would need to be put in place would include the installation and configuration of an icecast server on some PC host and 46 the development of a client for the Maem
70. will surely permeate to the realm of personal information Already people are sharing huge amounts of personal information through blogs and social networks and this seems a trade off for personalization of services that people are prepared to pay at least until some extent New forms or entertainment will appear The trend has already been set with sites like Youtube Flickr and Legal Torrents that offer user created content to other users Content will be created in a distributed manner instead of the old way were a big content provider produces films and programmes that are then consumed by passive users Content becomes user originated and interactive where users remix other users contributions respond or interact in some other way with already created content Illustration 2 Telemedicine comes home 4 We can also expect the future to become the world of tele everything If things continue to develop in the same way solving problems of CO emissions over population over consumption of energy etc might be solved by providing services at home tele medicine will distribute good quality medical services to home so patients don t have to transit to the 26 doctors office tele work will prevent everyday morning and afternoon rush hours etc In the world of the future devices like ILONANI will be playing a bigger and bigger role 1 2 State of the art NABAZTAG SMART OBJECTS AMBIENT DEVICES AND UBIQUITO
71. wness and it s short 34 battery life This model evolved into the N800 introduced in January of 2007 which addressed many of the 770 s shortcomings That same year in October the N810 was released A WIMAX enabled edition was announced on April of 2008 but it s production was cancelled in January of 2009 probably due to the low availability of WiMAX providers 16 A list of the N810 s technical specifications can be found in Table 1 Size Volume 128 cc Weight 226 g Length 72 mm Width 128 mm e Thickness 14 mm Display e High resolution 4 13 WVGA display 800 x 480 pixels with up to 65 000 colours Processor e TI OMAP 2420 400Mhz Memory e DDRRAM 128MB e Flash 256MB Storage e Up to 2GB internal memory e Support for compatible miniSD and microSD memory cards with extender Supports cards up to 8GB SD cards over 2GB must be SDHC compatible Operating Times e Battery Nokia Battery BP 4L Continuous usage display on wireless LAN active up to 4 hours Music playback up to 10 hours Always online time up to 5 days Standby time up to 14 days Other characteristics Smooth slide with integrated QWERTY keyboard Built in GPS receiver High quality stereo speakers and sensitive microphone High resolution wide screen display Integrated desk stand Integrated VGA web camera HW key to lock touch screen and keys e Ambient light sensor Connectivity e WLAN standard IEEE 802 11b g e Bluetooth specification v 2 0 ED

Download Pdf Manuals

image

Related Search

Related Contents

  中心温度計 Thermometer  BRAVO SX RTF - CONRAD Produktinfo.    Xerox ColorQube 8700 User's Manual      ダウンロード(PDF 0.81 MB)  義光灯器具取扱説明書  安全に関するご注意  

Copyright © All rights reserved.
Failed to retrieve file