From 871480933a1c28f8a9fed4c4d34d06c439a7a422 Mon Sep 17 00:00:00 2001
From: Srikant Patnaik
Date: Sun, 11 Jan 2015 12:28:04 +0530
Subject: Moved, renamed, and deleted files
The original directory structure was scattered and unorganized.
Changes are basically to make it look like kernel structure.
---
Documentation/DocBook/media/dvb/video.xml | 1657 +++++++++++++++++++++++++++++
1 file changed, 1657 insertions(+)
create mode 100644 Documentation/DocBook/media/dvb/video.xml
(limited to 'Documentation/DocBook/media/dvb/video.xml')
diff --git a/Documentation/DocBook/media/dvb/video.xml b/Documentation/DocBook/media/dvb/video.xml
new file mode 100644
index 00000000..25fb8232
--- /dev/null
+++ b/Documentation/DocBook/media/dvb/video.xml
@@ -0,0 +1,1657 @@
+
DVB Video Device
+The DVB video device controls the MPEG2 video decoder of the DVB hardware. It
+can be accessed through /dev/dvb/adapter0/video0. Data types and and
+ioctl definitions can be accessed by including linux/dvb/video.h in your
+application.
+
+Note that the DVB video device only controls decoding of the MPEG video stream, not
+its presentation on the TV or computer screen. On PCs this is typically handled by an
+associated video4linux device, e.g. /dev/video, which allows scaling and defining output
+windows.
+
+Some DVB cards don’t have their own MPEG decoder, which results in the omission of
+the audio and video device as well as the video4linux device.
+
+The ioctls that deal with SPUs (sub picture units) and navigation packets are only
+supported on some MPEG decoders made for DVD playback.
+
+
+Video Data Types
+
+
+
+
+
+
+video stream source
+The video stream source is set through the VIDEO_SELECT_SOURCE call and can take
+the following values, depending on whether we are replaying from an internal (demuxer) or
+external (user write) source.
+
+
+typedef enum {
+ VIDEO_SOURCE_DEMUX, /⋆ Select the demux as the main source ⋆/
+ VIDEO_SOURCE_MEMORY /⋆ If this source is selected, the stream
+ comes from the user through the write
+ system call ⋆/
+} video_stream_source_t;
+
+VIDEO_SOURCE_DEMUX selects the demultiplexer (fed either by the frontend or the
+DVR device) as the source of the video stream. If VIDEO_SOURCE_MEMORY
+is selected the stream comes from the application through the write() system
+call.
+
+
+
+
+video play state
+The following values can be returned by the VIDEO_GET_STATUS call representing the
+state of video playback.
+
+
+typedef enum {
+ VIDEO_STOPPED, /⋆ Video is stopped ⋆/
+ VIDEO_PLAYING, /⋆ Video is currently playing ⋆/
+ VIDEO_FREEZED /⋆ Video is freezed ⋆/
+} video_play_state_t;
+
+
+
+
+The structure must be zeroed before use by the application
+This ensures it can be extended safely in the future.
+struct video-command
+
+struct video_command {
+ __u32 cmd;
+ __u32 flags;
+ union {
+ struct {
+ __u64 pts;
+ } stop;
+
+ struct {
+ /⋆ 0 or 1000 specifies normal speed,
+ 1 specifies forward single stepping,
+ -1 specifies backward single stepping,
+ >>1: playback at speed/1000 of the normal speed,
+ <-1: reverse playback at (-speed/1000) of the normal speed. ⋆/
+ __s32 speed;
+ __u32 format;
+ } play;
+
+ struct {
+ __u32 data[16];
+ } raw;
+ };
+};
+
+
+
+
+struct video_size-t
+
+typedef struct {
+ int w;
+ int h;
+ video_format_t aspect_ratio;
+} video_size_t;
+
+
+
+
+
+struct video_event
+The following is the structure of a video event as it is returned by the VIDEO_GET_EVENT
+call.
+
+
+struct video_event {
+ __s32 type;
+#define VIDEO_EVENT_SIZE_CHANGED 1
+#define VIDEO_EVENT_FRAME_RATE_CHANGED 2
+#define VIDEO_EVENT_DECODER_STOPPED 3
+#define VIDEO_EVENT_VSYNC 4
+ __kernel_time_t timestamp;
+ union {
+ video_size_t size;
+ unsigned int frame_rate; /⋆ in frames per 1000sec ⋆/
+ unsigned char vsync_field; /⋆ unknown/odd/even/progressive ⋆/
+ } u;
+};
+
+
+
+
+struct video_status
+The VIDEO_GET_STATUS call returns the following structure informing about various
+states of the playback operation.
+
+
+struct video_status {
+ int video_blank; /⋆ blank video on freeze? ⋆/
+ video_play_state_t play_state; /⋆ current state of playback ⋆/
+ video_stream_source_t stream_source; /⋆ current source (demux/memory) ⋆/
+ video_format_t video_format; /⋆ current aspect ratio of stream ⋆/
+ video_displayformat_t display_format;/⋆ selected cropping mode ⋆/
+};
+
+If video_blank is set video will be blanked out if the channel is changed or if playback is
+stopped. Otherwise, the last picture will be displayed. play_state indicates if the video is
+currently frozen, stopped, or being played back. The stream_source corresponds to the seleted
+source for the video stream. It can come either from the demultiplexer or from memory.
+The video_format indicates the aspect ratio (one of 4:3 or 16:9) of the currently
+played video stream. Finally, display_format corresponds to the selected cropping
+mode in case the source video format is not the same as the format of the output
+device.
+
+
+
+
+struct video_still_picture
+An I-frame displayed via the VIDEO_STILLPICTURE call is passed on within the
+following structure.
+
+
+/⋆ pointer to and size of a single iframe in memory ⋆/
+struct video_still_picture {
+ char ⋆iFrame; /⋆ pointer to a single iframe in memory ⋆/
+ int32_t size;
+};
+
+
+
+
+video capabilities
+A call to VIDEO_GET_CAPABILITIES returns an unsigned integer with the following
+bits set according to the hardwares capabilities.
+
+
+ /⋆ bit definitions for capabilities: ⋆/
+ /⋆ can the hardware decode MPEG1 and/or MPEG2? ⋆/
+ #define VIDEO_CAP_MPEG1 1
+ #define VIDEO_CAP_MPEG2 2
+ /⋆ can you send a system and/or program stream to video device?
+ (you still have to open the video and the audio device but only
+ send the stream to the video device) ⋆/
+ #define VIDEO_CAP_SYS 4
+ #define VIDEO_CAP_PROG 8
+ /⋆ can the driver also handle SPU, NAVI and CSS encoded data?
+ (CSS API is not present yet) ⋆/
+ #define VIDEO_CAP_SPU 16
+ #define VIDEO_CAP_NAVI 32
+ #define VIDEO_CAP_CSS 64
+
+
+
+
+video system
+A call to VIDEO_SET_SYSTEM sets the desired video system for TV output. The
+following system types can be set:
+
+
+typedef enum {
+ VIDEO_SYSTEM_PAL,
+ VIDEO_SYSTEM_NTSC,
+ VIDEO_SYSTEM_PALN,
+ VIDEO_SYSTEM_PALNc,
+ VIDEO_SYSTEM_PALM,
+ VIDEO_SYSTEM_NTSC60,
+ VIDEO_SYSTEM_PAL60,
+ VIDEO_SYSTEM_PALM60
+} video_system_t;
+
+
+
+
+struct video_highlight
+Calling the ioctl VIDEO_SET_HIGHLIGHTS posts the SPU highlight information. The
+call expects the following format for that information:
+
+
+ typedef
+ struct video_highlight {
+ boolean active; /⋆ 1=show highlight, 0=hide highlight ⋆/
+ uint8_t contrast1; /⋆ 7- 4 Pattern pixel contrast ⋆/
+ /⋆ 3- 0 Background pixel contrast ⋆/
+ uint8_t contrast2; /⋆ 7- 4 Emphasis pixel-2 contrast ⋆/
+ /⋆ 3- 0 Emphasis pixel-1 contrast ⋆/
+ uint8_t color1; /⋆ 7- 4 Pattern pixel color ⋆/
+ /⋆ 3- 0 Background pixel color ⋆/
+ uint8_t color2; /⋆ 7- 4 Emphasis pixel-2 color ⋆/
+ /⋆ 3- 0 Emphasis pixel-1 color ⋆/
+ uint32_t ypos; /⋆ 23-22 auto action mode ⋆/
+ /⋆ 21-12 start y ⋆/
+ /⋆ 9- 0 end y ⋆/
+ uint32_t xpos; /⋆ 23-22 button color number ⋆/
+ /⋆ 21-12 start x ⋆/
+ /⋆ 9- 0 end x ⋆/
+ } video_highlight_t;
+
+
+
+
+video SPU
+Calling VIDEO_SET_SPU deactivates or activates SPU decoding, according to the
+following format:
+
+
+ typedef
+ struct video_spu {
+ boolean active;
+ int stream_id;
+ } video_spu_t;
+
+
+
+
+video SPU palette
+The following structure is used to set the SPU palette by calling VIDEO_SPU_PALETTE:
+
+
+ typedef
+ struct video_spu_palette{
+ int length;
+ uint8_t ⋆palette;
+ } video_spu_palette_t;
+
+
+
+
+video NAVI pack
+In order to get the navigational data the following structure has to be passed to the ioctl
+VIDEO_GET_NAVI:
+
+
+ typedef
+ struct video_navi_pack{
+ int length; /⋆ 0 ... 1024 ⋆/
+ uint8_t data[1024];
+ } video_navi_pack_t;
+
+
+
+
+
+video attributes
+The following attributes can be set by a call to VIDEO_SET_ATTRIBUTES:
+
+
+ typedef uint16_t video_attributes_t;
+ /⋆ bits: descr. ⋆/
+ /⋆ 15-14 Video compression mode (0=MPEG-1, 1=MPEG-2) ⋆/
+ /⋆ 13-12 TV system (0=525/60, 1=625/50) ⋆/
+ /⋆ 11-10 Aspect ratio (0=4:3, 3=16:9) ⋆/
+ /⋆ 9- 8 permitted display mode on 4:3 monitor (0=both, 1=only pan-sca ⋆/
+ /⋆ 7 line 21-1 data present in GOP (1=yes, 0=no) ⋆/
+ /⋆ 6 line 21-2 data present in GOP (1=yes, 0=no) ⋆/
+ /⋆ 5- 3 source resolution (0=720x480/576, 1=704x480/576, 2=352x480/57 ⋆/
+ /⋆ 2 source letterboxed (1=yes, 0=no) ⋆/
+ /⋆ 0 film/camera mode (0=camera, 1=film (625/50 only)) ⋆/
+
+
+
+
+
+Video Function Calls
+
+
+
+open()
+DESCRIPTION
+
+
+This system call opens a named video device (e.g. /dev/dvb/adapter0/video0)
+ for subsequent use.
+When an open() call has succeeded, the device will be ready for use.
+ The significance of blocking or non-blocking mode is described in the
+ documentation for functions where there is a difference. It does not affect the
+ semantics of the open() call itself. A device opened in blocking mode can later
+ be put into non-blocking mode (and vice versa) using the F_SETFL command
+ of the fcntl system call. This is a standard system call, documented in the Linux
+ manual page for fcntl. Only one user can open the Video Device in O_RDWR
+ mode. All other attempts to open the device in this mode will fail, and an
+ error-code will be returned. If the Video Device is opened in O_RDONLY
+ mode, the only ioctl call that can be used is VIDEO_GET_STATUS. All other
+ call will return an error code.
+
+
+
+SYNOPSIS
+
+
+int open(const char ⋆deviceName, int flags);
+
+
+PARAMETERS
+
+
+const char
+ *deviceName
+
+Name of specific video device.
+
+
+int flags
+
+A bit-wise OR of the following flags:
+
+
+
+O_RDONLY read-only access
+
+
+
+O_RDWR read/write access
+
+
+
+O_NONBLOCK open in non-blocking mode
+
+
+
+(blocking mode is the default)
+
+
+RETURN VALUE
+
+ENODEV
+
+Device driver not loaded/available.
+
+
+EINTERNAL
+
+Internal error.
+
+
+EBUSY
+
+Device or resource busy.
+
+
+EINVAL
+
+Invalid argument.
+
+
+
+
+
+close()
+DESCRIPTION
+
+
+This system call closes a previously opened video device.
+
+
+SYNOPSIS
+
+
+int close(int fd);
+
+
+PARAMETERS
+
+
+int fd
+
+File descriptor returned by a previous call to open().
+
+
+RETURN VALUE
+
+EBADF
+
+fd is not a valid open file descriptor.
+
+
+
+
+
+write()
+DESCRIPTION
+
+
+This system call can only be used if VIDEO_SOURCE_MEMORY is selected
+ in the ioctl call VIDEO_SELECT_SOURCE. The data provided shall be in
+ PES format, unless the capability allows other formats. If O_NONBLOCK is
+ not specified the function will block until buffer space is available. The amount
+ of data to be transferred is implied by count.
+
+
+SYNOPSIS
+
+
+size_t write(int fd, const void ⋆buf, size_t count);
+
+
+PARAMETERS
+
+
+int fd
+
+File descriptor returned by a previous call to open().
+
+
+void *buf
+
+Pointer to the buffer containing the PES data.
+
+
+size_t count
+
+Size of buf.
+
+
+RETURN VALUE
+
+EPERM
+
+Mode VIDEO_SOURCE_MEMORY not selected.
+
+
+ENOMEM
+
+Attempted to write more data than the internal buffer can
+ hold.
+
+
+EBADF
+
+fd is not a valid open file descriptor.
+
+
+
+VIDEO_STOP
+DESCRIPTION
+
+
+This ioctl call asks the Video Device to stop playing the current stream.
+ Depending on the input parameter, the screen can be blanked out or displaying
+ the last decoded frame.
+
+
+SYNOPSIS
+
+
+int ioctl(fd, int request = VIDEO_STOP, boolean
+ mode);
+
+
+PARAMETERS
+
+
+int fd
+
+File descriptor returned by a previous call to open().
+
+
+int request
+
+Equals VIDEO_STOP for this command.
+
+
+Boolean mode
+
+Indicates how the screen shall be handled.
+
+
+
+TRUE: Blank screen when stop.
+
+
+
+FALSE: Show last decoded frame.
+
+
+&return-value-dvb;
+
+VIDEO_PLAY
+DESCRIPTION
+
+
+This ioctl call asks the Video Device to start playing a video stream from the
+ selected source.
+
+
+SYNOPSIS
+
+
+int ioctl(fd, int request = VIDEO_PLAY);
+
+
+PARAMETERS
+
+
+int fd
+
+File descriptor returned by a previous call to open().
+
+
+int request
+
+Equals VIDEO_PLAY for this command.
+
+
+&return-value-dvb;
+
+VIDEO_FREEZE
+DESCRIPTION
+
+
+This ioctl call suspends the live video stream being played. Decoding
+ and playing are frozen. It is then possible to restart the decoding
+ and playing process of the video stream using the VIDEO_CONTINUE
+ command. If VIDEO_SOURCE_MEMORY is selected in the ioctl call
+ VIDEO_SELECT_SOURCE, the DVB subsystem will not decode any more
+ data until the ioctl call VIDEO_CONTINUE or VIDEO_PLAY is performed.
+
+
+SYNOPSIS
+
+
+int ioctl(fd, int request = VIDEO_FREEZE);
+
+
+PARAMETERS
+
+
+int fd
+
+File descriptor returned by a previous call to open().
+
+
+int request
+
+Equals VIDEO_FREEZE for this command.
+
+
+&return-value-dvb;
+
+VIDEO_CONTINUE
+DESCRIPTION
+
+
+This ioctl call restarts decoding and playing processes of the video stream
+ which was played before a call to VIDEO_FREEZE was made.
+
+
+SYNOPSIS
+
+
+int ioctl(fd, int request = VIDEO_CONTINUE);
+
+
+PARAMETERS
+
+
+int fd
+
+File descriptor returned by a previous call to open().
+
+
+int request
+
+Equals VIDEO_CONTINUE for this command.
+
+
+&return-value-dvb;
+
+VIDEO_SELECT_SOURCE
+DESCRIPTION
+
+
+This ioctl call informs the video device which source shall be used for the input
+ data. The possible sources are demux or memory. If memory is selected, the
+ data is fed to the video device through the write command.
+
+
+SYNOPSIS
+
+
+int ioctl(fd, int request = VIDEO_SELECT_SOURCE,
+ video_stream_source_t source);
+
+
+PARAMETERS
+
+
+int fd
+
+File descriptor returned by a previous call to open().
+
+
+int request
+
+Equals VIDEO_SELECT_SOURCE for this command.
+
+
+video_stream_source_t
+ source
+
+Indicates which source shall be used for the Video stream.
+
+
+&return-value-dvb;
+
+VIDEO_SET_BLANK
+DESCRIPTION
+
+
+This ioctl call asks the Video Device to blank out the picture.
+
+
+SYNOPSIS
+
+
+int ioctl(fd, int request = VIDEO_SET_BLANK, boolean
+ mode);
+
+
+PARAMETERS
+
+
+int fd
+
+File descriptor returned by a previous call to open().
+
+
+int request
+
+Equals VIDEO_SET_BLANK for this command.
+
+
+boolean mode
+
+TRUE: Blank screen when stop.
+
+
+
+FALSE: Show last decoded frame.
+
+
+&return-value-dvb;
+
+VIDEO_GET_STATUS
+DESCRIPTION
+
+
+This ioctl call asks the Video Device to return the current status of the device.
+
+
+SYNOPSIS
+
+
+ int ioctl(fd, int request = VIDEO_GET_STATUS, struct
+ video_status ⋆status);
+
+
+PARAMETERS
+
+
+int fd
+
+File descriptor returned by a previous call to open().
+
+
+int request
+
+Equals VIDEO_GET_STATUS for this command.
+
+
+struct video_status
+ *status
+
+Returns the current status of the Video Device.
+
+
+&return-value-dvb;
+
+VIDEO_GET_EVENT
+DESCRIPTION
+
+
+This ioctl call returns an event of type video_event if available. If an event is
+ not available, the behavior depends on whether the device is in blocking or
+ non-blocking mode. In the latter case, the call fails immediately with errno
+ set to EWOULDBLOCK. In the former case, the call blocks until an event
+ becomes available. The standard Linux poll() and/or select() system calls can
+ be used with the device file descriptor to watch for new events. For select(),
+ the file descriptor should be included in the exceptfds argument, and for
+ poll(), POLLPRI should be specified as the wake-up condition. Read-only
+ permissions are sufficient for this ioctl call.
+
+
+SYNOPSIS
+
+
+ int ioctl(fd, int request = VIDEO_GET_EVENT, struct
+ video_event ⋆ev);
+
+
+PARAMETERS
+
+
+int fd
+
+File descriptor returned by a previous call to open().
+
+
+int request
+
+Equals VIDEO_GET_EVENT for this command.
+
+
+struct video_event
+ *ev
+
+Points to the location where the event, if any, is to be
+ stored.
+
+
+&return-value-dvb;
+
+EWOULDBLOCK
+
+There is no event pending, and the device is in
+ non-blocking mode.
+
+
+EOVERFLOW
+
+Overflow in event queue - one or more events were lost.
+
+
+
+VIDEO_STILLPICTURE
+DESCRIPTION
+
+
+This ioctl call asks the Video Device to display a still picture (I-frame). The
+ input data shall contain an I-frame. If the pointer is NULL, then the current
+ displayed still picture is blanked.
+
+
+SYNOPSIS
+
+
+int ioctl(fd, int request = VIDEO_STILLPICTURE,
+ struct video_still_picture ⋆sp);
+
+
+PARAMETERS
+
+
+int fd
+
+File descriptor returned by a previous call to open().
+
+
+int request
+
+Equals VIDEO_STILLPICTURE for this command.
+
+
+struct
+ video_still_picture
+ *sp
+
+Pointer to a location where an I-frame and size is stored.
+
+
+&return-value-dvb;
+
+VIDEO_FAST_FORWARD
+DESCRIPTION
+
+
+This ioctl call asks the Video Device to skip decoding of N number of I-frames.
+ This call can only be used if VIDEO_SOURCE_MEMORY is selected.
+
+
+SYNOPSIS
+
+
+int ioctl(fd, int request = VIDEO_FAST_FORWARD, int
+ nFrames);
+
+
+PARAMETERS
+
+
+int fd
+
+File descriptor returned by a previous call to open().
+
+
+int request
+
+Equals VIDEO_FAST_FORWARD for this command.
+
+
+int nFrames
+
+The number of frames to skip.
+
+
+&return-value-dvb;
+
+EPERM
+
+Mode VIDEO_SOURCE_MEMORY not selected.
+
+
+
+VIDEO_SLOWMOTION
+DESCRIPTION
+
+
+This ioctl call asks the video device to repeat decoding frames N number of
+ times. This call can only be used if VIDEO_SOURCE_MEMORY is selected.
+
+
+SYNOPSIS
+
+
+int ioctl(fd, int request = VIDEO_SLOWMOTION, int
+ nFrames);
+
+
+PARAMETERS
+
+
+int fd
+
+File descriptor returned by a previous call to open().
+
+
+int request
+
+Equals VIDEO_SLOWMOTION for this command.
+
+
+int nFrames
+
+The number of times to repeat each frame.
+
+
+&return-value-dvb;
+
+EPERM
+
+Mode VIDEO_SOURCE_MEMORY not selected.
+
+
+
+VIDEO_GET_CAPABILITIES
+DESCRIPTION
+
+
+This ioctl call asks the video device about its decoding capabilities. On success
+ it returns and integer which has bits set according to the defines in section ??.
+
+
+SYNOPSIS
+
+
+int ioctl(fd, int request = VIDEO_GET_CAPABILITIES,
+ unsigned int ⋆cap);
+
+
+PARAMETERS
+
+
+int fd
+
+File descriptor returned by a previous call to open().
+
+
+int request
+
+Equals VIDEO_GET_CAPABILITIES for this
+ command.
+
+
+unsigned int *cap
+
+Pointer to a location where to store the capability
+ information.
+
+
+&return-value-dvb;
+
+VIDEO_SET_ID
+DESCRIPTION
+
+
+This ioctl selects which sub-stream is to be decoded if a program or system
+ stream is sent to the video device.
+
+
+SYNOPSIS
+
+
+int ioctl(int fd, int request = VIDEO_SET_ID, int
+ id);
+
+
+PARAMETERS
+
+
+int fd
+
+File descriptor returned by a previous call to open().
+
+
+int request
+
+Equals VIDEO_SET_ID for this command.
+
+
+int id
+
+video sub-stream id
+
+
+&return-value-dvb;
+
+EINVAL
+
+Invalid sub-stream id.
+
+
+
+VIDEO_CLEAR_BUFFER
+DESCRIPTION
+
+
+This ioctl call clears all video buffers in the driver and in the decoder hardware.
+
+
+SYNOPSIS
+
+
+int ioctl(fd, int request = VIDEO_CLEAR_BUFFER);
+
+
+PARAMETERS
+
+
+int fd
+
+File descriptor returned by a previous call to open().
+
+
+int request
+
+Equals VIDEO_CLEAR_BUFFER for this command.
+
+
+&return-value-dvb;
+
+VIDEO_SET_STREAMTYPE
+DESCRIPTION
+
+
+This ioctl tells the driver which kind of stream to expect being written to it. If
+ this call is not used the default of video PES is used. Some drivers might not
+ support this call and always expect PES.
+
+
+SYNOPSIS
+
+
+int ioctl(fd, int request = VIDEO_SET_STREAMTYPE,
+ int type);
+
+
+PARAMETERS
+
+
+int fd
+
+File descriptor returned by a previous call to open().
+
+
+int request
+
+Equals VIDEO_SET_STREAMTYPE for this command.
+
+
+int type
+
+stream type
+
+
+&return-value-dvb;
+
+VIDEO_SET_SYSTEM
+DESCRIPTION
+
+
+This ioctl sets the television output format. The format (see section ??) may
+ vary from the color format of the displayed MPEG stream. If the hardware is
+ not able to display the requested format the call will return an error.
+
+
+SYNOPSIS
+
+
+ int ioctl(fd, int request = VIDEO_SET_SYSTEM ,
+ video_system_t system);
+
+
+PARAMETERS
+
+
+int fd
+
+File descriptor returned by a previous call to open().
+
+
+int request
+
+Equals VIDEO_SET_FORMAT for this command.
+
+
+video_system_t
+ system
+
+video system of TV output.
+
+
+&return-value-dvb;
+
+EINVAL
+
+system is not a valid or supported video system.
+
+
+
+VIDEO_SET_HIGHLIGHT
+DESCRIPTION
+
+
+This ioctl sets the SPU highlight information for the menu access of a DVD.
+
+
+SYNOPSIS
+
+
+ int ioctl(fd, int request = VIDEO_SET_HIGHLIGHT
+ ,video_highlight_t ⋆vhilite)
+
+
+PARAMETERS
+
+
+int fd
+
+File descriptor returned by a previous call to open().
+
+
+int request
+
+Equals VIDEO_SET_HIGHLIGHT for this command.
+
+
+video_highlight_t
+ *vhilite
+
+SPU Highlight information according to section ??.
+
+
+&return-value-dvb;
+
+VIDEO_SET_SPU
+DESCRIPTION
+
+
+This ioctl activates or deactivates SPU decoding in a DVD input stream. It can
+ only be used, if the driver is able to handle a DVD stream.
+
+
+SYNOPSIS
+
+
+ int ioctl(fd, int request = VIDEO_SET_SPU ,
+ video_spu_t ⋆spu)
+
+
+PARAMETERS
+
+
+int fd
+
+File descriptor returned by a previous call to open().
+
+
+int request
+
+Equals VIDEO_SET_SPU for this command.
+
+
+video_spu_t *spu
+
+SPU decoding (de)activation and subid setting according
+ to section ??.
+
+
+&return-value-dvb;
+
+EINVAL
+
+input is not a valid spu setting or driver cannot handle
+ SPU.
+
+
+
+VIDEO_SET_SPU_PALETTE
+DESCRIPTION
+
+
+This ioctl sets the SPU color palette.
+
+
+SYNOPSIS
+
+
+ int ioctl(fd, int request = VIDEO_SET_SPU_PALETTE
+ ,video_spu_palette_t ⋆palette )
+
+
+PARAMETERS
+
+
+int fd
+
+File descriptor returned by a previous call to open().
+
+
+int request
+
+Equals VIDEO_SET_SPU_PALETTE for this command.
+
+
+video_spu_palette_t
+ *palette
+
+SPU palette according to section ??.
+
+
+&return-value-dvb;
+
+EINVAL
+
+input is not a valid palette or driver doesn’t handle SPU.
+
+
+
+VIDEO_GET_NAVI
+DESCRIPTION
+
+
+This ioctl returns navigational information from the DVD stream. This is
+ especially needed if an encoded stream has to be decoded by the hardware.
+
+
+SYNOPSIS
+
+
+ int ioctl(fd, int request = VIDEO_GET_NAVI ,
+ video_navi_pack_t ⋆navipack)
+
+
+PARAMETERS
+
+
+int fd
+
+File descriptor returned by a previous call to open().
+
+
+int request
+
+Equals VIDEO_GET_NAVI for this command.
+
+
+video_navi_pack_t
+ *navipack
+
+PCI or DSI pack (private stream 2) according to section
+ ??.
+
+
+&return-value-dvb;
+
+EFAULT
+
+driver is not able to return navigational information
+
+
+
+VIDEO_SET_ATTRIBUTES
+DESCRIPTION
+
+
+This ioctl is intended for DVD playback and allows you to set certain
+ information about the stream. Some hardware may not need this information,
+ but the call also tells the hardware to prepare for DVD playback.
+
+
+SYNOPSIS
+
+
+ int ioctl(fd, int request = VIDEO_SET_ATTRIBUTE
+ ,video_attributes_t vattr)
+
+
+PARAMETERS
+
+
+int fd
+
+File descriptor returned by a previous call to open().
+
+
+int request
+
+Equals VIDEO_SET_ATTRIBUTE for this command.
+
+
+video_attributes_t
+ vattr
+
+video attributes according to section ??.
+
+
+&return-value-dvb;
+
+EINVAL
+
+input is not a valid attribute setting.
+
+
+
--
cgit