MediaProcessors
proc_frame_2_ffmpeg.h
Go to the documentation of this file.
1 /*
2  * Copyright (c) 2017, 2018 Rafael Antoniello
3  *
4  * This file is part of MediaProcessors.
5  *
6  * MediaProcessors is free software: you can redistribute it and/or modify
7  * it under the terms of the GNU Lesser General Public License as published by
8  * the Free Software Foundation, either version 3 of the License, or
9  * (at your option) any later version.
10  *
11  * MediaProcessors is distributed in the hope that it will be useful,
12  * but WITHOUT ANY WARRANTY; without even the implied warranty of
13  * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
14  * GNU Lesser General Public License for more details.
15  *
16  * You should have received a copy of the GNU Lesser General Public License
17  * along with MediaProcessors. If not, see <http://www.gnu.org/licenses/>.
18  */
19 
27 #ifndef MEDIAPROCESSORS_SRC_PROC_FRAME_2_FFMPEG_H_
28 #define MEDIAPROCESSORS_SRC_PROC_FRAME_2_FFMPEG_H_
29 
30 /* **** Definitions **** */
31 
32 /* Forward definitions */
33 typedef struct proc_frame_ctx_s proc_frame_ctx_t;
34 typedef struct AVFrame AVFrame;
35 typedef enum AVPixelFormat AVPixelFormat;
37 
38 /* **** Prototypes **** */
39 
46 void* proc_frame_ctx_2_avframe(const proc_frame_ctx_t *proc_frame_ctx);
47 
57 AVFrame* allocate_frame_video(int pix_fmt, int width, int height);
58 
65 void avframe_release(void **ref_avfame);
66 
73 proc_frame_ctx_t* avpacket_2_proc_frame_ctx(const void *avpacket_arg);
74 
81 void* proc_frame_ctx_2_avpacket(const proc_frame_ctx_t *proc_frame_ctx);
82 
89 void avpacket_release(void **ref_avpacket);
90 
97 proc_frame_ctx_t* avframe_2_proc_frame_ctx(const void *avframe);
98 
99 #endif /* MEDIAPROCESSORS_SRC_PROC_FRAME_2_FFMPEG_H_ */
proc_frame_ctx_t * avpacket_2_proc_frame_ctx(const void *avpacket_arg)
AVFrame * allocate_frame_video(int pix_fmt, int width, int height)
proc_sample_fmt_enum
Definition: proc_if.h:53
proc_frame_ctx_t * avframe_2_proc_frame_ctx(const void *avframe)
void avpacket_release(void **ref_avpacket)
enum proc_sample_fmt_enum proc_sample_fmt_t
void avframe_release(void **ref_avfame)
void * proc_frame_ctx_2_avframe(const proc_frame_ctx_t *proc_frame_ctx)
void * proc_frame_ctx_2_avpacket(const proc_frame_ctx_t *proc_frame_ctx)