Part II. LINUX DVB API

Version 5.2

Ralph J. K. Metzler

Marcus O. C. Metzler

Mauro Carvalho Chehab

Ported document to Docbook XML. 
Revision History
Revision 2.0.42011-05-06mcc
Add more information about DVB APIv5, better describing the frontend GET/SET props ioctl's.
Revision 2.0.32010-07-03mcc
Add some frontend capabilities flags, present on kernel, but missing at the specs.
Revision 2.0.22009-10-25mcc
documents FE_SET_FRONTEND_TUNE_MODE and FE_DISHETWORK_SEND_LEGACY_CMD ioctls.
Revision 2.0.12009-09-16mcc
Added ISDB-T test originally written by Patrick Boettcher
Revision 2.0.02009-09-06mcc
Conversion from LaTex to DocBook XML. The contents is the same as the original LaTex version.
Revision 1.0.02003-07-24rjkm
Initial revision on LaTEX.

Table of Contents

8. Introduction
What you need to know
History
Overview
Linux DVB Devices
API include files
9. DVB Frontend API
Frontend Data Types
frontend type
frontend capabilities
frontend information
diseqc master command
diseqc slave reply
diseqc slave reply
SEC continuous tone
SEC tone burst
frontend status
frontend parameters
frontend events
Frontend Function Calls
open()
close()
FE_READ_STATUS
FE_READ_BER
FE_READ_SNR
FE_READ_SIGNAL_STRENGTH
FE_READ_UNCORRECTED_BLOCKS
FE_SET_FRONTEND
FE_GET_FRONTEND
FE_GET_EVENT
FE_GET_INFO
FE_DISEQC_RESET_OVERLOAD
FE_DISEQC_SEND_MASTER_CMD
FE_DISEQC_RECV_SLAVE_REPLY
FE_DISEQC_SEND_BURST
FE_SET_TONE
FE_SET_VOLTAGE
FE_ENABLE_HIGH_LNB_VOLTAGE
FE_SET_FRONTEND_TUNE_MODE
FE_DISHNETWORK_SEND_LEGACY_CMD
FE_GET_PROPERTY/FE_SET_PROPERTY
FE_GET_PROPERTY
FE_SET_PROPERTY
Property types
Parameters that are common to all Digital TV standards
ISDB-T frontend
10. DVB Demux Device
Demux Data Types
dmx_output_t
dmx_input_t
dmx_pes_type_t
dmx_event_t
dmx_scrambling_status_t
struct dmx_filter
struct dmx_sct_filter_params
struct dmx_pes_filter_params
struct dmx_event
struct dmx_stc
Demux Function Calls
open()
close()
read()
write()
DMX_START
DMX_STOP
DMX_SET_FILTER
DMX_SET_PES_FILTER
DMX_SET_BUFFER_SIZE
DMX_GET_EVENT
DMX_GET_STC
11. DVB Video Device
Video Data Types
video_format_t
video_display_format_t
video stream source
video play state
struct video_event
struct video_status
struct video_still_picture
video capabilities
video system
struct video_highlight
video SPU
video SPU palette
video NAVI pack
video attributes
Video Function Calls
open()
close()
write()
VIDEO_STOP
VIDEO_PLAY
VIDEO_FREEZE
VIDEO_CONTINUE
VIDEO_SELECT_SOURCE
VIDEO_SET_BLANK
VIDEO_GET_STATUS
VIDEO_GET_EVENT
VIDEO_SET_DISPLAY_FORMAT
VIDEO_STILLPICTURE
VIDEO_FAST_FORWARD
VIDEO_SLOWMOTION
VIDEO_GET_CAPABILITIES
VIDEO_SET_ID
VIDEO_CLEAR_BUFFER
VIDEO_SET_STREAMTYPE
VIDEO_SET_FORMAT
VIDEO_SET_SYSTEM
VIDEO_SET_HIGHLIGHT
VIDEO_SET_SPU
VIDEO_SET_SPU_PALETTE
VIDEO_GET_NAVI
VIDEO_SET_ATTRIBUTES
12. DVB Audio Device
Audio Data Types
audio_stream_source_t
audio_play_state_t
audio_channel_select_t
struct audio_status
struct audio_mixer
audio encodings
struct audio_karaoke
audio attributes
Audio Function Calls
open()
close()
write()
AUDIO_STOP
AUDIO_PLAY
AUDIO_PAUSE
AUDIO_SELECT_SOURCE
AUDIO_SET_MUTE
AUDIO_SET_AV_SYNC
AUDIO_SET_BYPASS_MODE
AUDIO_CHANNEL_SELECT
AUDIO_GET_STATUS
AUDIO_GET_CAPABILITIES
AUDIO_CLEAR_BUFFER
AUDIO_SET_ID
AUDIO_SET_MIXER
AUDIO_SET_STREAMTYPE
AUDIO_SET_EXT_ID
AUDIO_SET_ATTRIBUTES
AUDIO_SET_KARAOKE
13. DVB CA Device
CA Data Types
ca_slot_info_t
ca_descr_info_t
ca_cap_t
ca_msg_t
ca_descr_t
CA Function Calls
open()
close()
14. DVB Network API
DVB Net Data Types
15. Kernel Demux API
Kernel Demux Data Types
dmx_success_t
TS filter types
dmx_ts_pes_t
demux_demux_t
Demux directory
Demux Directory API
dmx_register_demux()
dmx_unregister_demux()
dmx_get_demuxes()
Demux API
open()
close()
write()
allocate_ts_feed()
release_ts_feed()
allocate_section_feed()
release_section_feed()
descramble_mac_address()
descramble_section_payload()
add_frontend()
remove_frontend()
get_frontends()
connect_frontend()
disconnect_frontend()
Demux Callback API
dmx_ts_cb()
dmx_section_cb()
TS Feed API
set()
start_filtering()
stop_filtering()
Section Feed API
set()
allocate_filter()
release_filter()
start_filtering()
stop_filtering()
16. Examples
Tuning
The DVR device
E. DVB Frontend Header File