libspark/player: use int instead of short in some places

This commit is contained in:
martii
2013-10-31 15:58:49 +01:00
parent d13fc04473
commit eda54c7cea
3 changed files with 38 additions and 34 deletions

View File

@@ -743,7 +743,7 @@ static int PlaybackSwitchSubtitle(Context_t *context, int* track) {
playback_err("manager set track failed\n");
}
#if 0
if (*track == 0xffff) {
if (*track < 0) {
//CHECK FOR SUBTITLES
if (context->container && context->container->textSrtContainer)
context->container->textSrtContainer->Command(context, CONTAINER_INIT, context->playback->uri+7);
@@ -798,14 +798,14 @@ static int PlaybackSwitchDVBSubtitle(Context_t *context, int* pid) {
playback_printf(10, "Track: %d\n", *pid);
if (context && context->manager && context->manager->dvbsubtitle ) {
if (context->manager->dvbsubtitle->Command(context, *pid == 0xffff ? MANAGER_DEL : MANAGER_SET, pid) < 0) {
if (context->manager->dvbsubtitle->Command(context, *pid < 0 ? MANAGER_DEL : MANAGER_SET, pid) < 0) {
playback_err("dvbsub manager set track failed\n");
ret = cERR_PLAYBACK_ERROR;
}
} else
playback_err("no dvbsubtitle\n");
if (*pid == 0xffff)
if (*pid < 0)
container_ffmpeg_update_tracks(context, context->playback->uri, 0);
playback_printf(10, "exiting with value %d\n", ret);
@@ -819,14 +819,14 @@ static int PlaybackSwitchTeletext(Context_t *context, int* pid) {
playback_printf(10, "Track: %d\n", *pid);
if (context && context->manager && context->manager->teletext ) {
if (context->manager->teletext->Command(context, *pid == 0xffff ? MANAGER_DEL : MANAGER_SET, pid)) {
if (context->manager->teletext->Command(context, *pid < 0 ? MANAGER_DEL : MANAGER_SET, pid)) {
playback_err("ttxsub manager set track failed\n");
ret = cERR_PLAYBACK_ERROR;
}
} else
playback_err("no ttxsubtitle\n");
if (*pid == 0xffff)
if (*pid < 0)
container_ffmpeg_update_tracks(context, context->playback->uri, 0);
playback_printf(10, "exiting with value %d\n", ret);

View File

@@ -97,7 +97,7 @@ void cPlayback::Close(void)
}
//Used by Fileplay
bool cPlayback::Start(char *filename, unsigned short vpid, int vtype, unsigned short apid, int ac3, unsigned int, bool no_probe)
bool cPlayback::Start(char *filename, int vpid, int vtype, int apid, int ac3, unsigned int, bool no_probe)
{
bool ret = false;
bool isHTTP = false;
@@ -275,7 +275,7 @@ bool cPlayback::Stop(void)
return true;
}
bool cPlayback::SetAPid(unsigned short pid, bool ac3 __attribute__((unused)))
bool cPlayback::SetAPid(int pid, bool ac3 __attribute__((unused)))
{
printf("%s:%s\n", FILENAME, __FUNCTION__);
int i=pid;
@@ -287,7 +287,7 @@ bool cPlayback::SetAPid(unsigned short pid, bool ac3 __attribute__((unused)))
return true;
}
bool cPlayback::SetSubtitlePid(unsigned short pid)
bool cPlayback::SetSubtitlePid(int pid)
{
printf("%s:%s\n", FILENAME, __FUNCTION__);
int i=pid;
@@ -299,7 +299,7 @@ bool cPlayback::SetSubtitlePid(unsigned short pid)
return true;
}
bool cPlayback::SetDvbsubtitlePid(unsigned short pid)
bool cPlayback::SetDvbsubtitlePid(int pid)
{
printf("%s:%s\n", FILENAME, __FUNCTION__);
int i=pid;
@@ -311,7 +311,7 @@ bool cPlayback::SetDvbsubtitlePid(unsigned short pid)
return true;
}
bool cPlayback::SetTeletextPid(unsigned short pid)
bool cPlayback::SetTeletextPid(int pid)
{
printf("%s:%s\n", FILENAME, __FUNCTION__);
int i=pid;
@@ -498,7 +498,7 @@ bool cPlayback::SetPosition(int position, bool absolute)
return true;
}
void cPlayback::FindAllPids(uint16_t *apids, unsigned short *ac3flags, uint16_t *numpida, std::string *language)
void cPlayback::FindAllPids(int *apids, unsigned int *ac3flags, unsigned int *numpida, std::string *language)
{
printf("%s:%s\n", FILENAME, __FUNCTION__);
int max_numpida = *numpida;
@@ -515,7 +515,7 @@ void cPlayback::FindAllPids(uint16_t *apids, unsigned short *ac3flags, uint16_t
int _pid;
char _lang[strlen(TrackList[i])];
if (2 == sscanf(TrackList[i], "%d %s\n", &_pid, _lang)) {
apids[j]=(uint16_t)_pid;
apids[j]=_pid;
// atUnknown, atMPEG, atMP3, atAC3, atDTS, atAAC, atPCM, atOGG, atFLAC
if( !strncmp("A_MPEG/L3", TrackList[i+1], 9))
ac3flags[j] = 4;
@@ -545,7 +545,7 @@ void cPlayback::FindAllPids(uint16_t *apids, unsigned short *ac3flags, uint16_t
}
}
void cPlayback::FindAllSubtitlePids(uint16_t *pids, uint16_t *numpids, std::string *language)
void cPlayback::FindAllSubtitlePids(int *pids, unsigned int *numpids, std::string *language)
{
printf("%s:%s\n", FILENAME, __FUNCTION__);
int max_numpids = *numpids;
@@ -562,7 +562,7 @@ void cPlayback::FindAllSubtitlePids(uint16_t *pids, uint16_t *numpids, std::stri
int _pid;
char _lang[strlen(TrackList[i])];
if (2 == sscanf(TrackList[i], "%d %s\n", &_pid, _lang)) {
pids[j]=(uint16_t)_pid;
pids[j]=_pid;
language[j]=std::string(_lang);
}
}
@@ -575,7 +575,7 @@ void cPlayback::FindAllSubtitlePids(uint16_t *pids, uint16_t *numpids, std::stri
}
}
void cPlayback::FindAllDvbsubtitlePids(uint16_t *pids, uint16_t *numpids, std::string *language)
void cPlayback::FindAllDvbsubtitlePids(int *pids, unsigned int *numpids, std::string *language)
{
printf("%s:%s\n", FILENAME, __FUNCTION__);
int max_numpids = *numpids;
@@ -592,7 +592,7 @@ void cPlayback::FindAllDvbsubtitlePids(uint16_t *pids, uint16_t *numpids, std::s
int _pid;
char _lang[strlen(TrackList[i])];
if (2 == sscanf(TrackList[i], "%d %s\n", &_pid, _lang)) {
pids[j]=(uint16_t)_pid;
pids[j]=_pid;
language[j]=std::string(_lang);
}
}
@@ -605,7 +605,7 @@ void cPlayback::FindAllDvbsubtitlePids(uint16_t *pids, uint16_t *numpids, std::s
}
}
void cPlayback::FindAllTeletextsubtitlePids(uint16_t *pids, uint16_t *numpids, std::string *language)
void cPlayback::FindAllTeletextsubtitlePids(int *pids, unsigned int *numpids, std::string *language)
{
printf("%s:%s\n", FILENAME, __FUNCTION__);
int max_numpids = *numpids;
@@ -625,7 +625,7 @@ void cPlayback::FindAllTeletextsubtitlePids(uint16_t *pids, uint16_t *numpids, s
continue;
if (type != 2 && type != 5) // return subtitles only
continue;
pids[j]=(uint16_t)_pid;
pids[j]=_pid;
language[j]=std::string(TrackList[i]);
j++;
}
@@ -638,10 +638,10 @@ void cPlayback::FindAllTeletextsubtitlePids(uint16_t *pids, uint16_t *numpids, s
}
}
unsigned short cPlayback::GetTeletextPid(void)
int cPlayback::GetTeletextPid(void)
{
printf("%s:%s\n", FILENAME, __FUNCTION__);
int pid = 0;
int pid = -1;
if(player && player->manager && player->manager->teletext) {
char ** TrackList = NULL;
player->manager->teletext->Command(player, MANAGER_LIST, &TrackList);
@@ -664,9 +664,10 @@ unsigned short cPlayback::GetTeletextPid(void)
}
}
printf("teletext pid id %d (0x%x)\n", pid, pid);
return (unsigned short)pid;
return pid;
}
#if 0
/* dummy functions for subtitles */
void cPlayback::FindAllSubs(uint16_t * /*pids*/, unsigned short * /*supp*/, uint16_t *num, std::string * /*lang*/)
{
@@ -685,6 +686,7 @@ void cPlayback::GetChapters(std::vector<int> &positions, std::vector<std::string
positions.clear();
titles.clear();
}
#endif
//
cPlayback::cPlayback(int num __attribute__((unused)), void (*fbcb)(uint32_t **, unsigned int *, unsigned int *, unsigned int *, void (**)(void)))

View File

@@ -27,30 +27,32 @@ class cPlayback
bool Open(playmode_t PlayMode);
void Close(void);
bool Start(char *filename, unsigned short vpid, int vtype, unsigned short apid,
bool Start(char *filename, int vpid, int vtype, int apid,
int ac3, unsigned int duration, bool no_probe = true);
bool SetAPid(unsigned short pid, bool ac3);
bool SetSubtitlePid(unsigned short pid);
bool SetDvbsubtitlePid(unsigned short pid);
bool SetTeletextPid(unsigned short pid);
unsigned short GetAPid(void) { return mAudioStream; }
unsigned short GetSubtitlePid(void) { return mSubtitleStream; }
unsigned short GetDvbsubtitlePid(void) { return mDvbsubtitleStream; }
unsigned short GetTeletextPid(void);
bool SetAPid(int pid, bool ac3);
bool SetSubtitlePid(int pid);
bool SetDvbsubtitlePid(int pid);
bool SetTeletextPid(int pid);
int GetAPid(void) { return mAudioStream; }
int GetSubtitlePid(void) { return mSubtitleStream; }
int GetDvbsubtitlePid(void) { return mDvbsubtitleStream; }
int GetTeletextPid(void);
void SuspendSubtitle(bool);
bool SetSpeed(int speed);
bool GetSpeed(int &speed) const;
bool GetPosition(int &position, int &duration);
void GetPts(uint64_t &pts);
bool SetPosition(int position, bool absolute = false);
void FindAllPids(uint16_t *apids, unsigned short *ac3flags, uint16_t *numpida, std::string *language);
void FindAllSubtitlePids(uint16_t *pids, uint16_t *numpids, std::string *language);
void FindAllDvbsubtitlePids(uint16_t *pids, uint16_t *numpids, std::string *language);
void FindAllTeletextsubtitlePids(uint16_t *pids, uint16_t *numpidt, std::string *tlanguage);
void FindAllPids(int *apids, unsigned int *ac3flags, unsigned int *numpida, std::string *language);
void FindAllSubtitlePids(int *pids, unsigned int *numpids, std::string *language);
void FindAllDvbsubtitlePids(int *pids, unsigned int *numpids, std::string *language);
void FindAllTeletextsubtitlePids(int *pids, unsigned int *numpidt, std::string *tlanguage);
void RequestAbort(void);
#if 0
void FindAllSubs(uint16_t *pids, unsigned short *supported, uint16_t *numpida, std::string *language);
bool SelectSubtitles(int pid);
void GetChapters(std::vector<int> &positions, std::vector<std::string> &titles);
#endif
#if 0
// Functions that are not used by movieplayer.cpp:
bool GetOffset(off64_t &offset);