- re-add working streaminfo for coolstream hardware; ...

TODO fix streaminfo2 for coolstream; was broken since last commits

Signed-off-by: Thilo Graf <dbt@novatux.de>
This commit is contained in:
svenhoefer
2017-11-07 21:16:18 +01:00
committed by Thilo Graf
parent e2770e7731
commit d5be64f64a
3 changed files with 1261 additions and 1 deletions

View File

@@ -95,7 +95,6 @@ libneutrino_gui_a_SOURCES = \
settings_manager.cpp \
sleeptimer.cpp \
start_wizard.cpp \
streaminfo2.cpp \
subchannel_select.cpp \
themes.cpp \
timeosd.cpp \
@@ -111,6 +110,14 @@ libneutrino_gui_a_SOURCES = \
webtv_setup.cpp \
zapit_setup.cpp
if BOXTYPE_ARMBOX
libneutrino_gui_a_SOURCES += \
streaminfo2.cpp
else
libneutrino_gui_a_SOURCES += \
streaminfo1.cpp
endif
if ENABLE_EXTUPDATE
libneutrino_gui_a_SOURCES += \
update_ext.cpp

1138
src/gui/streaminfo1.cpp Normal file

File diff suppressed because it is too large Load Diff

115
src/gui/streaminfo1.h Normal file
View File

@@ -0,0 +1,115 @@
/*
Neutrino-GUI - DBoxII-Project
License: GPL
This program is free software; you can redistribute it and/or modify
it under the terms of the GNU General Public License as published by
the Free Software Foundation; either version 2 of the License, or
(at your option) any later version.
This program is distributed in the hope that it will be useful,
but WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
GNU General Public License for more details.
You should have received a copy of the GNU General Public License
along with this program; if not, write to the Free Software
Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
*/
#ifndef __streaminfo2__
#define __streaminfo2__
#include <gui/widget/menue.h>
#include <gui/components/cc.h>
#include <gui/movieplayer.h>
#include <zapit/femanager.h>
class CFrameBuffer;
class COSDFader;
class CStreamInfo2 : public CMenuTarget
{
private:
CFrameBuffer *frameBuffer;
CFrontend *frontend;
CComponentsPIP * pip;
CMoviePlayerGui *mp;
COSDFader fader;
int x;
int y;
int width;
int height;
int hheight,iheight,sheight; // head/info/small font height
int max_height; // Frambuffer 0.. max
int max_width;
int yypos;
int paint_mode;
int font_head;
int font_info;
int font_small;
int sigBox_x;
int sigBox_y;
int sigBox_w;
int sigBox_h;
int sigBox_pos;
int sig_text_y;
int sig_text_ber_x;
int sig_text_sig_x;
int sig_text_snr_x;
int sig_text_rate_x;
int average_bitrate_pos;
int average_bitrate_offset;
unsigned int scaling;
unsigned int pmt_version;
int box_h,box_h2;
struct feSignal {
unsigned long ber, old_ber, max_ber, min_ber;
unsigned long sig, old_sig, max_sig, min_sig;
unsigned long snr, old_snr, max_snr, min_snr;
} signal;
struct bitrate {
unsigned int short_average, max_short_average, min_short_average;
} rate;
int doSignalStrengthLoop();
struct timeval tv, last_tv, first_tv;
uint64_t bit_s;
uint64_t abit_s;
uint64_t b_total;
unsigned char *dmxbuf;
int update_rate();
int ts_setup();
int ts_close();
void paint(int mode);
void paint_techinfo(int x, int y);
void paintCASystem(int xpos, int ypos);
void paint_signal_fe_box(int x, int y, int w, int h);
void paint_signal_fe(struct bitrate rate, struct feSignal s);
int y_signal_fe(unsigned long value, unsigned long max_range, int max_y);
void SignalRenderStr (unsigned int value, int x, int y);
CSignalBox *signalbox;
void showSNR ();
public:
CStreamInfo2();
~CStreamInfo2();
void hide();
int exec(CMenuTarget* parent, const std::string & actionKey);
};
#endif