Lines Matching defs:seek_table
182 FLAC__StreamMetadata seek_table;
684 if(decoder->private_->has_seek_table && 0 != decoder->private_->seek_table.data.seek_table.points) {
685 free(decoder->private_->seek_table.data.seek_table.points);
686 decoder->private_->seek_table.data.seek_table.points = 0;
1016 if(decoder->private_->has_seek_table && 0 != decoder->private_->seek_table.data.seek_table.points) {
1017 free(decoder->private_->seek_table.data.seek_table.points);
1018 decoder->private_->seek_table.data.seek_table.points = 0;
1210 /* if we haven't finished processing the metadata yet, do that so we have the STREAMINFO, SEEK_TABLE, and first_frame_offset */
1466 decoder->private_->metadata_callback(decoder, &decoder->private_->seek_table, decoder->private_->client_data);
1681 decoder->private_->seek_table.type = FLAC__METADATA_TYPE_SEEKTABLE;
1682 decoder->private_->seek_table.is_last = is_last;
1683 decoder->private_->seek_table.length = length;
1685 decoder->private_->seek_table.data.seek_table.num_points = length / FLAC__STREAM_METADATA_SEEKPOINT_LENGTH;
1688 if(0 == (decoder->private_->seek_table.data.seek_table.points = (FLAC__StreamMetadata_SeekPoint*)safe_realloc_mul_2op_(decoder->private_->seek_table.data.seek_table.points, decoder->private_->seek_table.data.seek_table.num_points, /*times*/sizeof(FLAC__StreamMetadata_SeekPoint)))) {
1692 for(i = 0; i < decoder->private_->seek_table.data.seek_table.num_points; i++) {
1695 decoder->private_->seek_table.data.seek_table.points[i].sample_number = xx;
1699 decoder->private_->seek_table.data.seek_table.points[i].stream_offset = xx;
1703 decoder->private_->seek_table.data.seek_table.points[i].frame_samples = x;
1705 length -= (decoder->private_->seek_table.data.seek_table.num_points * FLAC__STREAM_METADATA_SEEKPOINT_LENGTH);
2995 const FLAC__StreamMetadata_SeekTable *seek_table = decoder->private_->has_seek_table? &decoder->private_->seek_table.data.seek_table : 0;
3038 if(seek_table) {
3045 for(i = (int)seek_table->num_points - 1; i >= 0; i--) {
3047 seek_table->points[i].sample_number != FLAC__STREAM_METADATA_SEEKPOINT_PLACEHOLDER &&
3048 seek_table->points[i].frame_samples > 0 && /* defense against bad seekpoints */
3049 (total_samples <= 0 || seek_table->points[i].sample_number < total_samples) && /* defense against bad seekpoints */
3050 seek_table->points[i].sample_number <= target_sample
3055 new_lower_bound = first_frame_offset + seek_table->points[i].stream_offset;
3056 new_lower_bound_sample = seek_table->points[i].sample_number;
3060 for(i = 0; i < (int)seek_table->num_points; i++) {
3062 seek_table->points[i].sample_number != FLAC__STREAM_METADATA_SEEKPOINT_PLACEHOLDER &&
3063 seek_table->points[i].frame_samples > 0 && /* defense against bad seekpoints */
3064 (total_samples <= 0 || seek_table->points[i].sample_number < total_samples) && /* defense against bad seekpoints */
3065 seek_table->points[i].sample_number > target_sample
3069 if(i < (int)seek_table->num_points) { /* i.e. we found a suitable seek point... */
3070 new_upper_bound = first_frame_offset + seek_table->points[i].stream_offset;
3071 new_upper_bound_sample = seek_table->points[i].sample_number;