#include "../mpeg3private.h"#include "../mpeg3protos.h"#include "mpeg3video.h"#include <stdlib.h>#include <string.h>

Go to the source code of this file.
Defines | |
| #define | PREV_CODE_MACRO |
Functions | |
| void | mpeg3video_toc_error () |
| int | mpeg3video_drop_frames (mpeg3video_t *video, long frames, int cache_it) |
| unsigned int | mpeg3bits_next_startcode (mpeg3_bits_t *stream) |
| int | mpeg3video_next_code (mpeg3_bits_t *stream, unsigned int code) |
| int | mpeg3video_prev_code (mpeg3_demuxer_t *demuxer, unsigned int code) |
| long | mpeg3video_goptimecode_to_frame (mpeg3video_t *video) |
| int | mpeg3video_match_refframes (mpeg3video_t *video) |
| int | mpeg3video_seek_byte (mpeg3video_t *video, int64_t byte) |
| int | mpeg3video_seek_frame (mpeg3video_t *video, long frame) |
| int | mpeg3_rewind_video (mpeg3video_t *video) |
| int | mpeg3video_seek (mpeg3video_t *video) |
| int | mpeg3video_previous_frame (mpeg3video_t *video) |
| #define PREV_CODE_MACRO |
Value:
{ \
current_code >>= 8; \
current_code |= ((uint32_t)mpeg3demux_read_prev_char(demuxer)) << 24; \
}
Referenced by mpeg3video_prev_code().
| int mpeg3_rewind_video | ( | mpeg3video_t * | video | ) |
Definition at line 192 of file seek.c.
References mpeg3_vtrack_t::frame_offsets, mpeg3bits_seek_byte(), mpeg3video_t::track, and mpeg3video_t::vstream.
Referenced by mpeg3video_new(), and mpeg3video_seek().

| unsigned int mpeg3bits_next_startcode | ( | mpeg3_bits_t * | stream | ) |
Definition at line 51 of file seek.c.
References MPEG3_PACKET_START_CODE_PREFIX, mpeg3bits_byte_align(), mpeg3bits_eof, mpeg3bits_getbyte_noptr(), and mpeg3bits_showbits32_noptr().
Referenced by mpeg3video_ext_user_data(), and mpeg3video_get_header().

| int mpeg3video_drop_frames | ( | mpeg3video_t * | video, | |
| long | frames, | |||
| int | cache_it | |||
| ) |
Definition at line 15 of file seek.c.
References mpeg3video_t::chrom_height, mpeg3video_t::chrom_width, mpeg3video_t::coded_picture_height, mpeg3video_t::coded_picture_width, mpeg3_vtrack_t::frame_cache, mpeg3video_t::framenum, mpeg3_cache_put_frame(), mpeg3video_read_frame_backend(), mpeg3video_t::output_src, and mpeg3video_t::track.
Referenced by mpeg3_drop_frames(), and mpeg3video_seek().

| long mpeg3video_goptimecode_to_frame | ( | mpeg3video_t * | video | ) |
Definition at line 129 of file seek.c.
References mpeg3video_t::first_frame, mpeg3_timecode_t::frame, mpeg3video_t::frame_rate, mpeg3video_t::gop_timecode, mpeg3_timecode_t::hour, mpeg3_timecode_t::minute, and mpeg3_timecode_t::second.
| int mpeg3video_match_refframes | ( | mpeg3video_t * | video | ) |
Definition at line 139 of file seek.c.
References mpeg3video_t::chrom_height, mpeg3video_t::chrom_width, mpeg3video_t::coded_picture_height, mpeg3video_t::coded_picture_width, memcpy, mpeg3video_t::newframe, mpeg3video_t::oldrefframe, mpeg3video_t::refframe, and src.
| int mpeg3video_next_code | ( | mpeg3_bits_t * | stream, | |
| unsigned int | code | |||
| ) |
Definition at line 96 of file seek.c.
References mpeg3bits_eof, mpeg3bits_getbyte_noptr(), and mpeg3bits_showbits32_noptr().
Referenced by mpeg3video_new().

| int mpeg3video_prev_code | ( | mpeg3_demuxer_t * | demuxer, | |
| unsigned int | code | |||
| ) |
Definition at line 107 of file seek.c.
References mpeg3demux_bof(), and PREV_CODE_MACRO.
Referenced by mpeg3video_new(), mpeg3video_previous_frame(), and mpeg3video_seek().

| int mpeg3video_previous_frame | ( | mpeg3video_t * | video | ) |
Definition at line 382 of file seek.c.
References mpeg3_bits_t::demuxer, mpeg3video_t::has_gops, MPEG3_GOP_START_CODE, MPEG3_PICTURE_START_CODE, MPEG3_SEQUENCE_START_CODE, mpeg3bits_reset(), mpeg3demux_eof(), mpeg3demux_start_forward(), mpeg3demux_start_reverse(), mpeg3demux_tell_byte(), mpeg3video_prev_code(), mpeg3video_read_frame_backend(), mpeg3video_t::repeat_count, and mpeg3video_t::vstream.
Referenced by mpeg3_previous_frame().

| int mpeg3video_seek | ( | mpeg3video_t * | video | ) |
Definition at line 205 of file seek.c.
References mpeg3video_t::byte_seek, mpeg3_bits_t::demuxer, mpeg3video_t::file, mpeg3_vtrack_t::frame_cache, mpeg3_vtrack_t::frame_offsets, mpeg3video_t::frame_seek, mpeg3video_t::framenum, mpeg3video_t::has_gops, mpeg3_vtrack_t::keyframe_numbers, mpeg3video_t::maxframe, MPEG3_GOP_START_CODE, mpeg3_reset_cache(), mpeg3_reset_subtitles(), mpeg3_rewind_video(), MPEG3_SEEK_THRESHOLD, MPEG3_SEQUENCE_START_CODE, mpeg3bits_reset(), mpeg3bits_seek_byte(), mpeg3demux_eof(), mpeg3demux_reset_pts(), mpeg3demux_seek_byte(), mpeg3demux_start_forward(), mpeg3demux_start_reverse(), mpeg3demux_tell_byte(), mpeg3video_drop_frames(), mpeg3video_get_firstframe(), mpeg3video_prev_code(), mpeg3video_read_frame_backend(), mpeg3video_toc_error(), mpeg3video_t::repeat_count, mpeg3_vtrack_t::total_keyframe_numbers, mpeg3video_t::track, and mpeg3video_t::vstream.
Referenced by mpeg3video_read_frame(), mpeg3video_read_yuvframe(), and mpeg3video_read_yuvframe_ptr().

| int mpeg3video_seek_byte | ( | mpeg3video_t * | video, | |
| int64_t | byte | |||
| ) |
Definition at line 170 of file seek.c.
References mpeg3video_t::byte_seek, mpeg3_bits_t::demuxer, mpeg3video_t::file, mpeg3bits_seek_byte(), and mpeg3video_t::vstream.
Referenced by mpeg3_seek_byte().

| int mpeg3video_seek_frame | ( | mpeg3video_t * | video, | |
| long | frame | |||
| ) |
Definition at line 186 of file seek.c.
References mpeg3video_t::frame_seek.
Referenced by mpeg3_set_frame().
| void mpeg3video_toc_error | ( | ) |
1.5.5