Application » History » Version 3
Alex Seferidis, 07/17/2025 12:29 PM
| 1 | 1 | Alex Seferidis | # Application |
|---|---|---|---|
| 2 | |||
| 3 | FBX-3566 can run on 5 different modes: |
||
| 4 | - Fleex Embedded |
||
| 5 | - Fleex Prime |
||
| 6 | - Fleex DS |
||
| 7 | - IPTV STB |
||
| 8 | - DS player (not implemented yet) |
||
| 9 | |||
| 10 | The main QT application opens a full screen web browser (QT web engine, based on chromium 87) |
||
| 11 | On Fleex embedded it opens a web page from the headend. |
||
| 12 | On Fleex DS and Fleex Prime it opens a web page from DS server, or Prime server |
||
| 13 | On IPTV it opens a local page (inside FBX-3566) /htdocs/IPTV/index.php |
||
| 14 | |||
| 15 | There are three main applications: |
||
| 16 | - Web server |
||
| 17 | - QT application |
||
| 18 | - External player |
||
| 19 | 2 | Alex Seferidis | |
| 20 | ## Web server |
||
| 21 | |||
| 22 | The device can serve PHP web pages, using Apache2 web server. Settings are saved on SQLITE3 database |
||
| 23 | We can connect to device by opening a web browser from a PC directly to it's IP address |
||
| 24 | http://xxx.xxx.xxx.xxx |
||
| 25 | |||
| 26 | user: admin |
||
| 27 | pass: 12345 |
||
| 28 | |||
| 29 | On the device the web application is located at: |
||
| 30 | /data/firmware/htdocs |
||
| 31 | |||
| 32 | Databases are located at: |
||
| 33 | /data/settings |
||
| 34 | |||
| 35 | On development machine (Alex windows PC): |
||
| 36 | C:\wamp64\www\stb |
||
| 37 | |||
| 38 | **Note: two critical files** |
||
| 39 | 1. /htdocs/python/init.py |
||
| 40 | This script runs on powerup and prepares the system, copy necessary files, etc. |
||
| 41 | |||
| 42 | 2. On DS mode a JavaScript file (main.ds) is downloaded from DS server, and runs all the logic needed for the DS |
||
| 43 | 3 | Alex Seferidis | |
| 44 | TODO: add git server link for web application |
||
| 45 | |||
| 46 | ## QT application |
||
| 47 | |||
| 48 | It is the main application, runs on the screen when the device powers up. |
||
| 49 | Opens QT web engine in full screen. Main application communicate with external player (GSteamer) with internal UDP commnads on 127.0.0.1 address. |
||
| 50 | Source code is located at Virtual machine (Alex PC): |
||
| 51 | /data/Yocto_SDK_QT5/QTplayer |
||
| 52 | |||
| 53 | See QT Creator section, how to setup IDE and then open this application from QT Creator. |
||
| 54 | |||
| 55 | TODO: add git server link for main application |
||
| 56 | |||
| 57 | |||
| 58 | ## External player |
||
| 59 | |||
| 60 | External player is used to play media streams. |
||
| 61 | It is based on Gstreamer. Source code is located with gst-play-1.0 tool inside Yocto: |
||
| 62 | |||
| 63 | /data/Yocto/poky/build-rockchip/tmp/work/armv8a-poky-linux/gstreamer1.0-plugins-base/1.20.7-r0/gst-plugins-base-1.20.7/tools |
||
| 64 | |||
| 65 | It is one file: gst-external.c |
||
| 66 | |||
| 67 | build with: |
||
| 68 | |||
| 69 | ``` |
||
| 70 | bitbake -c compile -f gstreamer1.0-plugins-base |
||
| 71 | ``` |
||
| 72 | |||
| 73 | find executable at /media/alex/data/Yocto/poky/build-rockchip/tmp/work/armv8a-poky-linux/gstreamer1.0-plugins-base/1.20.7-r0/build/tools |
||
| 74 | Then you can copy this executable to the device (/data/firmware) |
||
| 75 | |||
| 76 | TODO: add git server link for external player |