Fix bug: Option softhddevice.BlackPicture has no effect.

This commit is contained in:
Johns 2013-11-23 16:48:02 +01:00
parent 0e40f5f872
commit cfda3ba39d
3 changed files with 15 additions and 3 deletions

View File

@ -1,3 +1,8 @@
User johns
Date:
Fix bug: Option softhddevice.BlackPicture has no effect.
User Dr. Seltsam User Dr. Seltsam
Date: Tue Nov 5 16:46:34 CET 2013 Date: Tue Nov 5 16:46:34 CET 2013

View File

@ -2483,6 +2483,7 @@ int SetPlayMode(int play_mode)
VideoResetStart(MyVideoStream->HwDecoder); VideoResetStart(MyVideoStream->HwDecoder);
#ifdef DEBUG #ifdef DEBUG
VideoSwitch = GetMsTicks(); VideoSwitch = GetMsTicks();
Debug(3, "video: new stream start\n");
#endif #endif
} }
} }

12
video.c
View File

@ -4979,7 +4979,10 @@ static void VaapiSyncDecoder(VaapiDecoder * decoder)
_("video: decoder buffer empty, " _("video: decoder buffer empty, "
"duping frame (%d/%d) %d v-buf\n"), decoder->FramesDuped, "duping frame (%d/%d) %d v-buf\n"), decoder->FramesDuped,
decoder->FrameCounter, VideoGetBuffers(decoder->Stream)); decoder->FrameCounter, VideoGetBuffers(decoder->Stream));
if (decoder->Closing < -300) { // some time no new picture or black video configured
if (decoder->Closing < -300 || (VideoShowBlackPicture
&& decoder->Closing)) {
// clear ring buffer to trigger black picture
atomic_set(&decoder->SurfacesFilled, 0); atomic_set(&decoder->SurfacesFilled, 0);
} }
} }
@ -8609,7 +8612,10 @@ static void VdpauSyncDecoder(VdpauDecoder * decoder)
_("video: decoder buffer empty, " _("video: decoder buffer empty, "
"duping frame (%d/%d) %d v-buf\n"), decoder->FramesDuped, "duping frame (%d/%d) %d v-buf\n"), decoder->FramesDuped,
decoder->FrameCounter, VideoGetBuffers(decoder->Stream)); decoder->FrameCounter, VideoGetBuffers(decoder->Stream));
if (decoder->Closing < -300) { // some time no new picture or black video configured
if (decoder->Closing < -300 || (VideoShowBlackPicture
&& decoder->Closing)) {
// clear ring buffer to trigger black picture
atomic_set(&decoder->SurfacesFilled, 0); atomic_set(&decoder->SurfacesFilled, 0);
} }
} }
@ -8925,7 +8931,7 @@ static void VdpauDisplayHandlerThread(void)
static void VdpauSetOutputPosition(VdpauDecoder * decoder, int x, int y, static void VdpauSetOutputPosition(VdpauDecoder * decoder, int x, int y,
int width, int height) int width, int height)
{ {
Debug(3, "video/vdapu: output %dx%d%+d%+d\n", width, height, x, y); Debug(3, "video/vdpau: output %dx%d%+d%+d\n", width, height, x, y);
decoder->VideoX = x; decoder->VideoX = x;
decoder->VideoY = y; decoder->VideoY = y;