| @@ -19,9 +19,6 @@ | |||
| * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA | |||
| */ | |||
| //#define DEBUG | |||
| //#define DEBUG_SEEK | |||
| #include <strings.h> | |||
| #include "libavutil/intreadwrite.h" | |||
| #include "libavutil/bswap.h" | |||
| @@ -141,10 +138,8 @@ static int read_braindead_odml_indx(AVFormatContext *s, int frame_num){ | |||
| int64_t last_pos= -1; | |||
| int64_t filesize= avio_size(s->pb); | |||
| #ifdef DEBUG_SEEK | |||
| av_log(s, AV_LOG_ERROR, "longs_pre_entry:%d index_type:%d entries_in_use:%d chunk_id:%X base:%16"PRIX64"\n", | |||
| longs_pre_entry,index_type, entries_in_use, chunk_id, base); | |||
| #endif | |||
| av_dlog(s, "longs_pre_entry:%d index_type:%d entries_in_use:%d chunk_id:%X base:%16"PRIX64"\n", | |||
| longs_pre_entry,index_type, entries_in_use, chunk_id, base); | |||
| if(stream_id >= s->nb_streams || stream_id < 0) | |||
| return -1; | |||
| @@ -176,9 +171,8 @@ static int read_braindead_odml_indx(AVFormatContext *s, int frame_num){ | |||
| int key= len >= 0; | |||
| len &= 0x7FFFFFFF; | |||
| #ifdef DEBUG_SEEK | |||
| av_log(s, AV_LOG_ERROR, "pos:%"PRId64", len:%X\n", pos, len); | |||
| #endif | |||
| av_dlog(s, "pos:%"PRId64", len:%X\n", pos, len); | |||
| if(pb->eof_reached) | |||
| return -1; | |||
| @@ -1134,10 +1128,8 @@ static int avi_read_idx1(AVFormatContext *s, int size) | |||
| flags = avio_rl32(pb); | |||
| pos = avio_rl32(pb); | |||
| len = avio_rl32(pb); | |||
| #if defined(DEBUG_SEEK) | |||
| av_log(s, AV_LOG_DEBUG, "%d: tag=0x%x flags=0x%x pos=0x%x len=%d/", | |||
| i, tag, flags, pos, len); | |||
| #endif | |||
| av_dlog(s, "%d: tag=0x%x flags=0x%x pos=0x%x len=%d/", | |||
| i, tag, flags, pos, len); | |||
| if(i==0 && pos > avi->movi_list) | |||
| avi->movi_list= 0; //FIXME better check | |||
| pos += avi->movi_list; | |||
| @@ -1149,9 +1141,8 @@ static int avi_read_idx1(AVFormatContext *s, int size) | |||
| st = s->streams[index]; | |||
| ast = st->priv_data; | |||
| #if defined(DEBUG_SEEK) | |||
| av_log(s, AV_LOG_DEBUG, "%d cum_len=%"PRId64"\n", len, ast->cum_len); | |||
| #endif | |||
| av_dlog(s, "%d cum_len=%"PRId64"\n", len, ast->cum_len); | |||
| if(pb->eof_reached) | |||
| return -1; | |||
| @@ -1206,22 +1197,18 @@ static int avi_load_index(AVFormatContext *s) | |||
| if (avio_seek(pb, avi->movi_end, SEEK_SET) < 0) | |||
| goto the_end; // maybe truncated file | |||
| #ifdef DEBUG_SEEK | |||
| av_log(s, AV_LOG_DEBUG, "movi_end=0x%"PRIx64"\n", avi->movi_end); | |||
| #endif | |||
| av_dlog(s, "movi_end=0x%"PRIx64"\n", avi->movi_end); | |||
| for(;;) { | |||
| if (pb->eof_reached) | |||
| break; | |||
| tag = avio_rl32(pb); | |||
| size = avio_rl32(pb); | |||
| #ifdef DEBUG_SEEK | |||
| av_log(s, AV_LOG_DEBUG, "tag=%c%c%c%c size=0x%x\n", | |||
| tag & 0xff, | |||
| (tag >> 8) & 0xff, | |||
| (tag >> 16) & 0xff, | |||
| (tag >> 24) & 0xff, | |||
| size); | |||
| #endif | |||
| av_dlog(s, "tag=%c%c%c%c size=0x%x\n", | |||
| tag & 0xff, | |||
| (tag >> 8) & 0xff, | |||
| (tag >> 16) & 0xff, | |||
| (tag >> 24) & 0xff, | |||
| size); | |||
| switch(tag) { | |||
| case MKTAG('i', 'd', 'x', '1'): | |||
| if (avi_read_idx1(s, size) < 0) | |||
| @@ -163,8 +163,6 @@ static int ffm_read_data(AVFormatContext *s, | |||
| return size1 - size; | |||
| } | |||
| //#define DEBUG_SEEK | |||
| /* ensure that acutal seeking happens between FFM_PACKET_SIZE | |||
| and file_size - FFM_PACKET_SIZE */ | |||
| static void ffm_seek1(AVFormatContext *s, int64_t pos1) | |||
| @@ -175,9 +173,7 @@ static void ffm_seek1(AVFormatContext *s, int64_t pos1) | |||
| pos = FFMIN(pos1, ffm->file_size - FFM_PACKET_SIZE); | |||
| pos = FFMAX(pos, FFM_PACKET_SIZE); | |||
| #ifdef DEBUG_SEEK | |||
| av_log(s, AV_LOG_DEBUG, "seek to %"PRIx64" -> %"PRIx64"\n", pos1, pos); | |||
| #endif | |||
| av_dlog(s, "seek to %"PRIx64" -> %"PRIx64"\n", pos1, pos); | |||
| avio_seek(pb, pos, SEEK_SET); | |||
| } | |||
| @@ -189,9 +185,7 @@ static int64_t get_dts(AVFormatContext *s, int64_t pos) | |||
| ffm_seek1(s, pos); | |||
| avio_skip(pb, 4); | |||
| dts = avio_rb64(pb); | |||
| #ifdef DEBUG_SEEK | |||
| av_log(s, AV_LOG_DEBUG, "dts=%0.6f\n", dts / 1000000.0); | |||
| #endif | |||
| av_dlog(s, "dts=%0.6f\n", dts / 1000000.0); | |||
| return dts; | |||
| } | |||
| @@ -465,9 +459,7 @@ static int ffm_seek(AVFormatContext *s, int stream_index, int64_t wanted_pts, in | |||
| int64_t pts_min, pts_max, pts; | |||
| double pos1; | |||
| #ifdef DEBUG_SEEK | |||
| av_log(s, AV_LOG_DEBUG, "wanted_pts=%0.6f\n", wanted_pts / 1000000.0); | |||
| #endif | |||
| av_dlog(s, "wanted_pts=%0.6f\n", wanted_pts / 1000000.0); | |||
| /* find the position using linear interpolation (better than | |||
| dichotomy in typical cases) */ | |||
| pos_min = FFM_PACKET_SIZE; | |||
| @@ -23,8 +23,6 @@ | |||
| #include "internal.h" | |||
| #include "mpeg.h" | |||
| //#define DEBUG_SEEK | |||
| #undef NDEBUG | |||
| #include <assert.h> | |||
| @@ -589,9 +587,7 @@ static int64_t mpegps_read_dts(AVFormatContext *s, int stream_index, | |||
| for(;;) { | |||
| len = mpegps_read_pes_header(s, &pos, &startcode, &pts, &dts); | |||
| if (len < 0) { | |||
| #ifdef DEBUG_SEEK | |||
| av_log(s, AV_LOG_DEBUG, "none (ret=%d)\n", len); | |||
| #endif | |||
| av_dlog(s, "none (ret=%d)\n", len); | |||
| return AV_NOPTS_VALUE; | |||
| } | |||
| if (startcode == s->streams[stream_index]->id && | |||
| @@ -600,10 +596,8 @@ static int64_t mpegps_read_dts(AVFormatContext *s, int stream_index, | |||
| } | |||
| avio_skip(s->pb, len); | |||
| } | |||
| #ifdef DEBUG_SEEK | |||
| av_log(s, AV_LOG_DEBUG, "pos=0x%"PRIx64" dts=0x%"PRIx64" %0.3f\n", | |||
| pos, dts, dts / 90000.0); | |||
| #endif | |||
| av_dlog(s, "pos=0x%"PRIx64" dts=0x%"PRIx64" %0.3f\n", | |||
| pos, dts, dts / 90000.0); | |||
| *ppos = pos; | |||
| return dts; | |||
| } | |||
| @@ -25,7 +25,6 @@ | |||
| #include "mpeg.h" | |||
| #define MAX_PAYLOAD_SIZE 4096 | |||
| //#define DEBUG_SEEK | |||
| #undef NDEBUG | |||
| #include <assert.h> | |||
| @@ -19,8 +19,6 @@ | |||
| * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA | |||
| */ | |||
| //#define DEBUG | |||
| //#define DEBUG_SEEK | |||
| //#define USE_SYNCPOINT_SEARCH | |||
| #include "libavutil/crc.h" | |||
| @@ -22,9 +22,7 @@ | |||
| #include "riff.h" | |||
| #include "libavutil/dict.h" | |||
| //#define DEBUG | |||
| //#define DEBUG_DUMP_INDEX // XXX dumbdriving-271.nsv breaks with it commented!! | |||
| //#define DEBUG_SEEK | |||
| #define CHECK_SUBSEQUENT_NSVS | |||
| //#define DISABLE_AUDIO | |||
| @@ -1421,8 +1421,6 @@ int av_index_search_timestamp(AVStream *st, int64_t wanted_timestamp, | |||
| wanted_timestamp, flags); | |||
| } | |||
| #define DEBUG_SEEK | |||
| int av_seek_frame_binary(AVFormatContext *s, int stream_index, int64_t target_ts, int flags){ | |||
| AVInputFormat *avif= s->iformat; | |||
| int64_t av_uninit(pos_min), av_uninit(pos_max), pos, pos_limit; | |||
| @@ -1434,9 +1432,7 @@ int av_seek_frame_binary(AVFormatContext *s, int stream_index, int64_t target_ts | |||
| if (stream_index < 0) | |||
| return -1; | |||
| #ifdef DEBUG_SEEK | |||
| av_log(s, AV_LOG_DEBUG, "read_seek: %d %"PRId64"\n", stream_index, target_ts); | |||
| #endif | |||
| av_dlog(s, "read_seek: %d %"PRId64"\n", stream_index, target_ts); | |||
| ts_max= | |||
| ts_min= AV_NOPTS_VALUE; | |||
| @@ -1453,10 +1449,8 @@ int av_seek_frame_binary(AVFormatContext *s, int stream_index, int64_t target_ts | |||
| if(e->timestamp <= target_ts || e->pos == e->min_distance){ | |||
| pos_min= e->pos; | |||
| ts_min= e->timestamp; | |||
| #ifdef DEBUG_SEEK | |||
| av_log(s, AV_LOG_DEBUG, "using cached pos_min=0x%"PRIx64" dts_min=%"PRId64"\n", | |||
| pos_min,ts_min); | |||
| #endif | |||
| av_dlog(s, "using cached pos_min=0x%"PRIx64" dts_min=%"PRId64"\n", | |||
| pos_min,ts_min); | |||
| }else{ | |||
| assert(index==0); | |||
| } | |||
| @@ -1469,10 +1463,8 @@ int av_seek_frame_binary(AVFormatContext *s, int stream_index, int64_t target_ts | |||
| pos_max= e->pos; | |||
| ts_max= e->timestamp; | |||
| pos_limit= pos_max - e->min_distance; | |||
| #ifdef DEBUG_SEEK | |||
| av_log(s, AV_LOG_DEBUG, "using cached pos_max=0x%"PRIx64" pos_limit=0x%"PRIx64" dts_max=%"PRId64"\n", | |||
| pos_max,pos_limit, ts_max); | |||
| #endif | |||
| av_dlog(s, "using cached pos_max=0x%"PRIx64" pos_limit=0x%"PRIx64" dts_max=%"PRId64"\n", | |||
| pos_max,pos_limit, ts_max); | |||
| } | |||
| } | |||
| @@ -1494,9 +1486,7 @@ int64_t av_gen_search(AVFormatContext *s, int stream_index, int64_t target_ts, i | |||
| int64_t start_pos, filesize; | |||
| int no_change; | |||
| #ifdef DEBUG_SEEK | |||
| av_log(s, AV_LOG_DEBUG, "gen_seek: %d %"PRId64"\n", stream_index, target_ts); | |||
| #endif | |||
| av_dlog(s, "gen_seek: %d %"PRId64"\n", stream_index, target_ts); | |||
| if(ts_min == AV_NOPTS_VALUE){ | |||
| pos_min = s->data_offset; | |||
| @@ -1538,11 +1528,8 @@ int64_t av_gen_search(AVFormatContext *s, int stream_index, int64_t target_ts, i | |||
| no_change=0; | |||
| while (pos_min < pos_limit) { | |||
| #ifdef DEBUG_SEEK | |||
| av_log(s, AV_LOG_DEBUG, "pos_min=0x%"PRIx64" pos_max=0x%"PRIx64" dts_min=%"PRId64" dts_max=%"PRId64"\n", | |||
| pos_min, pos_max, | |||
| ts_min, ts_max); | |||
| #endif | |||
| av_dlog(s, "pos_min=0x%"PRIx64" pos_max=0x%"PRIx64" dts_min=%"PRId64" dts_max=%"PRId64"\n", | |||
| pos_min, pos_max, ts_min, ts_max); | |||
| assert(pos_limit <= pos_max); | |||
| if(no_change==0){ | |||
| @@ -1569,11 +1556,9 @@ int64_t av_gen_search(AVFormatContext *s, int stream_index, int64_t target_ts, i | |||
| no_change++; | |||
| else | |||
| no_change=0; | |||
| #ifdef DEBUG_SEEK | |||
| av_log(s, AV_LOG_DEBUG, "%"PRId64" %"PRId64" %"PRId64" / %"PRId64" %"PRId64" %"PRId64" target:%"PRId64" limit:%"PRId64" start:%"PRId64" noc:%d\n", | |||
| pos_min, pos, pos_max, ts_min, ts, ts_max, target_ts, pos_limit, | |||
| start_pos, no_change); | |||
| #endif | |||
| av_dlog(s, "%"PRId64" %"PRId64" %"PRId64" / %"PRId64" %"PRId64" %"PRId64" target:%"PRId64" limit:%"PRId64" start:%"PRId64" noc:%d\n", | |||
| pos_min, pos, pos_max, ts_min, ts, ts_max, target_ts, | |||
| pos_limit, start_pos, no_change); | |||
| if(ts == AV_NOPTS_VALUE){ | |||
| av_log(s, AV_LOG_ERROR, "read_timestamp() failed in the middle\n"); | |||
| return -1; | |||
| @@ -1592,13 +1577,13 @@ int64_t av_gen_search(AVFormatContext *s, int stream_index, int64_t target_ts, i | |||
| pos = (flags & AVSEEK_FLAG_BACKWARD) ? pos_min : pos_max; | |||
| ts = (flags & AVSEEK_FLAG_BACKWARD) ? ts_min : ts_max; | |||
| #ifdef DEBUG_SEEK | |||
| #if 1 | |||
| pos_min = pos; | |||
| ts_min = read_timestamp(s, stream_index, &pos_min, INT64_MAX); | |||
| pos_min++; | |||
| ts_max = read_timestamp(s, stream_index, &pos_min, INT64_MAX); | |||
| av_log(s, AV_LOG_DEBUG, "pos=0x%"PRIx64" %"PRId64"<=%"PRId64"<=%"PRId64"\n", | |||
| pos, ts_min, target_ts, ts_max); | |||
| av_dlog(s, "pos=0x%"PRIx64" %"PRId64"<=%"PRId64"<=%"PRId64"\n", | |||
| pos, ts_min, target_ts, ts_max); | |||
| #endif | |||
| *ts_ret= ts; | |||
| return pos; | |||
| @@ -2651,9 +2636,7 @@ AVProgram *av_new_program(AVFormatContext *ac, int id) | |||
| AVProgram *program=NULL; | |||
| int i; | |||
| #ifdef DEBUG_SI | |||
| av_log(ac, AV_LOG_DEBUG, "new_program: id=0x%04x\n", id); | |||
| #endif | |||
| av_dlog(ac, "new_program: id=0x%04x\n", id); | |||
| for(i=0; i<ac->nb_programs; i++) | |||
| if(ac->programs[i]->id == id) | |||