/* * stm_ioctls.h * * Copyright (C) STMicroelectronics Limited 2005. All rights reserved. * * Extensions to the LinuxDVB API (v3) implemented by the Havana implemenation. */ #ifndef H_STM_IOCTLS #define H_STM_IOCTLS /* * Whenever a sequence of values is extended (define or enum) always add the new values * So that old values are unchange to maintain binary compatibility. */ #define DVB_SPEED_NORMAL_PLAY 1000 #define DVB_SPEED_STOPPED 0 #define DVB_SPEED_REVERSE_STOPPED 0x80000000 #define DVB_FRAME_RATE_MULTIPLIER 1000 #define VIDEO_FULL_SCREEN (VIDEO_CENTER_CUT_OUT+1) #define DMX_FILTER_BY_PRIORITY_LOW 0x00010000 /* These flags tell the transport pes filter whether to filter */ #define DMX_FILTER_BY_PRIORITY_HIGH 0x00020000 /* using the ts priority bit and, if so, whether to filter on */ #define DMX_FILTER_BY_PRIORITY_MASK 0x00030000 /* bit set or bit clear */ /* * Extra events */ #define VIDEO_EVENT_FIRST_FRAME_ON_DISPLAY 5 /*(VIDEO_EVENT_VSYNC+1)*/ #define VIDEO_EVENT_FRAME_DECODED_LATE (VIDEO_EVENT_FIRST_FRAME_ON_DISPLAY+1) #define VIDEO_EVENT_DATA_DELIVERED_LATE (VIDEO_EVENT_FRAME_DECODED_LATE+1) #define VIDEO_EVENT_STREAM_UNPLAYABLE (VIDEO_EVENT_DATA_DELIVERED_LATE+1) #define VIDEO_EVENT_TRICK_MODE_CHANGE (VIDEO_EVENT_STREAM_UNPLAYABLE+1) #define VIDEO_EVENT_VSYNC_OFFSET_MEASURED (VIDEO_EVENT_TRICK_MODE_CHANGE+1) #define VIDEO_EVENT_FATAL_ERROR (VIDEO_EVENT_VSYNC_OFFSET_MEASURED+1) #define VIDEO_EVENT_OUTPUT_SIZE_CHANGED (VIDEO_EVENT_FATAL_ERROR+1) #define VIDEO_EVENT_FATAL_HARDWARE_FAILURE (VIDEO_EVENT_OUTPUT_SIZE_CHANGED+1) /* * List of possible container types - used to select demux.. If stream_source is VIDEO_SOURCE_DEMUX * then default is TRANSPORT, if stream_source is VIDEO_SOURCE_MEMORY then default is PES */ typedef enum { STREAM_TYPE_NONE, /* Deprecated */ STREAM_TYPE_TRANSPORT,/* Use latest PTI driver so it can be Deprecated */ STREAM_TYPE_PES, STREAM_TYPE_ES, /* Deprecated */ STREAM_TYPE_PROGRAM, /* Deprecated */ STREAM_TYPE_SYSTEM, /* Deprecated */ STREAM_TYPE_SPU, /* Deprecated */ STREAM_TYPE_NAVI, /* Deprecated */ STREAM_TYPE_CSS, /* Deprecated */ STREAM_TYPE_AVI, /* Deprecated */ STREAM_TYPE_MP3, /* Deprecated */ STREAM_TYPE_H264, /* Deprecated */ STREAM_TYPE_ASF, /* Needs work so it can be deprecated */ STREAM_TYPE_MP4, /* Deprecated */ STREAM_TYPE_RAW /* Deprecated */ } stream_type_t; /* * List of possible video encodings - used to select frame parser and codec. */ typedef enum { VIDEO_ENCODING_AUTO, VIDEO_ENCODING_MPEG1, VIDEO_ENCODING_MPEG2, VIDEO_ENCODING_MJPEG, VIDEO_ENCODING_DIVX3, VIDEO_ENCODING_DIVX4, VIDEO_ENCODING_DIVX5, VIDEO_ENCODING_MPEG4P2, VIDEO_ENCODING_H264, VIDEO_ENCODING_WMV, VIDEO_ENCODING_VC1, VIDEO_ENCODING_RAW, VIDEO_ENCODING_H263, VIDEO_ENCODING_FLV1, VIDEO_ENCODING_VP6, VIDEO_ENCODING_RMV, VIDEO_ENCODING_DIVXHD, VIDEO_ENCODING_AVS, VIDEO_ENCODING_VP3, VIDEO_ENCODING_THEORA, VIDEO_ENCODING_COMPOCAP, VIDEO_ENCODING_NONE, VIDEO_ENCODING_PRIVATE } video_encoding_t; /* * List of possible audio encodings - used to select frame parser and codec. */ typedef enum { AUDIO_ENCODING_AUTO, AUDIO_ENCODING_PCM, AUDIO_ENCODING_LPCM, AUDIO_ENCODING_MPEG1, AUDIO_ENCODING_MPEG2, AUDIO_ENCODING_MP3, AUDIO_ENCODING_AC3, AUDIO_ENCODING_DTS, AUDIO_ENCODING_AAC, AUDIO_ENCODING_WMA, AUDIO_ENCODING_RAW, AUDIO_ENCODING_LPCMA, AUDIO_ENCODING_LPCMH, AUDIO_ENCODING_LPCMB, AUDIO_ENCODING_SPDIF, /*