mirror of
https://github.com/tuxbox-neutrino/libstb-hal.git
synced 2025-08-26 15:02:58 +02:00
lib cleanup and sync for mips vu support
This commit is contained in:
14
Makefile.am
14
Makefile.am
@@ -65,9 +65,19 @@ libstb_hal_la_LIBADD += \
|
||||
libarmbox/libarmbox.la \
|
||||
libdvbci/libdvbci.la
|
||||
if !ENABLE_GSTREAMER_10
|
||||
SUBDIRS += libeplayer3-arm
|
||||
SUBDIRS += libeplayer3
|
||||
libstb_hal_la_LIBADD += \
|
||||
libeplayer3-arm/libeplayer3_arm.la
|
||||
libeplayer3/libeplayer3.la
|
||||
endif
|
||||
endif
|
||||
endif
|
||||
|
||||
if BOXTYPE_MIPSBOX
|
||||
SUBDIRS += libmipsbox libdvbci
|
||||
libstb_hal_la_LIBADD += \
|
||||
libmipsbox/libmipsbox.la \
|
||||
libdvbci/libdvbci.la
|
||||
SUBDIRS += libeplayer3
|
||||
libstb_hal_la_LIBADD += \
|
||||
libeplayer3/libeplayer3.la
|
||||
endif
|
||||
|
36
acinclude.m4
36
acinclude.m4
@@ -284,17 +284,41 @@ elif test "$BOXMODEL" = "vusolo4k"; then
|
||||
AC_DEFINE(BOXMODEL_VUSOLO4K, 1, [vusolo4k])
|
||||
elif test "$BOXMODEL" = "vuduo4k"; then
|
||||
AC_DEFINE(BOXMODEL_VUDUO4K, 1, [vuduo4k])
|
||||
elif test "$BOXMODEL" = "vuultimo4k"; then
|
||||
AC_DEFINE(BOXMODEL_VUULTIMO4K, 1, [vuultimo4k])
|
||||
elif test "$BOXMODEL" = "vuuno4k"; then
|
||||
AC_DEFINE(BOXMODEL_VUUNO4K, 1, [vuuno4k])
|
||||
elif test "$BOXMODEL" = "vuuno4kse"; then
|
||||
AC_DEFINE(BOXMODEL_VUUNO4KSE, 1, [vuuno4kse])
|
||||
elif test "$BOXMODEL" = "vuzero4k"; then
|
||||
AC_DEFINE(BOXMODEL_VUZERO4K, 1, [vuzero4k])
|
||||
elif test "$BOXMODEL" = "vuduo"; then
|
||||
AC_DEFINE(BOXMODEL_VUDUO, 1, [vuduo])
|
||||
elif test "$BOXMODEL" = "h7"; then
|
||||
AC_DEFINE(BOXMODEL_H7, 1, [h7])
|
||||
elif test "$BOXMODEL" = "generic"; then
|
||||
AC_DEFINE(BOXMODEL_GENERIC, 1, [generic pc])
|
||||
elif test "$BOXMODEL" = "raspi"; then
|
||||
AC_DEFINE(BOXMODEL_RASPI, 1, [raspberry pi])
|
||||
fi
|
||||
|
||||
# all vuplus BOXMODELs
|
||||
case "$BOXMODEL" in
|
||||
vusolo4k|vuduo4k|vuultimo4k|vuuno4k|vuuno4kse|vuzero4k|vuduo)
|
||||
AC_DEFINE(BOXMODEL_VUPLUS, 1, [vuplus])
|
||||
vuplus=true
|
||||
;;
|
||||
*)
|
||||
vuplus=false
|
||||
;;
|
||||
esac
|
||||
AM_CONDITIONAL(BOXMODEL_VUPLUS, test "$vuplus" = "true")
|
||||
|
||||
# all vuplus4k BOXMODELs
|
||||
case "$BOXMODEL" in
|
||||
vusolo4k|vuduo4k|vuultimo4k|vuuno4k|vuuno4kse|vuzero4k)
|
||||
AC_DEFINE(BOXMODEL_VUPLUS4K, 1, [vuplus4k])
|
||||
vuplus4k=true
|
||||
;;
|
||||
*)
|
||||
vuplus4k=false
|
||||
;;
|
||||
esac
|
||||
AM_CONDITIONAL(BOXMODEL_VUPLUS4K, test "$vuplus4k" = "true")
|
||||
])
|
||||
|
||||
dnl backward compatiblity
|
||||
|
11
autogen.sh
11
autogen.sh
@@ -1,6 +1,13 @@
|
||||
#!/bin/bash
|
||||
#!/bin/sh
|
||||
|
||||
package="ni-libstb-hal"
|
||||
|
||||
srcdir=`dirname $0`
|
||||
test -z "$srcdir" && srcdir=.
|
||||
|
||||
cd "$srcdir"
|
||||
echo "Generating configuration files for $package, please wait ..."
|
||||
|
||||
cd $(dirname $0)
|
||||
aclocal --force
|
||||
libtoolize --force
|
||||
autoconf --force
|
||||
|
@@ -17,6 +17,15 @@ AM_CXXFLAGS += \
|
||||
-I $(top_srcdir)/libdvbci
|
||||
endif
|
||||
|
||||
if BOXTYPE_MIPSBOX
|
||||
AM_CXXFLAGS += \
|
||||
-I $(top_srcdir)/libdvbci
|
||||
endif
|
||||
|
||||
if BOXTYPE_MIPSBOX
|
||||
libcommon_la_SOURCES = \
|
||||
ca_ci.cpp
|
||||
else
|
||||
if BOXTYPE_DUCKBOX
|
||||
libcommon_la_SOURCES = \
|
||||
ca_ci.cpp
|
||||
@@ -33,7 +42,7 @@ else
|
||||
libcommon_la_SOURCES = \
|
||||
ca.cpp
|
||||
endif
|
||||
|
||||
endif
|
||||
endif
|
||||
|
||||
libcommon_la_SOURCES += \
|
||||
|
@@ -41,7 +41,7 @@ static const char * FILENAME = "[ca_ci]";
|
||||
const char ci_path[] = "/dev/dvb/adapter0/ci%d";
|
||||
ca_slot_info_t info;
|
||||
#endif
|
||||
#if HAVE_ARM_HARDWARE
|
||||
#if HAVE_ARM_HARDWARE || HAVE_MIPS_HARDWARE
|
||||
const char ci_path[] = "/dev/ci%d";
|
||||
static int last_source = -1;
|
||||
#endif
|
||||
@@ -234,7 +234,7 @@ static bool transmitData(eDVBCISlot* slot, unsigned char* d, int len)
|
||||
{
|
||||
printf("%s -> %s len(%d)\n", FILENAME, __func__, len);
|
||||
|
||||
#if BOXMODEL_VUSOLO4K || BOXMODEL_VUDUO4K || BOXMODEL_VUZERO4K
|
||||
#if BOXMODEL_VUSOLO4K || BOXMODEL_VUDUO4K || BOXMODEL_VUULTIMO4K || BOXMODEL_VUZERO4K
|
||||
#if y_debug
|
||||
for (int i = 0; i < len; i++)
|
||||
printf("%02x ", d[i]);
|
||||
@@ -263,7 +263,7 @@ static bool transmitData(eDVBCISlot* slot, unsigned char* d, int len)
|
||||
//send some data on an fd, for a special slot and connection_id
|
||||
eData sendData(eDVBCISlot* slot, unsigned char* data, int len)
|
||||
{
|
||||
#if HAVE_ARM_HARDWARE
|
||||
#if HAVE_ARM_HARDWARE || HAVE_MIPS_HARDWARE
|
||||
unsigned char *d = (unsigned char*) malloc(len);
|
||||
memcpy(d, data, len);
|
||||
transmitData(slot, d, len);
|
||||
@@ -878,7 +878,7 @@ bool cCA::SendCAPMT(u64 tpid, u8 source, u8 camask, const unsigned char * cabuf,
|
||||
(*It)->SID[0] = SID;
|
||||
(*It)->ci_use_count = 1;
|
||||
(*It)->TP = TP;
|
||||
#if HAVE_ARM_HARDWARE
|
||||
#if HAVE_ARM_HARDWARE || HAVE_MIPS_HARDWARE
|
||||
if(!checkLiveSlot && mode && (*It)->source != source)
|
||||
setInputSource((eDVBCISlot*)(*It), false);
|
||||
#endif
|
||||
@@ -889,7 +889,7 @@ bool cCA::SendCAPMT(u64 tpid, u8 source, u8 camask, const unsigned char * cabuf,
|
||||
(*It)->newCapmt = true;
|
||||
}
|
||||
|
||||
#if HAVE_ARM_HARDWARE
|
||||
#if HAVE_ARM_HARDWARE || HAVE_MIPS_HARDWARE
|
||||
if ((*It)->newCapmt)
|
||||
extractPids((eDVBCISlot*)(*It));
|
||||
#endif
|
||||
@@ -917,7 +917,7 @@ bool cCA::SendCAPMT(u64 tpid, u8 source, u8 camask, const unsigned char * cabuf,
|
||||
}
|
||||
else
|
||||
{
|
||||
#if HAVE_ARM_HARDWARE
|
||||
#if HAVE_ARM_HARDWARE || HAVE_MIPS_HARDWARE
|
||||
std::list<eDVBCISlot*>::iterator it;
|
||||
recordUse_found = false;
|
||||
for (it = slot_data.begin(); it != slot_data.end(); ++it)
|
||||
@@ -958,7 +958,7 @@ bool cCA::SendCAPMT(u64 tpid, u8 source, u8 camask, const unsigned char * cabuf,
|
||||
return true;
|
||||
}
|
||||
|
||||
#if HAVE_ARM_HARDWARE
|
||||
#if HAVE_ARM_HARDWARE || HAVE_MIPS_HARDWARE
|
||||
void cCA::extractPids(eDVBCISlot* slot)
|
||||
{
|
||||
u32 prg_info_len;
|
||||
@@ -1017,7 +1017,7 @@ void cCA::setSource(eDVBCISlot* slot)
|
||||
case TUNER_D:
|
||||
fprintf(ci, "D");
|
||||
break;
|
||||
#if BOXMODEL_VUSOLO4K || BOXMODEL_VUDUO4K
|
||||
#if BOXMODEL_VUSOLO4K || BOXMODEL_VUDUO4K || BOXMODEL_VUULTIMO4K
|
||||
case TUNER_E:
|
||||
fprintf(ci, "E");
|
||||
break;
|
||||
@@ -1054,13 +1054,39 @@ void cCA::setSource(eDVBCISlot* slot)
|
||||
case TUNER_P:
|
||||
fprintf(ci, "P");
|
||||
break;
|
||||
#if BOXMODEL_VUULTIMO4K
|
||||
case TUNER_Q:
|
||||
fprintf(ci, "Q");
|
||||
break;
|
||||
case TUNER_R:
|
||||
fprintf(ci, "R");
|
||||
break;
|
||||
case TUNER_S:
|
||||
fprintf(ci, "S");
|
||||
break;
|
||||
case TUNER_T:
|
||||
fprintf(ci, "T");
|
||||
break;
|
||||
case TUNER_U:
|
||||
fprintf(ci, "U");
|
||||
break;
|
||||
case TUNER_V:
|
||||
fprintf(ci, "V");
|
||||
break;
|
||||
case TUNER_W:
|
||||
fprintf(ci, "W");
|
||||
break;
|
||||
case TUNER_X:
|
||||
fprintf(ci, "X");
|
||||
break;
|
||||
#endif
|
||||
#endif
|
||||
}
|
||||
fclose(ci);
|
||||
}
|
||||
}
|
||||
|
||||
#if HAVE_ARM_HARDWARE
|
||||
#if HAVE_ARM_HARDWARE || HAVE_MIPS_HARDWARE
|
||||
static std::string getTunerLetter(int number) { return std::string(1, char(65 + number)); }
|
||||
|
||||
void cCA::setInputs()
|
||||
@@ -1069,10 +1095,14 @@ void cCA::setInputs()
|
||||
char choices[64];
|
||||
FILE * fd = 0;
|
||||
|
||||
#if BOXMODEL_VUSOLO4K || BOXMODEL_VUDUO4K
|
||||
#if BOXMODEL_VUULTIMO4K
|
||||
for (int number = 0; number < 24; number++) // tuner A to X, input 0 to 23
|
||||
#else
|
||||
#if BOXMODEL_VUSOLO4K || BOXMODEL_VUDUO4K || BOXMODEL_VUUNO4KSE
|
||||
for (int number = 0; number < 16; number++) // tuner A to P, input 0 to 15
|
||||
#else
|
||||
for (int number = 0; number < 4; number++) // tuner A to D, input 0 to 3
|
||||
#endif
|
||||
#endif
|
||||
{
|
||||
snprintf(choices, 64, "/proc/stb/tsmux/input%d_choices", number);
|
||||
@@ -1134,7 +1164,7 @@ void cCA::setInputSource(eDVBCISlot* slot, bool ci)
|
||||
case TUNER_D:
|
||||
fprintf(input, "D");
|
||||
break;
|
||||
#if BOXMODEL_VUSOLO4K || BOXMODEL_VUDUO4K
|
||||
#if BOXMODEL_VUSOLO4K || BOXMODEL_VUDUO4K || BOXMODEL_VUULTIMO4K || BOXMODEL_VUUNO4KSE || BOXMODEL_VUUNO4K
|
||||
case TUNER_E:
|
||||
fprintf(input, "E");
|
||||
break;
|
||||
@@ -1171,6 +1201,32 @@ void cCA::setInputSource(eDVBCISlot* slot, bool ci)
|
||||
case TUNER_P:
|
||||
fprintf(input, "P");
|
||||
break;
|
||||
#if BOXMODEL_VUULTIMO4K
|
||||
case TUNER_Q:
|
||||
fprintf(input, "Q");
|
||||
break;
|
||||
case TUNER_R:
|
||||
fprintf(input, "R");
|
||||
break;
|
||||
case TUNER_S:
|
||||
fprintf(input, "S");
|
||||
break;
|
||||
case TUNER_T:
|
||||
fprintf(input, "T");
|
||||
break;
|
||||
case TUNER_U:
|
||||
fprintf(input, "U");
|
||||
break;
|
||||
case TUNER_V:
|
||||
fprintf(input, "V");
|
||||
break;
|
||||
case TUNER_W:
|
||||
fprintf(input, "W");
|
||||
break;
|
||||
case TUNER_X:
|
||||
fprintf(input, "X");
|
||||
break;
|
||||
#endif
|
||||
#endif
|
||||
}
|
||||
}
|
||||
@@ -1184,7 +1240,7 @@ cCA::cCA(int Slots)
|
||||
printf("%s -> %s %d\n", FILENAME, __func__, Slots);
|
||||
|
||||
num_slots = Slots;
|
||||
#if HAVE_ARM_HARDWARE
|
||||
#if HAVE_ARM_HARDWARE || HAVE_MIPS_HARDWARE
|
||||
setInputs();
|
||||
#endif
|
||||
|
||||
@@ -1280,7 +1336,7 @@ void cCA::ModuleReset(enum CA_SLOT_TYPE, uint32_t slot)
|
||||
{
|
||||
(*it)->status = eStatusReset;
|
||||
usleep(200000);
|
||||
#if HAVE_ARM_HARDWARE
|
||||
#if HAVE_ARM_HARDWARE || HAVE_MIPS_HARDWARE
|
||||
last_source = (int)(*it)->source;
|
||||
setInputSource((eDVBCISlot*)(*it), false);
|
||||
#endif
|
||||
@@ -1373,7 +1429,7 @@ void cCA::ci_inserted(eDVBCISlot* slot)
|
||||
void cCA::ci_removed(eDVBCISlot* slot)
|
||||
{
|
||||
printf("cam (%d) status changed ->cam now _not_ present\n", slot->slot);
|
||||
#if HAVE_ARM_HARDWARE
|
||||
#if HAVE_ARM_HARDWARE || HAVE_MIPS_HARDWARE
|
||||
last_source = (int)slot->source;
|
||||
setInputSource(slot, false);
|
||||
#endif
|
||||
@@ -1444,7 +1500,7 @@ void cCA::slot_pollthread(void *c)
|
||||
|
||||
while (1)
|
||||
{
|
||||
#if HAVE_ARM_HARDWARE /* Armbox */
|
||||
#if HAVE_ARM_HARDWARE || HAVE_MIPS_HARDWARE /* Armbox/Mipsbox */
|
||||
|
||||
int len = 1024 *4;
|
||||
eData status;
|
||||
@@ -1685,7 +1741,7 @@ FROM_FIRST:
|
||||
break;
|
||||
} /* switch(slot->status) */
|
||||
#endif /* end Duckbox */
|
||||
#if HAVE_ARM_HARDWARE
|
||||
#if HAVE_ARM_HARDWARE || HAVE_MIPS_HARDWARE
|
||||
if (!slot->init && slot->camIsReady && last_source > -1)
|
||||
{
|
||||
slot->source = (u8)last_source;
|
||||
@@ -1740,7 +1796,7 @@ bool cCA::SendCaPMT(eDVBCISlot* slot)
|
||||
printf("%s -> %s\n", FILENAME, __func__);
|
||||
if (slot->fd > 0)
|
||||
{
|
||||
#if HAVE_ARM_HARDWARE
|
||||
#if HAVE_ARM_HARDWARE || HAVE_MIPS_HARDWARE
|
||||
setInputSource(slot, true);
|
||||
#endif
|
||||
setSource(slot);
|
||||
|
@@ -95,22 +95,23 @@ if test x$BOXTYPE = xgeneric -a x$BOXMODEL != xraspi; then
|
||||
fi
|
||||
|
||||
AC_ARG_ENABLE(flv2mpeg4,
|
||||
AS_HELP_STRING(--enable-flv2mpeg4, use flv2mpeg4 libeplayer3-arm),
|
||||
AS_HELP_STRING(--enable-flv2mpeg4, use flv2mpeg4 libeplayer3),
|
||||
,[enable_flv2mpeg4=no])
|
||||
|
||||
AM_CONDITIONAL(ENABLE_FLV2MPEG4, test "$enable_flv2mpeg4" = "yes")
|
||||
if test "$enable_flv2mpeg4" = "yes"; then
|
||||
AC_DEFINE(ENABLE_FLV2MPEG4, 1, [use flv2mpeg4 libeplayer3-arm])
|
||||
AC_DEFINE(ENABLE_FLV2MPEG4, 1, [use flv2mpeg4 libeplayer3])
|
||||
fi
|
||||
|
||||
AC_CONFIG_FILES([
|
||||
Makefile
|
||||
common/Makefile
|
||||
libmipsbox/Makefile
|
||||
libarmbox/Makefile
|
||||
libazbox/Makefile
|
||||
libduckbox/Makefile
|
||||
libdvbci/Makefile
|
||||
libeplayer3-arm/Makefile
|
||||
libeplayer3/Makefile
|
||||
libeplayer3-sh4/Makefile
|
||||
libgeneric-pc/Makefile
|
||||
libraspi/Makefile
|
||||
|
@@ -9,6 +9,8 @@
|
||||
#include "../libspark/audio_mixer.h"
|
||||
#elif HAVE_ARM_HARDWARE
|
||||
#include "../libarmbox/audio_lib.h"
|
||||
#elif HAVE_MIPS_HARDWARE
|
||||
#include "../libmipsbox/audio_lib.h"
|
||||
#elif HAVE_AZBOX_HARDWARE
|
||||
#include "../libazbox/audio_lib.h"
|
||||
#elif HAVE_GENERIC_HARDWARE
|
||||
|
@@ -127,7 +127,7 @@ typedef enum {
|
||||
TUNER_B,
|
||||
TUNER_C,
|
||||
TUNER_D
|
||||
#if BOXMODEL_VUSOLO4K || BOXMODEL_VUDUO4K
|
||||
#if BOXMODEL_VUSOLO4K || BOXMODEL_VUDUO4K || BOXMODEL_VUULTIMO4K || BOXMODEL_VUUNO4KSE || BOXMODEL_VUUNO4K
|
||||
, TUNER_E
|
||||
, TUNER_F
|
||||
, TUNER_G
|
||||
@@ -140,6 +140,16 @@ typedef enum {
|
||||
, TUNER_N
|
||||
, TUNER_O
|
||||
, TUNER_P
|
||||
#if BOXMODEL_VUULTIMO4K
|
||||
, TUNER_Q
|
||||
, TUNER_R
|
||||
, TUNER_S
|
||||
, TUNER_T
|
||||
, TUNER_U
|
||||
, TUNER_V
|
||||
, TUNER_W
|
||||
, TUNER_X
|
||||
#endif
|
||||
#endif
|
||||
} source_t;
|
||||
|
||||
|
@@ -1,4 +1,4 @@
|
||||
#if HAVE_DUCKBOX_HARDWARE || (HAVE_ARM_HARDWARE && !BOXMODEL_HD60)
|
||||
#if HAVE_DUCKBOX_HARDWARE || (HAVE_ARM_HARDWARE && !BOXMODEL_HD60) || HAVE_MIPS_HARDWARE
|
||||
#include "ca_ci.h"
|
||||
#else
|
||||
#include "ca.h"
|
||||
|
@@ -23,7 +23,7 @@ inline void cs_api_exit()
|
||||
#define cs_free_uncached free
|
||||
|
||||
// Callback function helpers
|
||||
#if HAVE_DUCKBOX_HARDWARE || (HAVE_ARM_HARDWARE && !BOXMODEL_HD60)
|
||||
#if HAVE_DUCKBOX_HARDWARE || (HAVE_ARM_HARDWARE && !BOXMODEL_HD60) || HAVE_MIPS_HARDWARE
|
||||
void cs_register_messenger(cs_messenger messenger);
|
||||
#else
|
||||
static inline void cs_register_messenger(cs_messenger) { return; };
|
||||
|
@@ -37,11 +37,15 @@ extern "C" {
|
||||
|
||||
#include <cs_types.h>
|
||||
|
||||
#if BOXMODEL_VUSOLO4K || BOXMODEL_VUDUO4K
|
||||
#if BOXMODEL_VUULTIMO4K
|
||||
#define MAX_DMX_UNITS 24
|
||||
#else
|
||||
#if BOXMODEL_VUSOLO4K || BOXMODEL_VUDUO4K || BOXMODEL_VUUNO4KSE || BOXMODEL_VUUNO4K
|
||||
#define MAX_DMX_UNITS 16
|
||||
#else
|
||||
#define MAX_DMX_UNITS 4
|
||||
#endif
|
||||
#endif
|
||||
|
||||
typedef enum
|
||||
{
|
||||
|
@@ -15,6 +15,8 @@
|
||||
#include "../libarmbox/playback_libeplayer3.h"
|
||||
#endif
|
||||
#endif
|
||||
#elif HAVE_MIPS_HARDWARE
|
||||
#include "../libmipsbox/playback_libeplayer3.h"
|
||||
#elif HAVE_AZBOX_HARDWARE
|
||||
#include "../libazbox/playback_lib.h"
|
||||
#elif HAVE_GENERIC_HARDWARE
|
||||
|
@@ -7,6 +7,8 @@
|
||||
#include "../libspark/record_lib.h"
|
||||
#elif HAVE_ARM_HARDWARE
|
||||
#include "../libarmbox/record_lib.h"
|
||||
#elif HAVE_MIPS_HARDWARE
|
||||
#include "../libmipsbox/record_lib.h"
|
||||
#elif HAVE_AZBOX_HARDWARE
|
||||
#include "../libazbox/record_lib.h"
|
||||
#elif HAVE_GENERIC_HARDWARE
|
||||
|
@@ -8,6 +8,9 @@
|
||||
#elif HAVE_ARM_HARDWARE
|
||||
#include "../libarmbox/video_lib.h"
|
||||
#include "../libarmbox/hdmi_cec.h"
|
||||
#elif HAVE_MIPS_HARDWARE
|
||||
#include "../libmipsbox/video_lib.h"
|
||||
#include "../libmipsbox/hdmi_cec.h"
|
||||
#elif HAVE_AZBOX_HARDWARE
|
||||
#include "../libazbox/video_lib.h"
|
||||
#elif HAVE_GENERIC_HARDWARE
|
||||
|
@@ -40,7 +40,7 @@ libarmbox_la_SOURCES += \
|
||||
playback_libeplayer3.cpp
|
||||
|
||||
AM_CPPFLAGS += \
|
||||
-I$(top_srcdir)/libeplayer3-arm/include
|
||||
-I$(top_srcdir)/libeplayer3/include
|
||||
endif
|
||||
|
||||
AM_LDFLAGS += \
|
||||
|
@@ -343,7 +343,7 @@ int cAudio::StopClip()
|
||||
hal_info("%s: clipfd not yet opened\n", __FUNCTION__);
|
||||
return -1;
|
||||
}
|
||||
#if BOXMODEL_VUSOLO4K || BOXMODEL_VUDUO4K || BOXMODEL_VUZERO4K
|
||||
#if BOXMODEL_VUPLUS4K
|
||||
ioctl(clipfd, SNDCTL_DSP_RESET);
|
||||
#endif
|
||||
close(clipfd);
|
||||
|
@@ -71,24 +71,36 @@ static const char *DMX_T[] = {
|
||||
|
||||
/* this is the number of different cDemux() units, not the number of
|
||||
* /dev/dvb/.../demuxX devices! */
|
||||
#if BOXMODEL_VUSOLO4K || BOXMODEL_VUDUO4K
|
||||
#if BOXMODEL_VUULTIMO4K
|
||||
#define NUM_DEMUX 24
|
||||
#else
|
||||
#if BOXMODEL_VUSOLO4K || BOXMODEL_VUDUO4K || BOXMODEL_VUUNO4KSE || BOXMODEL_VUUNO4K
|
||||
#define NUM_DEMUX 16
|
||||
#else
|
||||
#define NUM_DEMUX 4
|
||||
#endif
|
||||
#endif
|
||||
/* the current source of each cDemux unit */
|
||||
#if BOXMODEL_VUSOLO4K || BOXMODEL_VUDUO4K
|
||||
#if BOXMODEL_VUULTIMO4K
|
||||
static int dmx_source[NUM_DEMUX] = { 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 };
|
||||
#else
|
||||
#if BOXMODEL_VUSOLO4K || BOXMODEL_VUDUO4K || BOXMODEL_VUUNO4KSE || BOXMODEL_VUUNO4K
|
||||
static int dmx_source[NUM_DEMUX] = { 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 };
|
||||
#else
|
||||
static int dmx_source[NUM_DEMUX] = { 0, 0, 0, 0 };
|
||||
#endif
|
||||
#endif
|
||||
|
||||
/* map the device numbers. */
|
||||
#if BOXMODEL_VUSOLO4K || BOXMODEL_VUDUO4K
|
||||
#if BOXMODEL_VUULTIMO4K
|
||||
#define NUM_DEMUXDEV 24
|
||||
#else
|
||||
#if BOXMODEL_VUSOLO4K || BOXMODEL_VUDUO4K || BOXMODEL_VUUNO4KSE || BOXMODEL_VUUNO4K
|
||||
#define NUM_DEMUXDEV 16
|
||||
#else
|
||||
#define NUM_DEMUXDEV 8
|
||||
#endif
|
||||
#endif
|
||||
static const char *devname[NUM_DEMUXDEV] = {
|
||||
"/dev/dvb/adapter0/demux0",
|
||||
"/dev/dvb/adapter0/demux1",
|
||||
@@ -98,7 +110,7 @@ static const char *devname[NUM_DEMUXDEV] = {
|
||||
"/dev/dvb/adapter0/demux5",
|
||||
"/dev/dvb/adapter0/demux6",
|
||||
"/dev/dvb/adapter0/demux7"
|
||||
#if BOXMODEL_VUSOLO4K || BOXMODEL_VUDUO4K
|
||||
#if BOXMODEL_VUSOLO4K || BOXMODEL_VUDUO4K || BOXMODEL_VUULTIMO4K || BOXMODEL_VUUNO4KSE || BOXMODEL_VUUNO4K
|
||||
, "/dev/dvb/adapter0/demux8"
|
||||
, "/dev/dvb/adapter0/demux9"
|
||||
, "/dev/dvb/adapter0/demux10"
|
||||
@@ -107,14 +119,28 @@ static const char *devname[NUM_DEMUXDEV] = {
|
||||
, "/dev/dvb/adapter0/demux13"
|
||||
, "/dev/dvb/adapter0/demux14"
|
||||
, "/dev/dvb/adapter0/demux15"
|
||||
#if BOXMODEL_VUULTIMO4K
|
||||
, "/dev/dvb/adapter0/demux16"
|
||||
, "/dev/dvb/adapter0/demux17"
|
||||
, "/dev/dvb/adapter0/demux18"
|
||||
, "/dev/dvb/adapter0/demux19"
|
||||
, "/dev/dvb/adapter0/demux20"
|
||||
, "/dev/dvb/adapter0/demux21"
|
||||
, "/dev/dvb/adapter0/demux22"
|
||||
, "/dev/dvb/adapter0/demux23"
|
||||
#endif
|
||||
#endif
|
||||
};
|
||||
/* did we already DMX_SET_SOURCE on that demux device? */
|
||||
#if BOXMODEL_VUSOLO4K || BOXMODEL_VUDUO4K
|
||||
#if BOXMODEL_VUULTIMO4K
|
||||
static bool init[NUM_DEMUXDEV] = { false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false };
|
||||
#else
|
||||
#if BOXMODEL_VUSOLO4K || BOXMODEL_VUDUO4K || BOXMODEL_VUUNO4KSE || BOXMODEL_VUUNO4K
|
||||
static bool init[NUM_DEMUXDEV] = { false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false };
|
||||
#else
|
||||
static bool init[NUM_DEMUXDEV] = { false, false, false, false, false, false, false, false };
|
||||
#endif
|
||||
#endif
|
||||
|
||||
typedef struct dmx_pdata {
|
||||
int last_source;
|
||||
|
@@ -60,7 +60,7 @@ hw_caps_t *get_hwcaps(void)
|
||||
caps.display_has_statusline = 0; // 0 because we use graphlcd/lcd4linux
|
||||
caps.has_button_timer = 1;
|
||||
caps.has_button_vformat = 0;
|
||||
caps.has_HDMI = 1;
|
||||
caps.has_HDMI = 2;
|
||||
strcpy(caps.boxvendor, "VU+");
|
||||
strcpy(caps.boxname, "DUO4K");
|
||||
strcpy(caps.boxarch, "BCM7278");
|
||||
@@ -195,10 +195,6 @@ hw_caps_t *get_hwcaps(void)
|
||||
caps.display_can_set_brightness = 1;
|
||||
caps.display_has_statusline = 0;
|
||||
caps.has_button_timer = 1;
|
||||
caps.has_button_vformat = 1;
|
||||
caps.has_HDMI = 1;
|
||||
strcpy(caps.boxvendor, "ZGEMMA");
|
||||
strcpy(caps.boxname, "H7");
|
||||
caps.has_button_vformat = 0;
|
||||
caps.has_HDMI = 1;
|
||||
strcpy(caps.boxvendor, "AirDigital");
|
||||
|
@@ -654,7 +654,7 @@ void cVideo::SetVideoMode(analog_mode_t mode)
|
||||
bool cVideo::ShowPicture(const char * fname)
|
||||
{
|
||||
bool ret = false;
|
||||
hal_info("%s(%s)\n", __func__, fname);
|
||||
hal_debug("%s(%s)\n", __func__, fname);
|
||||
if (video_standby)
|
||||
{
|
||||
/* does not work and the driver does not seem to like it */
|
||||
|
@@ -496,13 +496,13 @@ static inline int rate2csapi(int rate)
|
||||
return 1;
|
||||
case 25:
|
||||
return 2;
|
||||
case 29976:
|
||||
case 29970:
|
||||
return 3;
|
||||
case 30:
|
||||
return 4;
|
||||
case 50:
|
||||
return 5;
|
||||
case 50940:
|
||||
case 59940:
|
||||
return 6;
|
||||
case 60:
|
||||
return 7;
|
||||
|
@@ -142,7 +142,7 @@ int descrambler_set_key(int index, int parity, unsigned char *data)
|
||||
int descrambler_set_pid(int index, int enable, int pid)
|
||||
{
|
||||
struct ca_pid p;
|
||||
#if HAVE_ARM_HARDWARE
|
||||
#if HAVE_ARM_HARDWARE || HAVE_MIPS_HARDWARE
|
||||
unsigned int flags = 0x80;
|
||||
|
||||
if (index)
|
||||
|
@@ -1354,7 +1354,7 @@ void eDVBCIContentControlManagerSession::resendKey(eDVBCISlot *tslot)
|
||||
|
||||
if (!tslot->SidBlackListed && (tslot->recordUse[0] || tslot->liveUse[0]))
|
||||
{
|
||||
#if HAVE_ARM_HARDWARE
|
||||
#if HAVE_ARM_HARDWARE || HAVE_MIPS_HARDWARE
|
||||
if (slot->newPids)
|
||||
{
|
||||
if (slot->pids.size())
|
||||
|
@@ -3,7 +3,7 @@ AM_CFLAGS = -Wall -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64 -D_LARGEFILE64_SOUR
|
||||
|
||||
CXXFLAGS = -Wall
|
||||
|
||||
noinst_LTLIBRARIES = libeplayer3_arm.la
|
||||
noinst_LTLIBRARIES = libeplayer3.la
|
||||
|
||||
AM_CPPFLAGS = -I$(srcdir)/include
|
||||
AM_CPPFLAGS += -I$(top_srcdir)/include
|
||||
@@ -59,11 +59,11 @@ SOURCE_FILES += \
|
||||
output/writer/mipsel/wmv.c \
|
||||
output/writer/mipsel/vc1.c
|
||||
|
||||
libeplayer3_arm_la_SOURCES = $(SOURCE_FILES)
|
||||
libeplayer3_la_SOURCES = $(SOURCE_FILES)
|
||||
|
||||
LIBEPLAYER3_LIBS = libeplayer3_arm.la -lpthread -lavformat -lavcodec -lavutil -lswresample
|
||||
LIBEPLAYER3_LIBS = libeplayer3.la -lpthread -lavformat -lavcodec -lavutil -lswresample
|
||||
|
||||
bin_PROGRAMS = eplayer3
|
||||
eplayer3_SOURCES = main/exteplayer.c
|
||||
eplayer3_LDADD = $(LIBEPLAYER3_LIBS)
|
||||
eplayer3_DEPENDENCIES = libeplayer3_arm.la
|
||||
eplayer3_DEPENDENCIES = libeplayer3.la
|
@@ -125,8 +125,8 @@ static int32_t container_ffmpeg_seek(Context_t *context, int64_t sec, uint8_t ab
|
||||
//static int32_t container_ffmpeg_seek_rel(Context_t *context, off_t pos, int64_t pts, int64_t sec);
|
||||
static int32_t container_ffmpeg_get_length(Context_t *context, int64_t *length);
|
||||
static int64_t calcPts(uint32_t avContextIdx, AVStream *stream, int64_t pts);
|
||||
static int32_t container_ffmpeg_stop(Context_t *context);
|
||||
static int64_t doCalcPts(int64_t start_time, const AVRational time_base, int64_t pts);
|
||||
static int32_t container_ffmpeg_stop(Context_t *context);
|
||||
|
||||
/* Progressive playback means that we play local file
|
||||
* but this local file can grows up, for example
|
||||
@@ -2003,7 +2003,7 @@ int32_t container_ffmpeg_update_tracks(Context_t *context, char *filename, int32
|
||||
#endif
|
||||
|
||||
ffmpeg_printf(20, "dump format\n");
|
||||
if((avContextTab[0] != NULL) && (FFMPEG_DEBUG_LEVEL > 0))
|
||||
if ((avContextTab[0] != NULL) && (FFMPEG_DEBUG_LEVEL > 0))
|
||||
av_dump_format(avContextTab[0], 0, filename, 0);
|
||||
|
||||
|
@@ -686,6 +686,7 @@ static int ParseParams(int argc, char *argv[], PlayFiles_t *playbackFiles, int *
|
||||
int main(int argc, char *argv[])
|
||||
{
|
||||
system("echo 'encoder' > /proc/stb/avs/0/input");
|
||||
|
||||
pthread_t termThread;
|
||||
int isTermThreadStarted = 0;
|
||||
|
@@ -42,6 +42,7 @@
|
||||
#include "stm_ioctls.h"
|
||||
#include "bcm_ioctls.h"
|
||||
|
||||
#include "debug.h"
|
||||
#include "common.h"
|
||||
#include "output.h"
|
||||
#include "debug.h"
|
Some files were not shown because too many files have changed in this diff Show More
Reference in New Issue
Block a user