diff options
author | Klaus Schmidinger <vdr@tvdr.de> | 2004-05-23 10:12:44 +0200 |
---|---|---|
committer | Klaus Schmidinger <vdr@tvdr.de> | 2004-05-23 10:12:44 +0200 |
commit | e912e48282b5937f88c4a51cc89aa4247d849084 (patch) | |
tree | 5855b7ffed6b532441fbca858e03b89e9f41d8a4 | |
parent | 4c5aedbd797ea4308974a3db4107cc8e32f50d17 (diff) | |
download | vdr-e912e48282b5937f88c4a51cc89aa4247d849084.tar.gz vdr-e912e48282b5937f88c4a51cc89aa4247d849084.tar.bz2 |
Added play mode pmVideoOnly
-rw-r--r-- | CONTRIBUTORS | 1 | ||||
-rw-r--r-- | HISTORY | 1 | ||||
-rw-r--r-- | device.h | 3 | ||||
-rw-r--r-- | dvbdevice.c | 12 |
4 files changed, 15 insertions, 2 deletions
diff --git a/CONTRIBUTORS b/CONTRIBUTORS index e0b92d02..2fb3a29d 100644 --- a/CONTRIBUTORS +++ b/CONTRIBUTORS @@ -675,6 +675,7 @@ Marcel Wiesweg <marcel.wiesweg@gmx.de> for his help in fixing some issues with gcc 3.4 for fixing a memory leak in NIT processing for adding a few missing initializations + for adding play mode pmVideoOnly Torsten Herz <torsten.herz@web.de> for fixing a possible deadlock when using the "Blue" button in the "Schedules" menu @@ -2830,3 +2830,4 @@ Video Disk Recorder Revision History - Moved the declaration of cMenuText to VDR/menu.h to make it available to plugins. It now also has a SetText() function that can be used to dynamically set the text in an already existing cMenuText (both suggested by Stefan Huelswitt). +- Added play mode pmVideoOnly (thanks to Marcel Wiesweg). @@ -4,7 +4,7 @@ * See the main source file 'vdr.c' for copyright information and * how to reach the author. * - * $Id: device.h 1.42 2004/04/17 10:15:25 kls Exp $ + * $Id: device.h 1.43 2004/05/23 10:10:08 kls Exp $ */ #ifndef __DEVICE_H @@ -36,6 +36,7 @@ enum ePlayMode { pmNone, // audio/video from decoder pmAudioVideo, // audio/video from player pmAudioOnly, // audio only from player, video from decoder pmAudioOnlyBlack, // audio only from player, no video (black screen) + pmVideoOnly, // video only from player, audio from decoder pmExtern_THIS_SHOULD_BE_AVOIDED // external player (e.g. MPlayer), release the device // WARNING: USE THIS MODE ONLY AS A LAST RESORT, IF YOU diff --git a/dvbdevice.c b/dvbdevice.c index 9d659e6b..cb143a6d 100644 --- a/dvbdevice.c +++ b/dvbdevice.c @@ -4,7 +4,7 @@ * See the main source file 'vdr.c' for copyright information and * how to reach the author. * - * $Id: dvbdevice.c 1.85 2004/05/22 15:11:48 kls Exp $ + * $Id: dvbdevice.c 1.86 2004/05/23 10:11:42 kls Exp $ */ #include "dvbdevice.h" @@ -873,6 +873,16 @@ bool cDvbDevice::SetPlayMode(ePlayMode PlayMode) CHECK(ioctl(fd_audio, AUDIO_PLAY)); CHECK(ioctl(fd_video, VIDEO_SET_BLANK, false)); break; + case pmVideoOnly: + CHECK(ioctl(fd_video, VIDEO_SET_BLANK, true)); + CHECK(ioctl(fd_video, VIDEO_STOP, true)); + CHECK(ioctl(fd_audio, AUDIO_SELECT_SOURCE, AUDIO_SOURCE_DEMUX)); + CHECK(ioctl(fd_audio, AUDIO_SET_AV_SYNC, false)); + CHECK(ioctl(fd_audio, AUDIO_PLAY)); + CHECK(ioctl(fd_video, VIDEO_CLEAR_BUFFER)); + CHECK(ioctl(fd_video, VIDEO_SELECT_SOURCE, VIDEO_SOURCE_MEMORY)); + CHECK(ioctl(fd_video, VIDEO_PLAY)); + break; case pmExtern_THIS_SHOULD_BE_AVOIDED: close(fd_video); close(fd_audio); |