libeplayer3 adjustments

This commit is contained in:
martii
2014-04-11 18:40:39 +02:00
parent 4b681a4412
commit 51891e653f
2 changed files with 28 additions and 43 deletions

View File

@@ -198,15 +198,11 @@ bool Output::Continue()
OpenThreads::ScopedLock<OpenThreads::Mutex> v_lock(videoMutex); OpenThreads::ScopedLock<OpenThreads::Mutex> v_lock(videoMutex);
OpenThreads::ScopedLock<OpenThreads::Mutex> a_lock(audioMutex); OpenThreads::ScopedLock<OpenThreads::Mutex> a_lock(audioMutex);
if (videofd > -1) { if (videofd > -1 && dioctl(videofd, VIDEO_CONTINUE, NULL))
if (dioctl(videofd, VIDEO_CONTINUE, NULL)) ret = false;
ret = false;
}
if (audiofd > -1) { if (audiofd > -1 && dioctl(audiofd, AUDIO_CONTINUE, NULL))
if (dioctl(audiofd, AUDIO_CONTINUE, NULL)) ret = false;
ret = false;
}
return ret; return ret;
} }

View File

@@ -83,10 +83,7 @@ bool Player::Open(const char *Url, bool _noprobe)
return false; return false;
} }
if (!input.Init(url.c_str())) return input.Init(url.c_str());
return false;
return true;
} }
bool Player::Close() bool Player::Close()
@@ -243,7 +240,7 @@ bool Player::FastForward(int speed)
isForwarding = 1; isForwarding = 1;
Speed = speed; Speed = speed;
output.FastForward(speed); output.FastForward(speed);
} else { } else {
fprintf(stderr,"fast forward not possible\n"); fprintf(stderr,"fast forward not possible\n");
ret = false; ret = false;
} }
@@ -258,27 +255,27 @@ bool Player::FastBackward(int speed)
/* Audio only reverse play not supported */ /* Audio only reverse play not supported */
if (input.videoTrack && !isForwarding && (!isPaused || isPlaying)) { if (input.videoTrack && !isForwarding && (!isPaused || isPlaying)) {
if ((speed > 0) || (speed < cMaxSpeed_fr)) { if ((speed > 0) || (speed < cMaxSpeed_fr)) {
fprintf(stderr, "speed %d out of range (0 - %d) \n", speed, cMaxSpeed_fr); fprintf(stderr, "speed %d out of range (0 - %d) \n", speed, cMaxSpeed_fr);
return false; return false;
} }
if (speed == 0) { if (speed == 0) {
isBackWard = false; isBackWard = false;
Speed = 0; /* reverse end */ Speed = 0; /* reverse end */
} else { } else {
Speed = speed; Speed = speed;
isBackWard = true; isBackWard = true;
} }
output.Clear(); output.Clear();
#if 0 #if 0
if (output->Command(player, OUTPUT_REVERSE, NULL) < 0) { if (output->Command(player, OUTPUT_REVERSE, NULL) < 0) {
fprintf(stderr,"OUTPUT_REVERSE failed\n"); fprintf(stderr,"OUTPUT_REVERSE failed\n");
isBackWard = false; isBackWard = false;
Speed = 1; Speed = 1;
ret = false; ret = false;
} }
#endif #endif
} else { } else {
fprintf(stderr,"fast backward not possible\n"); fprintf(stderr,"fast backward not possible\n");
@@ -393,31 +390,23 @@ void Player::RequestAbort()
int Player::GetVideoPid() int Player::GetVideoPid()
{ {
Track *track = input.videoTrack; Track *track = input.videoTrack;
if (track) return track ? track->pid : 0;
return track->pid;
return -1;
} }
int Player::GetAudioPid() int Player::GetAudioPid()
{ {
Track *track = input.audioTrack; Track *track = input.audioTrack;
if (track) return track ? track->pid : 0;
return track->pid;
return -1;
} }
int Player::GetSubtitlePid() int Player::GetSubtitlePid()
{ {
Track *track = input.subtitleTrack; Track *track = input.subtitleTrack;
if (track) return track ? track->pid : 0;
return track->pid;
return -1;
} }
int Player::GetTeletextPid() int Player::GetTeletextPid()
{ {
Track *track = input.teletextTrack; Track *track = input.teletextTrack;
if (track) return track ? track->pid : 0;
return track->pid;
return -1;
} }