|
FFmpeg
|
#include "movenc.h"#include "libavutil/intreadwrite.h"#include "libavutil/mem.h"#include "mux.h"#include "rtpenc_chain.h"#include "avio_internal.h"#include "rtp.h"Go to the source code of this file.
Functions | |
| int | ff_mov_init_hinting (AVFormatContext *s, int index, int src_index) |
| static void | sample_queue_pop (HintSampleQueue *queue) |
| Remove the first sample from the sample queue. More... | |
| static void | sample_queue_free (HintSampleQueue *queue) |
| Empty the sample queue, releasing all memory. More... | |
| static void | sample_queue_push (HintSampleQueue *queue, const uint8_t *data, int size, int sample) |
| Add a reference to the sample data to the sample queue. More... | |
| static void | sample_queue_retain (HintSampleQueue *queue) |
| Make local copies of all referenced sample data in the queue. More... | |
| static int | match_segments (const uint8_t *haystack, int h_len, const uint8_t *needle, int n_pos, int n_len, int *match_h_offset_ptr, int *match_n_offset_ptr, int *match_len_ptr) |
| Find matches of needle[n_pos ->] within haystack. More... | |
| static int | find_sample_match (const uint8_t *data, int len, HintSampleQueue *queue, int *pos, int *match_sample, int *match_offset, int *match_len) |
| Look for segments in samples in the sample queue matching the data in ptr. More... | |
| static void | output_immediate (const uint8_t *data, int size, AVIOContext *out, int *entries) |
| static void | output_match (AVIOContext *out, int match_sample, int match_offset, int match_len, int *entries) |
| static void | describe_payload (const uint8_t *data, int size, AVIOContext *out, int *entries, HintSampleQueue *queue) |
| static int | write_hint_packets (AVIOContext *out, const uint8_t *data, int size, MOVTrack *trk, int64_t *dts) |
| Write an RTP hint (that may contain one or more RTP packets) for the packets in data. More... | |
| int | ff_mov_add_hinted_packet (AVFormatContext *s, AVPacket *pkt, int track_index, int sample, uint8_t *sample_data, int sample_size) |
| void | ff_mov_close_hinting (MOVTrack *track) |
| int ff_mov_init_hinting | ( | AVFormatContext * | s, |
| int | index, | ||
| int | src_index | ||
| ) |
Definition at line 30 of file movenchint.c.
Referenced by mov_write_header().
|
static |
Remove the first sample from the sample queue.
Definition at line 71 of file movenchint.c.
Referenced by find_sample_match().
|
static |
Empty the sample queue, releasing all memory.
Definition at line 84 of file movenchint.c.
Referenced by ff_mov_close_hinting().
|
static |
Add a reference to the sample data to the sample queue.
The data is not copied. sample_queue_retain should be called before pkt->data is reused/freed.
Definition at line 100 of file movenchint.c.
Referenced by ff_mov_add_hinted_packet().
|
static |
Make local copies of all referenced sample data in the queue.
Definition at line 126 of file movenchint.c.
Referenced by ff_mov_add_hinted_packet().
|
static |
Find matches of needle[n_pos ->] within haystack.
If a sufficiently large match is found, matching bytes before n_pos are included in the match, too (within the limits of the arrays).
| haystack | buffer that may contain parts of needle |
| h_len | length of the haystack buffer |
| needle | buffer containing source data that have been used to construct haystack |
| n_pos | start position in needle used for looking for matches |
| n_len | length of the needle buffer |
| match_h_offset_ptr | offset of the first matching byte within haystack |
| match_n_offset_ptr | offset of the first matching byte within needle |
| match_len_ptr | length of the matched segment |
Definition at line 164 of file movenchint.c.
Referenced by find_sample_match().
|
static |
Look for segments in samples in the sample queue matching the data in ptr.
Samples not matching are removed from the queue. If a match is found, the next time it will look for matches starting from the end of the previous matched segment.
| data | data to find matches for in the sample queue |
| len | length of the data buffer |
| queue | samples used for looking for matching segments |
| pos | the offset in data of the matched segment |
| match_sample | the number of the sample that contained the match |
| match_offset | the offset of the matched segment within the sample |
| match_len | the length of the matched segment |
Definition at line 216 of file movenchint.c.
Referenced by describe_payload().
|
static |
Definition at line 251 of file movenchint.c.
Referenced by describe_payload().
|
static |
Definition at line 270 of file movenchint.c.
Referenced by describe_payload().
|
static |
Definition at line 283 of file movenchint.c.
Referenced by write_hint_packets().
|
static |
Write an RTP hint (that may contain one or more RTP packets) for the packets in data.
data contains one or more packets with a BE32 size header.
| out | buffer where the hints are written |
| data | buffer containing RTP packets |
| size | the size of the data buffer |
| trk | the MOVTrack for the hint track |
| dts | pointer where the timestamp for the written RTP hint is stored |
Definition at line 315 of file movenchint.c.
Referenced by ff_mov_add_hinted_packet().
| int ff_mov_add_hinted_packet | ( | AVFormatContext * | s, |
| AVPacket * | pkt, | ||
| int | track_index, | ||
| int | sample, | ||
| uint8_t * | sample_data, | ||
| int | sample_size | ||
| ) |
Definition at line 401 of file movenchint.c.
Referenced by ff_mov_write_packet().
| void ff_mov_close_hinting | ( | MOVTrack * | track | ) |
Definition at line 460 of file movenchint.c.
Referenced by mov_free().
1.8.17