Professional Documents
Culture Documents
PVR3 Porting Guide
PVR3 Porting Guide
2.0
2010-10-29
Change History
Page 2 of 6
Acer Laboratories (Shanghai) Inc.: 6F Building 39, No.333 Qinjiang Road, Shanghai 200233, China.
Tel: +21-64855058. Fax: +21-64951498
Acer Labs Inc. Marketing Requirements Spec.
M3602 2_Tuner
1. This guide is used for STB projects with DVR function porting old PVR (PVR DDK for
M3329E or PVR_HD for M3602) to PVR3.
According to this guide, following projects type can be implemented:
1. M3329E 1-Tuner DVR;
2. M3329E 2-Tuner DVR;
3. M3602 1-Tuner DVR;
4. M3602 2-Tuner DVR;
Page 3 of 6
Acer Laboratories (Shanghai) Inc.: 6F Building 39, No.333 Qinjiang Road, Shanghai 200233, China.
Tel: +21-64855058. Fax: +21-64951498
Acer Labs Inc. Marketing Requirements Spec.
4. Added APIs
a) RET_CODE pvr_attach(PPVR_MGR_CFG cfg, PPVR_CFG ini_param); // init PVR
sub-modules, such as folder format.
b) BOOL pvr_r_close_ext(PVR_HANDLE *handle, struct record_stop_param
*stop_param); // for enhanced record close.
c) RET_CODE pvr_r_pause(PVR_HANDLE handle); RET_CODE
pvr_r_resume(PVR_HANDLE handle); // record pause/resume function while
recording.
d) BOOL pvr_p_close_ext(PVR_HANDLE *handle, struct playback_stop_param
*stop_param); // enhanced playback close control.
e) BOOL pvr_p_restart(PVR_HANDLE handle, UINT32 param1); // for append record
playback control.
f) BOOL pvr_init_size(char *mount_name); // for record/timeshift size divide by PVR
default rule.
g) RET_CODE pvr_set_repeatmark(UINT16 record_idx, UINT32 mark_time); UINT8
pvr_get_repeatmark(UINT16 record_idx, UINT32 *mark_ptm_array); RET_CODE
pvr_clear_repeatmark(UINT16 record_idx); // for repeat-AB function.
h) RET_CODE pvr_set_disk_use(UINT8 use, const char *mount_name); // APP can set
partition for PVR usage.
i) INT8 pvr_get_disk_mode(char *mount_name); // APP can check partition in PVR
usage.
j) enum PVR_DISKMODE pvr_get_cur_mode(char *rec_partition, char
*tms_partition); // APP can check PVR module partition usage.
5. Modified APIs
a) INT32 pvr_register(UINT32 vbh_addr,UINT32 vbh_len); // now support pass data
structure for partition PVR init. (compatable with old default partition PVR init).
b) PVR_HANDLE pvr_r_open(struct record_prog_param *prog_info); PVR_HANDLE
pvr_p_open_ext(struct playback_param *param); // update param structure to pass more
control info.
6. Deleted APIs
a) void pvr_continue_tms_enable(void); // now be enabled by param when call
pvr_r_open().
b) void pvr_UI_init(PVR2UI_Callback ui_callback); void pvr_init_ui_param(struct
PVR2UIParam *pvr_param); void pvr_set_parameters(PVR_CFG pvr_cfg); // now be
implemented in pvr_attach().
c) void pvr_r_set_ts_file_size(UINT8 level); // now be implemented as follows:
Page 4 of 6
Acer Laboratories (Shanghai) Inc.: 6F Building 39, No.333 Qinjiang Road, Shanghai 200233, China.
Tel: +21-64855058. Fax: +21-64951498
Acer Labs Inc. Marketing Requirements Spec.
7. Other Issues
a) Use PVR3, should pay attention to struct record_prog_param and struct playback_param
in lib_pvr_eng.h
Struct record_prog_param is used to record program. The difference between pvr2 and pvr3
is as follows:
struct playback_param is used to playback record, The difference between pvr2 and pvr3 is
as follows:
Page 5 of 6
Acer Laboratories (Shanghai) Inc.: 6F Building 39, No.333 Qinjiang Road, Shanghai 200233, China.
Tel: +21-64855058. Fax: +21-64951498
Acer Labs Inc. Marketing Requirements Spec.
NOTES:
Other detail changes please refer to Ali SDK with code included by macro PVR3_SUPPORT.
Page 6 of 6
Acer Laboratories (Shanghai) Inc.: 6F Building 39, No.333 Qinjiang Road, Shanghai 200233, China.
Tel: +21-64855058. Fax: +21-64951498