H.264 Codec for ESP32-S3
Loading...
Searching...
No Matches
esp_h264_dec_sw.h
Go to the documentation of this file.
1/*
2 * SPDX-FileCopyrightText: 2024 Espressif Systems (Shanghai) CO LTD
3 *
4 * SPDX-License-Identifier: Apache-2.0
5 */
6
7#pragma once
8
9#include <stdio.h>
10#include "esp_h264_dec.h"
12
13#ifdef __cplusplus
14extern "C" {
15#endif
16
17/**
18 * @brief Handle type for software-based H.264 decoder parameters
19 */
21
22/**
23 * @brief Configuration type for software-based H.264 decoder
24 */
25typedef esp_h264_dec_cfg_t esp_h264_dec_cfg_sw_t;
26
27/**
28 * @brief This function is used to create a new instance of the `esp_h264_dec_t` data structure,
29 * which represents a single-streams H.264 decoder in software. The decoder is from tinyh264
30 *
31 * @note The group of picture(GOP) will be updated in intra frame
32 *
33 * @param[in] cfg It is a pointer to the `esp_h264_dec_cfg_sw_t` structure, which contains the configuration settings for the decoder
34 * @param[out] out_dec It is a double pointer to the `esp_h264_dec_t` structure, which will store the created decoder instance
35 *
36 * @return
37 * - ESP_H264_ERR_OK Succeeded
38 * - ESP_H264_ERR_ARG Invalid arguments passed
39 * - ESP_H264_ERR_MEM Insufficient memory
40 */
41esp_h264_err_t esp_h264_dec_sw_new(const esp_h264_dec_cfg_sw_t *cfg, esp_h264_dec_handle_t *out_dec);
42
43/**
44 * @brief This function returns a pointer to the software-decoded parameter structure associated with the given `esp_h264_dec_t` decoder
45 *
46 * @param[in] dec The decoder instance that is from `esp_h264_dec_hw_new`
47 * @param[out] out_param The parameter set handle
48 *
49 * @return
50 * - ESP_H264_ERR_OK Succeeded
51 * - ESP_H264_ERR_ARG Invalid arguments passed
52 */
54
55#ifdef __cplusplus
56}
57#endif
struct esp_h264_dec_if * esp_h264_dec_handle_t
H.264 stream decoder handle.
Definition: esp_h264_dec.h:25
struct esp_h264_dec_param_if * esp_h264_dec_param_handle_t
It is a pointer to the H.264 decoding parameters structure.
Definition: esp_h264_dec_param.h:18
esp_h264_err_t esp_h264_dec_sw_new(const esp_h264_dec_cfg_sw_t *cfg, esp_h264_dec_handle_t *out_dec)
This function is used to create a new instance of the esp_h264_dec_t data structure,...
Definition: esp_h264_dec_sw.c:94
esp_h264_err_t esp_h264_dec_sw_get_param_hd(esp_h264_dec_handle_t dec, esp_h264_dec_param_sw_handle_t *out_param)
This function returns a pointer to the software-decoded parameter structure associated with the given...
Definition: esp_h264_dec_sw.c:132
esp_h264_dec_param_handle_t esp_h264_dec_param_sw_handle_t
Handle type for software-based H.264 decoder parameters.
Definition: esp_h264_dec_sw.h:20
esp_h264_dec_cfg_t esp_h264_dec_cfg_sw_t
Configuration type for software-based H.264 decoder.
Definition: esp_h264_dec_sw.h:25