rm_define.h

来自「AMLOGIC DPF source code」· C头文件 代码 · 共 63 行

H
63
字号
#ifndef RM_DEFINE_H
#define RM_DEFINE_H

typedef enum {
    RM_INIT = 0, 
    RM_BUILD_INDEX,            /* building index */
    RM_HOLD,                   /* when normal seamless playback, hold decoder before enough data */ 
    RM_PLAY,                   /* normal seamless playback */ 
    RM_PAUSE,                  /* paused during normal seamless playback */ 
    RM_SEAMLESS_FF,            /* 2x seamless FF */ 
    RM_NON_SEAMLESS_BREAK,

    RM_STOP, 
    RM_QUIT,
    RM_DATAEND, 
    RM_PLAYEND, 
    RM_ERROR,
    RM_NON_SEAMLESS_FF,        /* non_seamless playback */
} rm_status_e;

typedef struct {
    rm_status_e  status;
} rminfo_t;

typedef enum {
    NM_RM_PLAYTIME = 0,        /* current play time in 90Khz */
    NM_RM_SUBTITLE_TEXT,       /* a pointer to subtext data will be returned */
    NM_RM_SUBTITLE_INFO,       /* 0: no or invalid subtitle file, 1: subtitle file found and parsed ok */
    NM_RM_PIC_INFO,            /* picture size information, [width:height] in high/low 16 bits */
    NM_RM_STATUS,              /* playback status change notification in rm_status_e */
    NM_RM_END_OF_PLAY,         /* rm file playback end */
    NM_RM_GET_NEXT,            /* search next rm file */
    NM_RM_GET_PREV,            /* search previous rm file */
    NM_RM_VIDEO_ZOOMLEVEL,     /* if video is zoomed, it tells current zoom level */
    NM_RM_FFFB_SPEED,          /* FF speed, FB speed with FB_TYPE set */
    NM_RM_AUDIO_INFO,           /* audio information */
    NM_RM_FILTER,              /* filter one format we dont wanna support */
    NM_RM_DURATION_INFO        /* movie duration */
} rm_notify_msg_e;

#define RM_AUDIO_FORMAT_COOK   7
#define RM_AUDIO_FORMAT_RAAC   8

#define rm_audio_put_format(msg, val)      (msg = msg & 0xffffff00L | val)
#define rm_audio_put_sr(msg, val)          (msg = msg & 0xfe0000ffL | (val << 8))
#define rm_audio_put_chan_num(msg, val)    (msg = msg & 0x01ffffffL | (val << 25))

#define rm_audio_format(msg)               ((msg) & 0xff)
#define rm_audio_sr(msg)                   (((msg) >> 8) & 0x1ffff)
#define rm_audio_chan_num(msg)             (((msg) >> 25) & 0x7)

#define rm_video_put_format(msg, val)      (msg = msg & 0xffffff00L | val)
#define rm_video_put_width(msg, val)       (msg = msg & 0xfff000ffL | (val << 8))
#define rm_video_put_height(msg, val)      (msg = msg & 0x000fffffL | (val << 20))

#define rm_video_format(msg)               ((msg) & 0xff)
#define rm_video_width(msg)                (((msg) >> 8)  & 0xfff)
#define rm_video_height(msg)               (((msg) >> 20) & 0xfff)

#define FFFB_MASK       0x7fff
#define FB_TYPE         0x8000

#endif

⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?