
# I/O APIs
 #### write_iceberg(target_name, database, create_if_not_exists=False, overwrite=False, is_external=False, schema=None)
描述：将数据写入指定的Iceberg表中。
输入参数：
- target_name (str) ：目标表的名称。
- database (str) ：表所属的数据库。
- create_if_not_exists (bool) ：如果为True，当表不存在时将自动创建该表。
- overwrite (bool)：如果为True，将覆盖表中现有的数据。
- is_external (bool) ：如果为True，将表视为外部表。
- schema（可选，任意类型）：表的结构定义，可选参数。
返回值类型：None
 #### write_orc(target_name, database, create_if_not_exists=False, overwrite=False, is_external=False, schema=None)
描述：将数据写入指定的ORC表中。
输入参数：
- target_name (str) ：目标表的名称。
- database (str) ：表所属的数据库。
- create_if_not_exists (bool) ：如果为True，当表不存在时将自动创建该表。
- overwrite (bool) ：如果为True，将覆盖表中现有的数据。
- is_external (bool) ：如果为True，将表视为外部表。
- schema (可选，任意类型) ：表的结构定义，可选参数。
返回值类型：None
 #### write_parquet(target_name, database, create_if_not_exists=False, overwrite=False, is_external=False, schema=None)
描述：将数据写入指定的parquet表中。
输入参数：
- target_name (str) ：目标表的名称。
- database (str) ：表所属的数据库。
- create_if_not_exists (bool) ：如果为True，当表不存在时将自动创建该表。
- overwrite (bool) ：如果为True，将覆盖表中现有的数据。
- is_external (bool) ：如果为True，将表视为外部表。
- schema（可选，任意类型）：表的结构定义，可选参数。
返回值类型：None
 #### write_images(path, column="image", filename_prefix=None, file_format="png", try_create_dir=True)
描述：将图片数据写入指定路径的OBS中。
输入参数：
- path (str)：OBS中存放图片的路径。
- column (str)：Dataset中存放图片二进制数据的列。
- filename_prefix (str)：如果不为None，则使用该string作为写入图片文件的文件名前缀。
- file_format (str)：将写入文件转换为该format格式，目前支持png和jpg格式。
- try_create_dir (bool) ：如果为True，则允许在OBS上创建*path*目录。
返回值类型：None
 #### write_audios(path, column="audio", start=None, end=None, sample_rate=16000, filename_prefix=None, file_format="wav", try_create_dir=True)
描述：将音频数据写入指定路径的OBS中。
输入参数：
- path (str)：OBS中存放音频的路径。
- column (str)：Dataset中存放音频二进制数据的列。
- start (float)：写入音频的起始位置，单位为秒。
- end (float)：写入音频的终止位置，单位为秒。
- sample_rate (int)：设置写入音频的采样率为sample_rate。
- filename_prefix (str)：如果不为None，则使用该string作为写入音频文件的文件名前缀。
- file_format (str)：将写入文件转换为该format格式，目前支持写入为wav、flac、aiff、mp3、m4a（aac和wma写入时会变为m4a）格式。
- try_create_dir (bool) ：如果为True，则允许在OBS上创建*path*目录。
返回值类型：None
 #### write_videos(path, column="video", filename_prefix=None, file_format="mp4", codec="avc1", try_create_dir=True)
描述：将视频数据写入指定路径的OBS中。
输入参数：
- path (str)：OBS中存放视频的路径。
- column (str)：Dataset中存放视频二进制数据的列。
- filename_prefix (str)：如果不为None，则使用该string作为写入音频文件的文件名前缀。
- file_format (str)：将写入文件转换为该format格式，目前支持写入为mp4、mov、m4v、m4a、3gp、3g2格式。
- codec (str)：将写入音频的编码转换为该codec编码，目前支持写入为avc1、avc3、h264、hcv1、h265、hevc、vp9、vp8、mp4v。
- try_create_dir (bool)：如果为True，则允许在OBS上创建*path*目录。
返回值类型：None
 #### read_images(path, size=None, mode=None, include_paths=False, file_extensions=None)
描述：从OBS指定的路径中读取图片文件到Dataset。
输入参数：
- path (str)：OBS中存放图片的路径。
- size (tuple\[int, int\])：读取图片，同时修改图片比例为tuple中的比例。
- mode (str)：读取图片并修改图片mode为该参数设置的值。
- include_paths (bool)：是否允许导入path列到Dataset中。
- file_extensions (list\[str\])：允许读取的图片文件后缀，支持png、jpg、jpeg格式。
返回值类型：dataset，dataset是image集合，可直接通过dataset.image来获取image列内容，如果include_paths为true，还可以通过dataset.path来获取路径列内容。
 #### read_audios(path, size=None, start=None, end=None, sample_rate=16000, include_paths=False, file_extensions=None)
描述：从OBS指定的路径中读取音频文件到Dataset。
输入参数：
- path (str)：OBS中存放音频的路径。
- start (float)：读取音频的起始位置，单位为秒。
- end (float)：读取音频的终止位置，单位为秒。
- sample_rate (int)：设置读取音频的采样率为sample_rate。
- include_paths (bool)：是否允许导入path列到Dataset中。
- file_extensions (list\[str\])：允许读取的音频文件后缀，支持wav、flac、aiff、aac、mp3、m4a、wma（其中aac和wma读取后会变为m4a）格式。
返回值类型：dataset，dataset是audio集合，可直接通过dataset.audio来获取audio列内容，如果include_paths为true，还可以通过dataset.path来获取路径列内容。
 #### read_video_frames(path, image_height, image_width, image_format='jpeg', include_paths=False, include_timestamp=False, file_extensions=None)
描述：从OBS指定的路径中读取视频帧（图片）文件到Dataset。
输入参数：
- path (str)：OBS中存放视频的路径。
- image_height (int)：读取视频帧的长。
- image_width (int)：读取视频帧的宽。
- image_format (str)： 读取视频帧的图片格式，支持png、jpg、jpeg。
- include_paths (bool)：是否允许导入path列到Dataset中。
- include_timestamp (bool)：是否允许导入timestamp列到Dataset中。
- file_extensions (list\[str\])：允许读取的视频文件后缀，支持mp4、mkv、mov、avi、wmv、flv、m4v、3gp格式。
返回值类型：dataset，dataset是video帧（图片）集合，可直接通过dataset.image来获取image列内容，如果include_paths为true，还可以通过dataset.path来获取路径列内容，include_timestamp同理。
