dvr: Irdeto LiveTV APK pvr playback bug fix [1/1]
PD#SWPL-20802
Problem:
Irdeto LiveTV APK pvr playback bug fix
Solution:
2. user seek when state is pause. we need check is need replay.
if fmt and pid are not changed,we only change read pos.
3. change sync mode at dvr_play_test.
4. add x2 1/4 1/8 speed.
5. fixed build warning.
6. clear first frame when start play.
7. add play is null.
8. del some debug info.
9. close audio when ff fb.
Verify:
Android Q + AC214
Change-Id: Id28a021a5fff1fe47534f98f710a2ebe591d6094
Signed-off-by: hualing chen <hualing.chen@amlogic.com>
diff --git a/include/dvr_utils.h b/include/dvr_utils.h
index 36f0227..145ae09 100644
--- a/include/dvr_utils.h
+++ b/include/dvr_utils.h
@@ -10,13 +10,98 @@
extern "C" {
#endif
+
+/**\brief read sysfs node
+ * name file name
+ * buf store sysfs value buf
+ * len buf len
+ */
+typedef void (*DVR_Read_Sysfs_Cb)(const char *name, char *buf, int len);
+
+/**\brief write sysfs
+ * name file name
+ * cmd write to sysfs node cmd
+ */
+typedef void (*DVR_Write_Sysfs_Cb)(const char *name, const char *cmd);
+
+/**\brief read prop
+ * name prop name
+ * buf store prop value buf
+ * len buf len
+ */
+typedef void (*DVR_Read_Prop_Cb)(const char *name, char *buf, int len);
+
+/**\brief write prop
+ * name prop name
+ * cmd write to prop node cmd
+ */
+typedef void (*DVR_Write_Prop_Cb)(const char *name, const char *cmd);
+
+
+/**\brief regist rw sysfs cb
+ * \param[in] fun callback
+ * \return
+ * - DVR_SUCCESS
+ * - error
+ */
+int dvr_register_rw_sys(DVR_Read_Sysfs_Cb RCb, DVR_Write_Sysfs_Cb WCb);
+
+/**\brief unregist rw sys cb
+ */
+int dvr_unregister_rw_sys(void);
+
+
+/**\brief regist rw prop cb
+ * \param[in] fun callback
+ * \return
+ * - DVR_SUCCESS
+ * - error
+ */
+
+int dvr_rgister_rw_prop(DVR_Read_Prop_Cb RCb, DVR_Write_Prop_Cb WCb);
+
+/**\brief unregist rw prop cb */
+int dvr_unregister_rw_prop(void);
+
+
/**\brief Write a string cmd to a file
* \param[in] name File name
* \param[in] cmd String command
* \return DVR_SUCCESS On success
* \return Error code On failure
*/
-int DVR_FileEcho(const char *name, const char *cmd);
+
+int dvr_file_echo(const char *name, const char *cmd);
+
+
+/**\brief read sysfs file
+ * \param[in] name, File name
+ * \param[out] buf, store sysfs node value
+ * \return DVR_SUCCESS On success
+ * \return Error code On failure
+ */
+
+int dvr_file_read(const char *name, char *buf, int len);
+
+
+/**\brief Write a string cmd to a prop
+ * \param[in] name, prop name
+ * \param[in] cmd, String command
+ * \return DVR_SUCCESS On success
+ * \return Error code On failure
+ */
+
+int dvr_prop_echo(const char *name, const char *cmd);
+
+
+/**\brief read prop value
+ * \param[in] name, prop name
+ * \param[out] buf, store prop node value
+ * \return DVR_SUCCESS On success
+ * \return Error code On failure
+ */
+
+int dvr_prop_read(const char *name, char *buf, int len);
#ifdef __cplusplus
}