-
Cisco
- Android (Java) developer for IOT
Issy les Moulineaux
2015 - maintenant
How to marry TV and IOT through leanback experience ?
I joint in a project called ConnectedLife where "internet of everything" was key to the home automation ecosystem :
- managed by openHAB as a "conduction": open-source solution addressable by REST API
- localisation fulfilled by:
* BLUETOOTH detection => iBeacons
* WIFI triangulation => Cisco equipment (MSE, Prime)
* RFID identification => impinj equipment (Speedway)
- delinearized TV channel:
* like Youtube channel (meaning playlist of movies set according to profile preferences)
* profile-based playgraph pre-determined according to analytics features offered by Cisco
* business logic offered to operator around playgraph nodes by inserting advertising
- real-time ambilight effect all over home saloon in :
* by gstreamer implementation applied onto frames of current TV stream to compute colorimetry
* ambilight split into HUE Philips lights spread all over home saloon managed by Zigbee bridge
Main UI/UX rendering video content (current delinearized TV channel is made of) has been designed in Dart/WebGL.
Communication between werables (watch) and companion devices (Samsung mobiles) happened by webSockets across dedicated notification servers based on node technology.
Demo presented at CES 2015 and selected for Mobile World Congress event in Barcelona.
-
Cisco
- HTML5/JS Front-End developer
Issy les Moulineaux
2014 - 2014
HTML5 implementation of a WebApp for ZON TV Portugal
Our small team of three people has created a proof of concept of WebApp destined for ZON TV Portugal. Application for TV has been implemented in :
- raw JS
- CSS3 rules
- HTML5 instructions
Our source code has raised without any framework by "settling" our own tiny UI_Manager to arrange MVC views. We used our own data model aggregation by developing one proprietorship embedded solution based on QT, part of RDK middleware => to ease/speed requests addressed from end-user STB to remote ZON Tv Portugal back-ends.
I took part in developing several MVC views like :
* channel list
* channel banner
* EPG grid
I have been involved at every stages of the project:
* from-sratch development,
* continuous integration by Jenkins
* scrum sessions,
bugfixing, managing deliveries, JIRA backlogs
-
Cisco
- BackboneJS + ThreeJS Front-End developer
Issy les Moulineaux
2014 - 2014
HTML5 implementation of a WebApp selected by Belgacom
I have been part of developments to package HTML5 application for TV (called EPG) running on RDK as a " middleware ", delivered to Belgacom. Including :
- CSS3 (CSS3D 'instructions' to leverage on HW acceleration by GPU)
- vanilla WebSockets, and AJAX requests across framework, meaning Backbone
- modern javascript methods (HTML5 APIs)
our WebApp mixed both :
- regular HTML content (with CSS +JS)
- WebGL content managed by Three.JS as top level library according to COLLADA rules to describe objects model furnished by graphic designers
- Objects model were displaced by Tween.JS
- Objects model had background color changed by Tween.JS
Data aggregation happened remotely, server side.
our WebApp has been a bit tailored at the end to run on tablets:
- Ipad (meaning iOS8)
- Android (Nexus 10)
owing to Hammer.JS inserted in our Backbone-centric framework for swipe events.
I packaged this WebApp for our customer by using remote cross-platform tools (Adobe PhoneGap , CocoonJS) but the result was never presented yet, due to other priorities/choices.
Much time has been consumed to fine-tune our WebApp smoothness, cleverly balancing around HW acceleration : "as much as possible but not too much", for the sake of performances, due to our platform and the way webkit had been embedded inside RDK. Application has been a bit modified with effort to preserve execution on low profile "poor" STB that don't support WebGL. Under competition => we won the trend.
------------------------------------------------------------------------------
In the meantime, I spent (spare ;-) time to figure out an external resource super-specialized in WebGL: I "sacrificed" PTO on my budget, to get to his teaching sessions at engineering school. To make up my own mind, 1st. Then to convince managers here to let this expert organize a 5 days long training in our company, for low-cost wages, and successful result => other sessions already planned.
-
Cisco
- WebRTC : real phone-calls prototyped for TV
Issy les Moulineaux
2013 - 2013
Guest Speaker to yearly DevConf evangelizing WebRTC
Again, my topic has been selected for 2013 yearly event called DevConf.
I presented a tutorial about WebRTC.
From general prospective, first. I managed to fulfill a use-case where the audience (simulating payTV subscribers) managed to receive a real phone call from main EPG application designed in HTML5 that was running on my laptop (simulating a STB).
Then, more especially, I explained how I would proceed how to give our RDK stack WebRTC-ready to let subscribers organize webEx @home across their set-to-box. Ratings granted for my presentation have been high: more than 80% of satisfaction.
That makes four times/years in a row that my topics have been selected by DevConf commitee and that I had the opportunity to attend such meetups that happen worldwide.
-
Cisco
- CSS3D + HTML5/JS Front-End developer
Issy les Moulineaux
2013 - 2014
wabapp developed in HTML5, CSS3D, for embedded devices (smart TV, Rpi) released for CES 2014 :
* running on every-device: LgTV, HDMI stick, tablets, laptop
* implemented in HTML, JS, CSS3D, WebGL, based on :
- backboneJS for MVC logical unit
- ThreeJS 'engine' (top of WebGL to speed up prototyping /b COLLADA)
- TweenJS interpolation 'engine'
- adapting FPSMeter in embedded conditions
- HTML5 content accustomed (few changes) to please every device. Mac especially. Working especially to have fit-to-with rendering, "centered" for each device, with onResize needs.
* participation to green-house-on-fire with Canadian graphic designers
* isolation of one < view > as a Web Component by Polymer
* JsDoc generation by commenting source code to match YUIDoc templating
* HTML5 engines assessment to qualify HW acceleration (leveraging on GPU) on each :
- QT5 / Webkit1
- WebKitNix (thin layer port, top of POSIX, and openGL/EGL)
- Chromium
* selected HTML5 engines cross-compiled to be ported onto embedded devices :
- LG TV: tiny involvement only in x-compilation, but high involvement in adjusting HTML5 content
- Raspberry PI: medium involvement here => I managed to build / setup DDD to debug WebKitNix
- Cotton Candy (FXI): small involvement in x-compilation, but high one in adjusting HTML5 content
- MacOSX: high involvement in x-compiling WebKitNix by Xcode. And by cmd line. Light changes applied in MiniBrowser boostrap in Objective C (e.g. to get content full screen)
Build of Gstreamer for Win32 and MacOSX:
Required to compile gstreamer (meaning core, plugins, ... ffmpeg) manually by cmd line
- for WIN32 (either by Cygwin or MinGw, successfully, or by Visual C++ less successfully)
- for MacOSX => successfully
Several extra deps / libs had to be compiled 1st, and installed, as a pre-requisite.
Complete goal was to leverage on HW acc twice: both by WebKit (graphics) and by Gstreamer (video) on every device (tablet, smartTV, laptop)
-
Cisco
- AngularJS | BackboneJS FE developer
Issy les Moulineaux
2012 - 2013
HTML5 software designer for tv: Angular, Backbone
NDS became part of Cisco :
- HTML5 architect of web applications for set-top-box, usually called EPG,
- structuring HTML5 EPG by means of consistent MVC frameworks like Backbone.js, Spine.js, Google key controler...
- developping new field of competences around open source: GIT, Atlassian tools (Jira, Jenkins, Confluence...)
I was implicated in developing applications for digital TV as prototypes in different frameworks :
* Angular
* Backbone
* Spine
Objective is twice:
1° acquire competences around these emerging frameworks, assess them in general
2° observe how these frameworks behave by running top of STB,
establish benchmarks to compare each of them to one another
-
NDS Technologies
- WebKit/QT developper (full stack)
2010 - 2012
Full stack development.
- give courses about HTML5 technology at international stages
- integration/aggregation of open-source solution to render HTML5 content (e.g. based on QT) in payTV environment
- experiment remote UI use-cases for STB and companion devices
- involving DLNA scenarios, Remote UI
-
NDS Technologies
- TMC: cross-cultural trainer
2007 - 2009
- give courses to newcomers about cross-culture matters
- improve multi-sites cooperation (international context)
- certified by TMC
-
NDS Technologies
- Full-stack developper: WIDGET + HBBTV
2006 - 2010
FE JavaScript developer => widget & HBBTV
- integration of a third part solution for rendering HTML applications, Access product. Web 2.0 compliant (support for Ajax, CSS 2.1)
- involved in early/original discussions about the following standards:
- OIPF,
- CE-HTML,
- HBBTV
and decisions to apply these TV based technologies in-house.
- commited to delivering projects bound to European market (German, Portuguese, French areas):
- developments,
- deliveries,
- release
- bank of widgets (social network, streaming...) set up for internal demos, proof of concepts of App store, advertising incl openX, STB-to-IPHONE communications over third-part APIs furnished by mobile operators (ORANGE, SFR)...
-
Canal+
- Full-stack browser integration
Issy-les-Moulineaux
2002 - 2005
- integration of OPERA 6 within Canal+ Technologies middleware:
- javascript 1.3
- CSS 2
- Netscape plugin (java xlets)
- guidelines for HTML developments preceding Web 2.0 applications rendered by old version of web engine provided by OPS
- proof-of-conceptualization of EPG's earlier generation (master application driving STB lifcecycle and end-user settings)
-
Alten Technology France
- DSP Engineer => AEC for mobiles
Boulogne Billancourt
1999 - 2000
Acoustic Echo Cancellation (AEC) for mobile phones.
Final client : Wavecom.
- Acoustic echo cancellation and suppression for mobile handset and speakerphone environments
- Audio algorithm tuning for acoustic and carrier requirements: echo control, equalizers, volume level control, loss planning
- Noise reduction and speech quality evaluation
- speech recognition area : corpus has been established
-
Canal+
- Pay-TV System integrator
Issy-les-Moulineaux
1999 - 2002
responsible for integration/validation by Canal+ technologies
Developing functional test scripts and test tools
Integrate & test MMP with new 3rd party components such as: special clients applications, Content Delivery Networks,
Trouble shooting and helping to resolve issues with the test environment and test suites uncovered during testing
Writing trouble reports
Software and hardware equipment installation, configuration and integration; including linux servers, DB Servers and clients running on STB
Customer integration and support (remote and/or on-site)
-
Alten Technology France
- DSP Engineer => AEC for handsets
Boulogne Billancourt
1998 - 1999
Acoustic Echo Cancellation (AEC) for handsets.
Final client : VOX.
refers to a general class of signal processing algorithms designed to identify and eliminate the sound of a loudspeaker within a background of various other sources. The main application of an AEC in the context of this project is the echo cancellation in communication where it is desired to prevent the retransmission of any sound coming from the loudspeaker back to the far-end talker during a call.
I used convolution algorithm over MATLAB on record samples to detect echo delay and attenuation. Then I developed a program written in C to trigger simultaneous echo cancellations by several threads to apply it on multiple speech channels (each audio card furnished by by VOX could manage different channels of communication)