Blender V2.61 - r43446
|
#include "IMB_indexer.h"
#include "MEM_guardedalloc.h"
#include "BLI_utildefines.h"
#include <time.h>
Go to the source code of this file.
Classes | |
struct | indexer_dv_bitstream |
struct | indexer_dv_context |
Typedefs | |
typedef struct indexer_dv_bitstream | indexer_dv_bitstream |
typedef struct indexer_dv_context | indexer_dv_context |
Functions | |
static indexer_dv_bitstream | bitstream_new (unsigned char *buffer_) |
static unsigned long | bitstream_get_bits (indexer_dv_bitstream *This, int num) |
static int | parse_num (indexer_dv_bitstream *b, int numbits) |
static int | parse_bcd (indexer_dv_bitstream *b, int n) |
static void | parse_packet (indexer_dv_context *This, unsigned char *p) |
static void | parse_header_block (indexer_dv_context *This, unsigned char *target) |
static void | parse_subcode_blocks (indexer_dv_context *This, unsigned char *target) |
static void | parse_vaux_blocks (indexer_dv_context *This, unsigned char *target) |
static void | parse_audio_headers (indexer_dv_context *This, unsigned char *target) |
static void | parse_frame (indexer_dv_context *This, unsigned char *framebuffer, int isPAL) |
static void | inc_frame (int *frame, time_t *t, int isPAL) |
static void | write_index (indexer_dv_context *This, anim_index_entry *entry) |
static void | fill_gap (indexer_dv_context *This, int isPAL) |
static void | proc_frame (indexer_dv_context *This, unsigned char *UNUSED(framebuffer), int isPAL) |
static void | indexer_dv_proc_frame (anim_index_builder *idx, unsigned char *buffer, int UNUSED(data_size), struct anim_index_entry *entry) |
static void | indexer_dv_delete (anim_index_builder *idx) |
void | IMB_indexer_dv_new (anim_index_builder *idx) |
typedef struct indexer_dv_bitstream indexer_dv_bitstream |
typedef struct indexer_dv_context indexer_dv_context |
static unsigned long bitstream_get_bits | ( | indexer_dv_bitstream * | This, |
int | num | ||
) | [static] |
Definition at line 45 of file indexer_dv.c.
References indexer_dv_bitstream::bit_pos, indexer_dv_bitstream::buffer, and i.
Referenced by parse_bcd(), and parse_num().
static indexer_dv_bitstream bitstream_new | ( | unsigned char * | buffer_ | ) | [static] |
Definition at line 35 of file indexer_dv.c.
References indexer_dv_bitstream::bit_pos, and indexer_dv_bitstream::buffer.
Referenced by parse_packet().
static void fill_gap | ( | indexer_dv_context * | This, |
int | isPAL | ||
) | [static] |
Definition at line 254 of file indexer_dv.c.
References indexer_dv_context::backbuffer, indexer_dv_context::curr_frame, indexer_dv_context::frameno_offset, indexer_dv_context::fsize, indexer_dv_context::gap_frame, indexer_dv_context::gap_start, i, inc_frame(), indexer_dv_context::ref_time_read, and write_index().
Referenced by proc_frame().
void IMB_indexer_dv_new | ( | anim_index_builder * | idx | ) |
Definition at line 378 of file indexer_dv.c.
References indexer_dv_context::curr_frame, anim_index_builder::delete_priv_data, indexer_dv_context::gap_frame, indexer_dv_context::idx, indexer_dv_delete(), indexer_dv_proc_frame(), MEM_callocN(), anim_index_builder::private_data, anim_index_builder::proc_frame, and indexer_dv_context::ref_time_read.
static void inc_frame | ( | int * | frame, |
time_t * | t, | ||
int | isPAL | ||
) | [static] |
Definition at line 231 of file indexer_dv.c.
Referenced by fill_gap(), and indexer_dv_proc_frame().
static void indexer_dv_delete | ( | anim_index_builder * | idx | ) | [static] |
Definition at line 366 of file indexer_dv.c.
References indexer_dv_context::backbuffer, indexer_dv_context::fsize, i, MEM_freeN(), anim_index_builder::private_data, and write_index().
Referenced by IMB_indexer_dv_new().
static void indexer_dv_proc_frame | ( | anim_index_builder * | idx, |
unsigned char * | buffer, | ||
int | UNUSEDdata_size, | ||
struct anim_index_entry * | entry | ||
) | [static] |
Definition at line 330 of file indexer_dv.c.
References indexer_dv_context::backbuffer, indexer_dv_context::curr_frame, FALSE, indexer_dv_context::fsize, indexer_dv_context::got_record_date, indexer_dv_context::got_record_time, i, inc_frame(), parse_frame(), anim_index_builder::private_data, proc_frame(), indexer_dv_context::ref_time_read, and write_index().
Referenced by IMB_indexer_dv_new().
static void parse_audio_headers | ( | indexer_dv_context * | This, |
unsigned char * | target | ||
) | [static] |
Definition at line 199 of file indexer_dv.c.
References i, and parse_packet().
Referenced by parse_frame().
static int parse_bcd | ( | indexer_dv_bitstream * | b, |
int | n | ||
) | [static] |
Definition at line 62 of file indexer_dv.c.
References bitstream_get_bits(), and p.
Referenced by parse_packet().
static void parse_frame | ( | indexer_dv_context * | This, |
unsigned char * | framebuffer, | ||
int | isPAL | ||
) | [static] |
Definition at line 212 of file indexer_dv.c.
References parse_audio_headers(), parse_header_block(), parse_subcode_blocks(), and parse_vaux_blocks().
Referenced by indexer_dv_proc_frame().
static void parse_header_block | ( | indexer_dv_context * | This, |
unsigned char * | target | ||
) | [static] |
Definition at line 160 of file indexer_dv.c.
References i, and parse_packet().
Referenced by parse_frame().
static int parse_num | ( | indexer_dv_bitstream * | b, |
int | numbits | ||
) | [static] |
Definition at line 57 of file indexer_dv.c.
References bitstream_get_bits().
Referenced by parse_packet().
static void parse_packet | ( | indexer_dv_context * | This, |
unsigned char * | p | ||
) | [static] |
Definition at line 125 of file indexer_dv.c.
References bitstream_new(), indexer_dv_context::got_record_date, indexer_dv_context::got_record_time, parse_bcd(), parse_num(), indexer_dv_context::rec_curr_day, indexer_dv_context::rec_curr_frame, indexer_dv_context::rec_curr_hour, indexer_dv_context::rec_curr_minute, indexer_dv_context::rec_curr_month, indexer_dv_context::rec_curr_second, and indexer_dv_context::rec_curr_year.
Referenced by parse_audio_headers(), parse_header_block(), parse_subcode_blocks(), and parse_vaux_blocks().
static void parse_subcode_blocks | ( | indexer_dv_context * | This, |
unsigned char * | target | ||
) | [static] |
Definition at line 170 of file indexer_dv.c.
References i, and parse_packet().
Referenced by parse_frame().
static void parse_vaux_blocks | ( | indexer_dv_context * | This, |
unsigned char * | target | ||
) | [static] |
Definition at line 184 of file indexer_dv.c.
References i, and parse_packet().
Referenced by parse_frame().
static void proc_frame | ( | indexer_dv_context * | This, |
unsigned char * | UNUSEDframebuffer, | ||
int | isPAL | ||
) | [static] |
Definition at line 281 of file indexer_dv.c.
References indexer_dv_context::curr_frame, fill_gap(), indexer_dv_context::gap_frame, indexer_dv_context::gap_start, indexer_dv_context::got_record_date, indexer_dv_context::got_record_time, indexer_dv_context::rec_curr_day, indexer_dv_context::rec_curr_hour, indexer_dv_context::rec_curr_minute, indexer_dv_context::rec_curr_month, indexer_dv_context::rec_curr_second, indexer_dv_context::rec_curr_year, indexer_dv_context::ref_time_read, and indexer_dv_context::ref_time_read_new.
Referenced by indexer_dv_proc_frame().
static void write_index | ( | indexer_dv_context * | This, |
anim_index_entry * | entry | ||
) | [static] |
Definition at line 247 of file indexer_dv.c.
References anim_index_entry::frameno, indexer_dv_context::frameno_offset, indexer_dv_context::idx, IMB_index_builder_add_entry(), anim_index_entry::pts, anim_index_entry::seek_pos, and anim_index_entry::seek_pos_dts.
Referenced by fill_gap(), indexer_dv_delete(), and indexer_dv_proc_frame().