FFmpeg
|
#include <stdarg.h>
#include <stdio.h>
#include <string.h>
#include <time.h>
#include "avassert.h"
#include "avstring.h"
#include "bprint.h"
#include "common.h"
#include "error.h"
#include "mem.h"
Go to the source code of this file.
Macros | |
#define | av_bprint_room(buf) ((buf)->size - FFMIN((buf)->len, (buf)->size)) |
#define | av_bprint_is_allocated(buf) ((buf)->str != (buf)->reserved_internal_buffer) |
#define | WHITESPACES " \n\t" |
Functions | |
static int | av_bprint_alloc (AVBPrint *buf, unsigned room) |
static void | av_bprint_grow (AVBPrint *buf, unsigned extra_len) |
void | av_bprint_init (AVBPrint *buf, unsigned size_init, unsigned size_max) |
Init a print buffer. More... | |
void | av_bprint_init_for_buffer (AVBPrint *buf, char *buffer, unsigned size) |
Init a print buffer using a pre-existing buffer. More... | |
void | av_bprintf (AVBPrint *buf, const char *fmt,...) |
void | av_bprint_chars (AVBPrint *buf, char c, unsigned n) |
Append char c n times to a print buffer. More... | |
void | av_bprint_strftime (AVBPrint *buf, const char *fmt, const struct tm *tm) |
Append a formatted date and time to a print buffer. More... | |
void | av_bprint_get_buffer (AVBPrint *buf, unsigned size, unsigned char **mem, unsigned *actual_size) |
Allocate bytes in the buffer for external use. More... | |
void | av_bprint_clear (AVBPrint *buf) |
Reset the string to "" but keep internal allocated data. More... | |
int | av_bprint_finalize (AVBPrint *buf, char **ret_str) |
Finalize a print buffer. More... | |
void | av_bprint_escape (AVBPrint *dstbuf, const char *src, const char *special_chars, enum AVEscapeMode mode, int flags) |
Escape the content in src and append it to dstbuf. More... | |
Macro Definition Documentation
Definition at line 33 of file bprint.c.
Referenced by av_bprint_alloc(), and av_bprint_finalize().
Definition at line 32 of file bprint.c.
Referenced by av_bprint_chars(), av_bprint_get_buffer(), av_bprint_strftime(), and av_bprintf().
#define WHITESPACES " \n\t" |
Definition at line 221 of file bprint.c.
Referenced by av_bprint_escape().
Function Documentation
|
static |
Definition at line 35 of file bprint.c.
Referenced by av_bprint_chars(), av_bprint_get_buffer(), av_bprint_init(), av_bprint_strftime(), and av_bprintf().
Append char c n times to a print buffer.
Definition at line 116 of file bprint.c.
Referenced by av_bprint_escape(), av_bprint_utf8(), avfilter_graph_dump_to_buf(), c_escape_str(), csv_escape_str(), expand_filename_template(), expand_text(), ff_smil_extract_next_chunk(), ff_subtitles_read_chunk(), flat_escape_key_str(), flat_escape_value_str(), get_line(), ini_escape_str(), json_escape_str(), lavfi_read_packet(), main(), make_command_flags_str(), microdvd_decode_frame(), mpl2_event_to_ass(), parse_string(), rt_event_to_ass(), sami_paragraph_to_ass(), subviewer_event_to_ass(), text_event_to_ass(), text_to_ass(), webvtt_event_to_ass(), writer_print_data(), and xml_escape_str().
Reset the string to "" but keep internal allocated data.
Definition at line 185 of file bprint.c.
Referenced by compact_print_section_header(), default_print_section_header(), draw_text(), expand_text(), ff_subtitles_read_chunk(), flat_print_section_header(), flat_print_str(), get_line(), ini_print_section_header(), ini_print_str(), json_print_item_str(), microdvd_init(), parse_psfile(), realtext_read_header(), sami_paragraph_to_ass(), sami_read_header(), show_frame(), and xml_print_str().
void av_bprint_escape | ( | AVBPrint * | dstbuf, |
const char * | src, | ||
const char * | special_chars, | ||
enum AVEscapeMode | mode, | ||
int | flags | ||
) |
Escape the content in src and append it to dstbuf.
- Parameters
-
dstbuf already inited destination bprint buffer src string containing the text to escape special_chars string containing the special characters which need to be escaped, can be NULL mode escape mode to employ, see AV_ESCAPE_MODE_* macros. Any unknown value for mode will be considered equivalent to AV_ESCAPE_MODE_BACKSLASH, but this behaviour can change without notice. flags flags which control how to escape, see AV_ESCAPE_FLAG_* macros
Definition at line 223 of file bprint.c.
Referenced by av_bprint_is_complete(), and av_escape().
int av_bprint_finalize | ( | AVBPrint * | buf, |
char ** | ret_str | ||
) |
Finalize a print buffer.
The print buffer can no longer be used afterwards, but the len and size fields are still valid.
- [out] ret_str if not NULL, used to return a permanent copy of the buffer contents, or NULL if memory allocation fails; if NULL, the buffer is discarded and freed
- Returns
- 0 for success or error code (probably AVERROR(ENOMEM))
Definition at line 193 of file bprint.c.
Referenced by ass_read_header(), av_bprint_escape(), av_bprint_is_complete(), av_escape(), avfilter_graph_dump(), avpriv_bprint_to_extradata(), compact_print_str(), configure_output_audio_filter(), decode_text_chunk(), decode_zbuf(), ff_ass_add_rect(), ffprobe_show_program_version(), flat_print_str(), ini_print_str(), init_report(), jacosub_decode_frame(), json_print_int(), json_print_item_str(), json_print_section_header(), lavfi_read_packet(), main(), microdvd_decode_frame(), mov_text_decode_frame(), mpl2_decode_frame(), mpsub_read_header(), parse_file(), parse_psfile(), parse_string(), print_report(), realtext_decode_frame(), realtext_read_header(), sami_close(), sami_read_header(), show_frame(), show_packet(), show_stream(), srt_read_header(), subviewer_decode_frame(), subviewer_read_header(), text_decode_frame(), uninit(), webvtt_decode_frame(), webvtt_read_header(), writer_close(), writer_print_data(), and xml_print_str().
void av_bprint_get_buffer | ( | AVBPrint * | buf, |
unsigned | size, | ||
unsigned char ** | mem, | ||
unsigned * | actual_size | ||
) |
Allocate bytes in the buffer for external use.
- Parameters
-
[in] buf buffer structure [in] size required size [out] mem pointer to the memory area [out] actual_size size of the memory area after allocation; can be larger or smaller than size
Definition at line 176 of file bprint.c.
Referenced by decode_zbuf().
Definition at line 59 of file bprint.c.
Referenced by av_bprint_chars(), av_bprint_strftime(), and av_bprintf().
Init a print buffer.
- Parameters
-
buf buffer to init size_init initial size (including the final 0) size_max maximum size; 0 means do not write anything, just count the length; 1 is replaced by the maximum value for automatic storage; any large value means that the internal buffer will be reallocated as needed up to that limit; -1 is converted to UINT_MAX, the largest limit possible. Check also AV_BPRINT_SIZE_* macros.
Definition at line 68 of file bprint.c.
Referenced by ass_read_header(), av_bprint_escape(), av_escape(), avfilter_graph_dump(), compact_print_str(), config_output(), configure_input_audio_filter(), configure_input_video_filter(), configure_output_audio_filter(), decode_zbuf(), dvdsub_init(), ff_ass_add_rect(), ffprobe_show_program_version(), flat_print_str(), ini_print_str(), init(), init_report(), jacosub_decode_frame(), jacosub_read_header(), json_print_int(), json_print_item_str(), json_print_section_header(), lavfi_read_packet(), main(), make_command_flags_str(), microdvd_decode_frame(), microdvd_init(), mov_text_decode_frame(), mpl2_decode_frame(), mpsub_read_header(), parse_psfile(), parse_string(), print_report(), query_formats(), realtext_decode_frame(), realtext_read_header(), sami_init(), sami_read_header(), show_frame(), show_packet(), show_stream(), srt_read_header(), subviewer_decode_frame(), subviewer_read_header(), text_decode_frame(), webvtt_decode_frame(), webvtt_read_header(), writer_open(), writer_print_data(), writer_print_rational(), and xml_print_str().
Init a print buffer using a pre-existing buffer.
The buffer will not be reallocated.
- Parameters
-
buf buffer structure to init buffer byte buffer to use for the string data size size of buffer
Definition at line 84 of file bprint.c.
Referenced by av_bprint_escape(), and av_get_channel_layout_string().
Append a formatted date and time to a print buffer.
param buf bprint buffer to use param fmt date and time format string, see strftime() param tm broken-down time structure to translate
- Note
- due to poor design of the standard strftime function, it may produce poor results if the format string expands to a very long text and the bprint buffer is near the limit stated by the size_max option.
Definition at line 134 of file bprint.c.
Referenced by av_bprint_escape(), draw_text(), and func_strftime().
Definition at line 93 of file bprint.c.
Referenced by ass_read_header(), av_bprint_channel_layout(), av_bprint_escape(), av_bprint_strftime(), avfilter_graph_dump_to_buf(), c_escape_str(), compact_print_section_header(), config_output(), configure_input_audio_filter(), configure_input_video_filter(), configure_output_audio_filter(), default_print_section_header(), draw_text(), dvdsub_init(), expand_filename_template(), ff_ass_add_rect(), ff_subtitles_read_chunk(), flat_escape_value_str(), flat_print_section_header(), func_eval_expr(), func_frame_num(), func_pts(), ini_escape_str(), ini_print_section_header(), insert_datetime(), insert_text(), insert_ts(), jacosub_read_header(), jacosub_to_ass(), json_escape_str(), lavfi_read_packet(), make_command_flags_str(), microdvd_close_no_persistent_tags(), microdvd_decode_frame(), microdvd_init(), microdvd_open_tags(), mpl2_event_to_ass(), parse_psfile(), print_link_prop(), print_report(), query_formats(), rt_event_to_ass(), sami_paragraph_to_ass(), sami_read_header(), subviewer_event_to_ass(), subviewer_read_header(), text_event_to_ass(), text_to_ass(), webvtt_event_to_ass(), writer_print_data(), writer_print_rational(), and xml_escape_str().
Generated on Mon Nov 18 2024 06:52:05 for FFmpeg by 1.8.11