编译及运行应用
样例介绍
获取样例
单击jpege_sample获取样例
功能描述
该样例实现将YUV格式图片编码成.jpg图片。
原理介绍
在该样例中,涉及的关键功能点,如下表所示。
| 初始化 | - 调用aclInit接口初始化AscendCL配置。 - 调用aclFinalize接口实现AscendCL去初始化。 |
|---|---|
| Device管理 | - 调用aclrtSetDevice接口指定用于运算的Device。 - 调用aclrtGetRunMode接口获取软件栈的运行模式,根据运行模式的不同,内部处理流程不同。 - 调用aclrtResetDevice接口复位当前运算的Device,回收Device上的资源。 |
| Context管理 | - 调用aclrtCreateContext接口创建Context。 - 调用aclrtDestroyContext接口销毁Context。 |
| 内存管理 | - 调用aclrtMallocHost接口/aclrtFreeHost接口申请/释放Host上内存。 - 执行媒体数据处理时,若需要申请Device上的内存存放输入或输出数据,需调用hi_mpi_dvpp_malloc接口/hi_mpi_dvpp_free接口申请/释放内存。 |
| 数据传输 | 如果在板端环境上运行应用,则无需进行数据传输。 |
| 媒体数据处理V2 | 参见VENC视频编码功能/JPEGE图片编码功能中的接口。 |
目录结构
样例代码结构如下所示。
├── common //示例代码文件所在的目录
│ ├── sample_comm.h //声明编码函数的头文件
│ ├── sample_comm_venc.cpp //编码函数的实现文件
├── smoke_vpc //示例代码文件所在的目录
│ ├── sample_jpege.cpp //main函数的实现文件
├── CMakeLists.txt //编译脚本
父主题: 媒体数据处理V2(JPEGE图片编码)
编译及运行应用
单击jpege_sample获取样例,查看该样例下的README。
父主题: 媒体数据处理V2(JPEGE图片编码)
样例介绍
获取样例
单击vdec_sample获取样例
功能描述
该样例实现H264码流格式的视频解码。
原理介绍
在该样例中,涉及的关键功能点,如下表所示。
| 初始化 | - 调用aclInit接口初始化AscendCL配置。 - 调用aclFinalize接口实现AscendCL去初始化。 |
|---|---|
| Device管理 | - 调用aclrtSetDevice接口指定用于运算的Device。 - 调用aclrtGetRunMode接口获取软件栈的运行模式,根据运行模式的不同,内部处理流程不同。 - 调用aclrtResetDevice接口复位当前运算的Device,回收Device上的资源。 |
| Context管理 | - 调用aclrtCreateContext接口创建Context。 - 调用aclrtDestroyContext接口销毁Context。 |
| 内存管理 | - 调用aclrtMallocHost接口/aclrtFreeHost接口申请/释放Host上内存。 - 执行媒体数据处理时,若需要申请Device上的内存存放输入或输出数据,需调用hi_mpi_dvpp_malloc接口/hi_mpi_dvpp_free接口申请/释放内存。 |
| 数据传输 | 如果在板端环境上运行应用,则无需进行数据传输。 |
| 媒体数据处理V2 | 参见VDEC视频解码功能/JPEGD图片解码功能中的接口。 |
目录结构
样例代码结构如下所示。
├── Vdec.h //声明解码函数的头文件
├── Vdec.cpp //解码函数的实现文件
├── VdecDemo.cpp //main函数的实现文件
├── CMakeLists.txt //编译脚本
父主题: 媒体数据处理V2(VDEC视频解码)
编译及运行应用
单击vdec_sample获取样例,查看该样例下的README。
父主题: 媒体数据处理V2(VDEC视频解码)
样例介绍
获取样例
单击venc_sample获取样例
功能描述
该样例实现将YUV420SP、YVU420SP格式的视频编码成H264、H265格式的码流。
原理介绍
在该样例中,涉及的关键功能点,如下表所示。
| 初始化 | - 调用aclInit接口初始化AscendCL配置。 - 调用aclFinalize接口实现AscendCL去初始化。 |
|---|---|
| Device管理 | - 调用aclrtSetDevice接口指定用于运算的Device。 - 调用aclrtGetRunMode接口获取软件栈的运行模式,根据运行模式的不同,内部处理流程不同。 - 调用aclrtResetDevice接口复位当前运算的Device,回收Device上的资源。 |
| Context管理 | - 调用aclrtCreateContext接口创建Context。 - 调用aclrtDestroyContext接口销毁Context。 |
| 内存管理 | - 调用aclrtMallocHost接口/aclrtFreeHost接口申请/释放Host上内存。 - 执行媒体数据处理时,若需要申请Device上的内存存放输入或输出数据,需调用hi_mpi_dvpp_malloc接口/hi_mpi_dvpp_free接口申请/释放内存。 |
| 数据传输 | 如果在板端环境上运行应用,则无需进行数据传输。 |
| 媒体数据处理V2 | 参见VENC视频编码功能/JPEGE图片编码功能中的接口。 |
目录结构
样例代码结构如下所示。
├── libHisiSdkCodec //示例代码文件所在的目录
│ ├── hmev_hisi_sdk_*.h //声明编码函数的头文件
│ ├── hmev_hisi_sdk_*.cpp //编码函数的实现文件
├── CMakeLists.txt //编译脚本
父主题: 媒体数据处理V2(VENC视频编码)
编译及运行应用
单击venc_sample获取样例,查看该样例下的README。
父主题: 媒体数据处理V2(VENC视频编码)
样例介绍
获取样例
单击pngd_sample获取样例
功能描述
该样例实现.png、.PNG图片的解码。
原理介绍
在该样例中,涉及的关键功能点,如下表所示。
| 初始化 | - 调用aclInit接口初始化AscendCL配置。 - 调用aclFinalize接口实现AscendCL去初始化。 |
|---|---|
| Device管理 | - 调用aclrtSetDevice接口指定用于运算的Device。 - 调用aclrtGetRunMode接口获取软件栈的运行模式,根据运行模式的不同,内部处理流程不同。 - 调用aclrtResetDevice接口复位当前运算的Device,回收Device上的资源。 |
| Context管理 | - 调用aclrtCreateContext接口创建Context。 - 调用aclrtDestroyContext接口销毁Context。 |
| 内存管理 | - 调用aclrtMallocHost接口/aclrtFreeHost接口申请/释放Host上内存。 - 执行媒体数据处理时,若需要申请Device上的内存存放输入或输出数据,需调用hi_mpi_dvpp_malloc接口/hi_mpi_dvpp_free接口申请/释放内存。 |
| 数据传输 | 如果在板端环境上运行应用,则无需进行数据传输。 |
| 媒体数据处理V2 | 参见PNGD图片解码功能中的接口。 |
目录结构
样例代码结构如下所示。
├── src //示例代码文件所在的目录
│ ├── sample_comm.h //声明解码函数的头文件
│ ├── sample_comm_pngd.cpp //解码函数的实现文件
│ ├── sample_pngd.cpp //解码函数的实现文件
├── CMakeLists.txt //编译脚本
父主题: 媒体数据处理V2(PNGD图片解码)
编译及运行应用
单击pngd_sample获取样例,查看该样例下的README。
父主题: 媒体数据处理V2(PNGD图片解码)
在线提单