MediaProcessors
muxers_settings.h
Go to the documentation of this file.
1 /*
2  * Copyright (c) 2017 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 
26 #ifndef MEDIAPROCESSORS_SRC_MUXERS_SETTINGS_H_
27 #define MEDIAPROCESSORS_SRC_MUXERS_SETTINGS_H_
28 
29 #include <libmediaprocsutils/mem_utils.h>
30 
31 /* **** Definitions **** */
32 
33 /* Forward definitions */
34 typedef struct log_ctx_s log_ctx_t;
35 typedef struct cJSON cJSON;
36 
42 typedef struct muxers_settings_mux_ctx_s {
46  int rtsp_port;
50  int64_t time_stamp_freq;
56 
66  char *rtsp_url;
68 
69 /* **** Prototypes **** */
70 
76 
83  muxers_settings_mux_ctx_t **ref_muxers_settings_mux_ctx);
84 
93  volatile muxers_settings_mux_ctx_t *muxers_settings_mux_ctx);
94 
102  volatile muxers_settings_mux_ctx_t *muxers_settings_mux_ctx);
103 
116  const muxers_settings_mux_ctx_t *muxers_settings_mux_ctx_src,
117  muxers_settings_mux_ctx_t *muxers_settings_mux_ctx_dst);
118 
129  volatile muxers_settings_mux_ctx_t *muxers_settings_mux_ctx,
130  const char *str, log_ctx_t *log_ctx);
131 
143  volatile muxers_settings_mux_ctx_t *muxers_settings_mux_ctx,
144  cJSON **ref_cjson_rest, log_ctx_t *log_ctx);
145 
151 
158  muxers_settings_dmux_ctx_t **ref_muxers_settings_dmux_ctx);
159 
168  volatile muxers_settings_dmux_ctx_t *muxers_settings_dmux_ctx);
169 
177  volatile muxers_settings_dmux_ctx_t *muxers_settings_dmux_ctx);
178 
191  const muxers_settings_dmux_ctx_t *muxers_settings_dmux_ctx_src,
192  muxers_settings_dmux_ctx_t *muxers_settings_dmux_ctx_dst);
193 
204  volatile muxers_settings_dmux_ctx_t *muxers_settings_dmux_ctx,
205  const char *str, log_ctx_t *log_ctx);
206 
218  volatile muxers_settings_dmux_ctx_t *muxers_settings_dmux_ctx,
219  cJSON **ref_cjson_rest, log_ctx_t *log_ctx);
220 
221 #endif /* MEDIAPROCESSORS_SRC_MUXERS_SETTINGS_H_ */
void muxers_settings_mux_ctx_release(muxers_settings_mux_ctx_t **ref_muxers_settings_mux_ctx)
int muxers_settings_dmux_ctx_restful_put(volatile muxers_settings_dmux_ctx_t *muxers_settings_dmux_ctx, const char *str, log_ctx_t *log_ctx)
int muxers_settings_dmux_ctx_cpy(const muxers_settings_dmux_ctx_t *muxers_settings_dmux_ctx_src, muxers_settings_dmux_ctx_t *muxers_settings_dmux_ctx_dst)
void muxers_settings_dmux_ctx_release(muxers_settings_dmux_ctx_t **ref_muxers_settings_dmux_ctx)
struct muxers_settings_dmux_ctx_s muxers_settings_dmux_ctx_t
int muxers_settings_mux_ctx_init(volatile muxers_settings_mux_ctx_t *muxers_settings_mux_ctx)
int muxers_settings_dmux_ctx_init(volatile muxers_settings_dmux_ctx_t *muxers_settings_dmux_ctx)
int muxers_settings_dmux_ctx_restful_get(volatile muxers_settings_dmux_ctx_t *muxers_settings_dmux_ctx, cJSON **ref_cjson_rest, log_ctx_t *log_ctx)
int muxers_settings_mux_ctx_cpy(const muxers_settings_mux_ctx_t *muxers_settings_mux_ctx_src, muxers_settings_mux_ctx_t *muxers_settings_mux_ctx_dst)
muxers_settings_dmux_ctx_t * muxers_settings_dmux_ctx_allocate()
void muxers_settings_dmux_ctx_deinit(volatile muxers_settings_dmux_ctx_t *muxers_settings_dmux_ctx)
Definition: log.c:102
muxers_settings_mux_ctx_t * muxers_settings_mux_ctx_allocate()
int muxers_settings_mux_ctx_restful_get(volatile muxers_settings_mux_ctx_t *muxers_settings_mux_ctx, cJSON **ref_cjson_rest, log_ctx_t *log_ctx)
int muxers_settings_mux_ctx_restful_put(volatile muxers_settings_mux_ctx_t *muxers_settings_mux_ctx, const char *str, log_ctx_t *log_ctx)
struct muxers_settings_mux_ctx_s muxers_settings_mux_ctx_t
void muxers_settings_mux_ctx_deinit(volatile muxers_settings_mux_ctx_t *muxers_settings_mux_ctx)