mirror of
https://github.com/VDR4Arch/vdr.git
synced 2023-10-10 13:36:52 +02:00
Reduced number of remote control keys
This commit is contained in:
parent
86f14230c2
commit
ed77b757a0
2
BUGS
2
BUGS
@ -1,7 +1,7 @@
|
|||||||
Video Disk Recorder - Known Bugs
|
Video Disk Recorder - Known Bugs
|
||||||
--------------------------------
|
--------------------------------
|
||||||
|
|
||||||
* Sometimes picture and sound drift apart.
|
* Sometimes the picture "jumps" as if a frame is skipped.
|
||||||
Presumably this is a problem in the card driver or firmware?
|
Presumably this is a problem in the card driver or firmware?
|
||||||
|
|
||||||
* When the on-screen display is activated during recording,
|
* When the on-screen display is activated during recording,
|
||||||
|
22
INSTALL
22
INSTALL
@ -12,7 +12,7 @@ about that driver). For example, if the DVB driver was
|
|||||||
extracted into the directory /home/kls/vdr/DVB, then this
|
extracted into the directory /home/kls/vdr/DVB, then this
|
||||||
package should be extracted into /home/kls/vdr/VDR.
|
package should be extracted into /home/kls/vdr/VDR.
|
||||||
|
|
||||||
This program requires the card driver version 0.04 or higher
|
This program requires the card driver version 0.05 or higher
|
||||||
to work properly.
|
to work properly.
|
||||||
|
|
||||||
After extracting the package, change into the VDR directory
|
After extracting the package, change into the VDR directory
|
||||||
@ -73,7 +73,9 @@ key after the other so that it can learn the various key codes. You will
|
|||||||
at least need to provide an "Up" and a "Down" key, so that you can switch
|
at least need to provide an "Up" and a "Down" key, so that you can switch
|
||||||
channels. The rest of the key definitions is optional, but the more keys
|
channels. The rest of the key definitions is optional, but the more keys
|
||||||
you define, the more you will be able to navigate through the menus and
|
you define, the more you will be able to navigate through the menus and
|
||||||
control recording/replaying.
|
control recording/replaying. The program uses only a very small number
|
||||||
|
of keys which have multiple meanings in the various modes (see MANUAL
|
||||||
|
for a detailed description).
|
||||||
If the program has been built with "DEBUG_REMOTE=1", it will use the
|
If the program has been built with "DEBUG_REMOTE=1", it will use the
|
||||||
key configuration file 'keys-pc.conf', so that you won't loose data
|
key configuration file 'keys-pc.conf', so that you won't loose data
|
||||||
when switching between normal and debug mode.
|
when switching between normal and debug mode.
|
||||||
@ -81,19 +83,11 @@ when switching between normal and debug mode.
|
|||||||
The default PC key assignments are:
|
The default PC key assignments are:
|
||||||
|
|
||||||
Up, Down, Left, Right Crsr keys in numeric block
|
Up, Down, Left, Right Crsr keys in numeric block
|
||||||
Menu '5' in numeric block
|
Menu 'Home' in numeric block
|
||||||
Ok Enter
|
Ok '5' in numeric block
|
||||||
Back Backspace
|
Back 'End' in numeric block
|
||||||
0..9 '0'..'9' in top row
|
|
||||||
Red, Green, Yellow, Blue 'F1'..'F4'
|
Red, Green, Yellow, Blue 'F1'..'F4'
|
||||||
Record 'r'
|
0..9 '0'..'9' in top row
|
||||||
Pause 'p'
|
|
||||||
Stop 's'
|
|
||||||
Begin 'B'
|
|
||||||
SearchForward 'f'
|
|
||||||
SearchBack 'b'
|
|
||||||
SkipForward 'PgDn' in numeric block
|
|
||||||
SkipBack 'PgUp' in numeric block
|
|
||||||
|
|
||||||
If you prefer different key assignments, simply delete the file
|
If you prefer different key assignments, simply delete the file
|
||||||
'keys-pc.conf' and restart 'vdr' to get into learning mode.
|
'keys-pc.conf' and restart 'vdr' to get into learning mode.
|
||||||
|
62
MANUAL
62
MANUAL
@ -1,6 +1,28 @@
|
|||||||
Video Disk Recorder User's Manual
|
Video Disk Recorder User's Manual
|
||||||
---------------------------------
|
---------------------------------
|
||||||
|
|
||||||
|
* Remote Control Keys
|
||||||
|
|
||||||
|
The following remote control keys are used to control the VDR
|
||||||
|
operation. To keep the number of different keys as small as
|
||||||
|
possible, several keys have different meanings in the various
|
||||||
|
modes:
|
||||||
|
|
||||||
|
Key Normal Main Channels Timer Edit/New Recordings Replay
|
||||||
|
|
||||||
|
Up Ch up Crsr up Crsr up Crsr up Crsr up Crsr up Begin
|
||||||
|
Down Ch down Crsr down Crsr down Crsr down Crsr down Crsr down Pause
|
||||||
|
Left - - - Disable Decrement - Search back
|
||||||
|
Right - - - Enable Increment - Search forward
|
||||||
|
Ok Ch display Select Switch Edit Accept Play Progress disp.
|
||||||
|
Menu Menu on Menu off Menu off Menu off Menu off Menu off Menu on
|
||||||
|
Back - Menu off Main menu Main menu Discard Main menu -
|
||||||
|
Red - Record Edit Edit - Play -
|
||||||
|
Green - - New New - - Skip -60s
|
||||||
|
Yellow - - Delete Delete - Delete Skip +60s
|
||||||
|
Blue - - Mark Mark - - Stop
|
||||||
|
0..9 Ch select - - - Numeric inp. - -
|
||||||
|
|
||||||
* Navigating through the On Screen Menus
|
* Navigating through the On Screen Menus
|
||||||
|
|
||||||
The "Main" menu can be called up with the "Menu" key of your remote
|
The "Main" menu can be called up with the "Menu" key of your remote
|
||||||
@ -22,10 +44,10 @@ Video Disk Recorder User's Manual
|
|||||||
keys. "Ok" then confirms the changes.
|
keys. "Ok" then confirms the changes.
|
||||||
|
|
||||||
The "Red", "Green", "Yellow" and "Blue" buttons have special meanings
|
The "Red", "Green", "Yellow" and "Blue" buttons have special meanings
|
||||||
in the various menus and are listed at the bottom of the on-screen-display.
|
in various menus and are listed at the bottom of the on-screen-display.
|
||||||
|
|
||||||
At any point in the menu system, pressing the "Menu" key again will
|
At any point in the menu system, pressing the "Menu" key again will
|
||||||
immediately leave the menu system.
|
immediately leave the menu system (discarding any pending changes).
|
||||||
|
|
||||||
* Selecting a Channel
|
* Selecting a Channel
|
||||||
|
|
||||||
@ -48,9 +70,9 @@ Video Disk Recorder User's Manual
|
|||||||
|
|
||||||
* Instant Recording
|
* Instant Recording
|
||||||
|
|
||||||
You can start recording the current channel by pressing the "Record"
|
You can start recording the current channel by pressing the "Red" button
|
||||||
button. This will create a timer event named "@channelname" that starts
|
in the Main menu. This will create a timer event named "@channelname" that
|
||||||
at the current time and records for two hours.
|
starts at the current time and records for two hours.
|
||||||
If you want to modify the recording time you need to edit the timer.
|
If you want to modify the recording time you need to edit the timer.
|
||||||
Stop instant recording by pressing the "Menu" button and selecting
|
Stop instant recording by pressing the "Menu" button and selecting
|
||||||
"Stop Recording", or by disabling the timer.
|
"Stop Recording", or by disabling the timer.
|
||||||
@ -61,25 +83,27 @@ Video Disk Recorder User's Manual
|
|||||||
list with the "Up" and "Down" button and press "Ok" (or the "Red" button)
|
list with the "Up" and "Down" button and press "Ok" (or the "Red" button)
|
||||||
to start playback.
|
to start playback.
|
||||||
Playback can be stopped via the Main menu by selecting "Stop replaying",
|
Playback can be stopped via the Main menu by selecting "Stop replaying",
|
||||||
or by pressing the "Stop" button outside the menu.
|
or by pressing the "Blue" button outside the menu.
|
||||||
|
|
||||||
* Replay Control
|
* Replay Control
|
||||||
|
|
||||||
The following keys have the listed meaning in Replay mode:
|
The following keys have the listed meaning in Replay mode:
|
||||||
|
|
||||||
- "Begin" Positions to beginning of the recording and starts playback
|
- Up Positions to beginning of the recording and starts playback
|
||||||
from there.
|
from there.
|
||||||
- "Pause" Halts playback at the current position. Press again to continue
|
- Down Halts playback at the current position. Press again to continue
|
||||||
playback.
|
playback.
|
||||||
- "Stop" Stops playback and stores the current position, so that
|
- Blue Stops playback and stores the current position, so that
|
||||||
playback can be resumed later at that point.
|
playback can be resumed later at that point.
|
||||||
- "Search" Runs playback forward or backward at a higher speed. Press
|
- Left
|
||||||
again to resume normal speed.
|
Right Runs playback forward or backward at a higher speed. Press
|
||||||
- "Skip" Skips about 60 seconds forward or backward.
|
again to resume normal speed.
|
||||||
- "Ok" Brings up the replay progress display, which shows the date,
|
- Green
|
||||||
time and title of the recording, a progress bar and the
|
Yellow Skips about 60 seconds back or forward.
|
||||||
current and total time of the recording.
|
- Ok Brings up the replay progress display, which shows the date,
|
||||||
Press "Ok" again to turn off the progress display.
|
time and title of the recording, a progress bar and the
|
||||||
|
current and total time of the recording.
|
||||||
|
Press "Ok" again to turn off the progress display.
|
||||||
|
|
||||||
* Programming the Timer
|
* Programming the Timer
|
||||||
|
|
||||||
|
7
TODO
7
TODO
@ -1,11 +1,8 @@
|
|||||||
TODO list for the Video Disk Recorder project
|
TODO list for the Video Disk Recorder project
|
||||||
---------------------------------------------
|
---------------------------------------------
|
||||||
|
|
||||||
* Make it work with two DVB-S PCI cards to allow simultaneous
|
* Implement simultaneous record/replay with a single DVB card once
|
||||||
recording of one programme, while replaying another programme
|
the card driver/firmware allows this.
|
||||||
(or maybe the same one, but time delayed).
|
|
||||||
Maybe we can do this with only a single card, if the card
|
|
||||||
driver/firmware allows simultaneuos record/playback?
|
|
||||||
* Implement "on-disk editing" to allow "cutting out" of certain
|
* Implement "on-disk editing" to allow "cutting out" of certain
|
||||||
scenes in order to archive them (or, reversely, cut out
|
scenes in order to archive them (or, reversely, cut out
|
||||||
commercial breaks).
|
commercial breaks).
|
||||||
|
18
config.c
18
config.c
@ -4,7 +4,7 @@
|
|||||||
* See the main source file 'vdr.c' for copyright information and
|
* See the main source file 'vdr.c' for copyright information and
|
||||||
* how to reach the author.
|
* how to reach the author.
|
||||||
*
|
*
|
||||||
* $Id: config.c 1.6 2000/05/01 16:29:31 kls Exp $
|
* $Id: config.c 1.7 2000/05/27 14:44:15 kls Exp $
|
||||||
*/
|
*/
|
||||||
|
|
||||||
#include "config.h"
|
#include "config.h"
|
||||||
@ -23,6 +23,10 @@ tKey keyTable[] = { // "Up" and "Down" must be the first two keys!
|
|||||||
{ kBack, "Back", 0 },
|
{ kBack, "Back", 0 },
|
||||||
{ kLeft, "Left", 0 },
|
{ kLeft, "Left", 0 },
|
||||||
{ kRight, "Right", 0 },
|
{ kRight, "Right", 0 },
|
||||||
|
{ kRed, "Red", 0 },
|
||||||
|
{ kGreen, "Green", 0 },
|
||||||
|
{ kYellow, "Yellow", 0 },
|
||||||
|
{ kBlue, "Blue", 0 },
|
||||||
{ k0, "0", 0 },
|
{ k0, "0", 0 },
|
||||||
{ k1, "1", 0 },
|
{ k1, "1", 0 },
|
||||||
{ k2, "2", 0 },
|
{ k2, "2", 0 },
|
||||||
@ -33,18 +37,6 @@ tKey keyTable[] = { // "Up" and "Down" must be the first two keys!
|
|||||||
{ k7, "7", 0 },
|
{ k7, "7", 0 },
|
||||||
{ k8, "8", 0 },
|
{ k8, "8", 0 },
|
||||||
{ k9, "9", 0 },
|
{ k9, "9", 0 },
|
||||||
{ kRed, "Red", 0 },
|
|
||||||
{ kGreen, "Green", 0 },
|
|
||||||
{ kYellow, "Yellow", 0 },
|
|
||||||
{ kBlue, "Blue", 0 },
|
|
||||||
{ kRecord, "Record", 0 },
|
|
||||||
{ kPause, "Pause", 0 },
|
|
||||||
{ kStop, "Stop", 0 },
|
|
||||||
{ kBegin, "Begin", 0 },
|
|
||||||
{ kSearchForward, "SearchForward", 0 },
|
|
||||||
{ kSearchBack, "SearchBack", 0 },
|
|
||||||
{ kSkipForward, "SkipForward", 0 },
|
|
||||||
{ kSkipBack, "SkipBack", 0 },
|
|
||||||
{ kNone, "", 0 },
|
{ kNone, "", 0 },
|
||||||
};
|
};
|
||||||
|
|
||||||
|
12
config.h
12
config.h
@ -4,7 +4,7 @@
|
|||||||
* See the main source file 'vdr.c' for copyright information and
|
* See the main source file 'vdr.c' for copyright information and
|
||||||
* how to reach the author.
|
* how to reach the author.
|
||||||
*
|
*
|
||||||
* $Id: config.h 1.5 2000/05/01 10:45:17 kls Exp $
|
* $Id: config.h 1.6 2000/05/27 14:43:46 kls Exp $
|
||||||
*/
|
*/
|
||||||
|
|
||||||
#ifndef __CONFIG_H
|
#ifndef __CONFIG_H
|
||||||
@ -27,19 +27,11 @@ enum eKeys { // "Up" and "Down" must be the first two keys!
|
|||||||
kBack,
|
kBack,
|
||||||
kLeft,
|
kLeft,
|
||||||
kRight,
|
kRight,
|
||||||
k0, k1, k2, k3, k4, k5, k6, k7, k8, k9,
|
|
||||||
kRed,
|
kRed,
|
||||||
kGreen,
|
kGreen,
|
||||||
kYellow,
|
kYellow,
|
||||||
kBlue,
|
kBlue,
|
||||||
kRecord,
|
k0, k1, k2, k3, k4, k5, k6, k7, k8, k9,
|
||||||
kPause,
|
|
||||||
kStop,
|
|
||||||
kBegin,
|
|
||||||
kSearchForward,
|
|
||||||
kSearchBack,
|
|
||||||
kSkipForward,
|
|
||||||
kSkipBack,
|
|
||||||
kNone
|
kNone
|
||||||
};
|
};
|
||||||
|
|
||||||
|
BIN
keys-pc.conf
BIN
keys-pc.conf
Binary file not shown.
36
menu.c
36
menu.c
@ -4,7 +4,7 @@
|
|||||||
* See the main source file 'vdr.c' for copyright information and
|
* See the main source file 'vdr.c' for copyright information and
|
||||||
* how to reach the author.
|
* how to reach the author.
|
||||||
*
|
*
|
||||||
* $Id: menu.c 1.14 2000/05/06 15:43:57 kls Exp $
|
* $Id: menu.c 1.15 2000/05/27 16:10:47 kls Exp $
|
||||||
*/
|
*/
|
||||||
|
|
||||||
#include "menu.h"
|
#include "menu.h"
|
||||||
@ -1009,6 +1009,7 @@ cMenuMain::cMenuMain(bool Replaying)
|
|||||||
Add(new cOsdItem(buffer, osStopRecord));
|
Add(new cOsdItem(buffer, osStopRecord));
|
||||||
delete buffer;
|
delete buffer;
|
||||||
}
|
}
|
||||||
|
SetHelp("Record");
|
||||||
Display();
|
Display();
|
||||||
lastActivity = time(NULL);
|
lastActivity = time(NULL);
|
||||||
}
|
}
|
||||||
@ -1028,8 +1029,13 @@ eOSState cMenuMain::ProcessKey(eKeys Key)
|
|||||||
return osEnd;
|
return osEnd;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
default: if (Key == kMenu)
|
default: switch (Key) {
|
||||||
state = osEnd;
|
case kMenu: state = osEnd; break;
|
||||||
|
case kRed: if (!HasSubMenu())
|
||||||
|
state = osRecord;
|
||||||
|
break;
|
||||||
|
default: break;
|
||||||
|
}
|
||||||
}
|
}
|
||||||
if (Key != kNone)
|
if (Key != kNone)
|
||||||
lastActivity = time(NULL);
|
lastActivity = time(NULL);
|
||||||
@ -1202,18 +1208,18 @@ eOSState cReplayControl::ProcessKey(eKeys Key)
|
|||||||
if (visible)
|
if (visible)
|
||||||
shown = dvbApi->ShowProgress(!shown) || shown;
|
shown = dvbApi->ShowProgress(!shown) || shown;
|
||||||
switch (Key) {
|
switch (Key) {
|
||||||
case kBegin: dvbApi->Skip(-INT_MAX); break;
|
case kUp: dvbApi->Skip(-INT_MAX); break;
|
||||||
case kPause: dvbApi->PauseReplay(); break;
|
case kDown: dvbApi->PauseReplay(); break;
|
||||||
case kStop: Hide();
|
case kBlue: Hide();
|
||||||
dvbApi->StopReplay();
|
dvbApi->StopReplay();
|
||||||
return osEnd;
|
return osEnd;
|
||||||
case kSearchBack: dvbApi->FastRewind(); break;
|
case kLeft: dvbApi->FastRewind(); break;
|
||||||
case kSearchForward: dvbApi->FastForward(); break;
|
case kRight: dvbApi->FastForward(); break;
|
||||||
case kSkipBack: dvbApi->Skip(-60); break;
|
case kGreen: dvbApi->Skip(-60); break;
|
||||||
case kSkipForward: dvbApi->Skip(60); break;
|
case kYellow: dvbApi->Skip(60); break;
|
||||||
case kMenu: Hide(); return osMenu; // allow direct switching to menu
|
case kMenu: Hide(); return osMenu; // allow direct switching to menu
|
||||||
case kOk: visible ? Hide() : Show(); break;
|
case kOk: visible ? Hide() : Show(); break;
|
||||||
default: return osUnknown;
|
default: return osUnknown;
|
||||||
}
|
}
|
||||||
return osContinue;
|
return osContinue;
|
||||||
}
|
}
|
||||||
|
3
osd.h
3
osd.h
@ -4,7 +4,7 @@
|
|||||||
* See the main source file 'vdr.c' for copyright information and
|
* See the main source file 'vdr.c' for copyright information and
|
||||||
* how to reach the author.
|
* how to reach the author.
|
||||||
*
|
*
|
||||||
* $Id: osd.h 1.8 2000/05/01 15:16:00 kls Exp $
|
* $Id: osd.h 1.9 2000/05/27 15:35:41 kls Exp $
|
||||||
*/
|
*/
|
||||||
|
|
||||||
#ifndef __OSD_H
|
#ifndef __OSD_H
|
||||||
@ -22,6 +22,7 @@ enum eOSState { osUnknown,
|
|||||||
osChannels,
|
osChannels,
|
||||||
osTimer,
|
osTimer,
|
||||||
osRecordings,
|
osRecordings,
|
||||||
|
osRecord,
|
||||||
osReplay,
|
osReplay,
|
||||||
osStopRecord,
|
osStopRecord,
|
||||||
osStopReplay,
|
osStopReplay,
|
||||||
|
11
vdr.c
11
vdr.c
@ -22,7 +22,7 @@
|
|||||||
*
|
*
|
||||||
* The project's page is at http://www.cadsoft.de/people/kls/vdr
|
* The project's page is at http://www.cadsoft.de/people/kls/vdr
|
||||||
*
|
*
|
||||||
* $Id: vdr.c 1.18 2000/05/06 15:24:01 kls Exp $
|
* $Id: vdr.c 1.19 2000/05/27 15:38:35 kls Exp $
|
||||||
*/
|
*/
|
||||||
|
|
||||||
#include <signal.h>
|
#include <signal.h>
|
||||||
@ -107,6 +107,10 @@ int main(int argc, char *argv[])
|
|||||||
case osMenu: DELETENULL(Menu);
|
case osMenu: DELETENULL(Menu);
|
||||||
Menu = new cMenuMain(ReplayControl);
|
Menu = new cMenuMain(ReplayControl);
|
||||||
break;
|
break;
|
||||||
|
case osRecord: DELETENULL(Menu);
|
||||||
|
if (!cRecordControls::Start())
|
||||||
|
Interface.Error("No free DVB device to record!");
|
||||||
|
break;
|
||||||
case osReplay: DELETENULL(Menu);
|
case osReplay: DELETENULL(Menu);
|
||||||
DELETENULL(ReplayControl);
|
DELETENULL(ReplayControl);
|
||||||
ReplayControl = new cReplayControl;
|
ReplayControl = new cReplayControl;
|
||||||
@ -142,11 +146,6 @@ int main(int argc, char *argv[])
|
|||||||
channel->Switch();
|
channel->Switch();
|
||||||
}
|
}
|
||||||
break;
|
break;
|
||||||
// Instant Recording:
|
|
||||||
case kRecord: DELETENULL(Menu);
|
|
||||||
if (!cRecordControls::Start())
|
|
||||||
Interface.Error("No free DVB device to record!");
|
|
||||||
break;
|
|
||||||
// Menu Control:
|
// Menu Control:
|
||||||
case kMenu: Menu = new cMenuMain(ReplayControl); break;
|
case kMenu: Menu = new cMenuMain(ReplayControl); break;
|
||||||
// Viewing Control:
|
// Viewing Control:
|
||||||
|
Loading…
Reference in New Issue
Block a user