97 }
else if (num >= den) {
114 for (j=2; j<14; j+= 1+(j>2))
115 while (q.
den / q.
num < min_precission && q.
num % j == 0)
117 while (q.
den / q.
num < min_precission && q.
den < (1<<24))
124 const char *format,
const char *filename)
137 av_log(s,
AV_LOG_ERROR,
"Requested output format '%s' is not a suitable output format\n", format);
176 #if FF_API_ALLOC_OUTPUT_CONTEXT
182 return ret < 0 ?
NULL : avctx;
191 unsigned int tag = 0;
277 "(%d/%d) and encoder layer (%d/%d)\n",
299 char tagbuf[32], cortag[32];
303 "Tag %s/0x%08x incompatible with output codec id '%d' (%s)\n",
315 "Codec for stream %d does not use global headers "
316 "but container format requires global headers\n", i);
390 if (ret >= 0 && s->
pb && s->
pb->
error < 0)
415 av_dlog(s,
"compute_pkt_fields2: pts:%s dts:%s cur_dts:%s b:%d size:%d st:%d\n",
456 "Application provided invalid, non monotonically increasing dts to muxer in stream %d: %s >= %s\n",
466 av_dlog(s,
"av_write_frame: pts2:%s dts2:%s\n",
514 if (s->
offset && !offset) {
548 if (ret >= 0 && s->
pb && s->
pb->
error < 0)
561 if (ret >= 0 && s->
pb && s->
pb->
error < 0)
569 #define CHUNK_START 0x1000
582 #if FF_API_DESTRUCT_PACKET
583 pkt->destruct =
NULL;
605 int64_t syncto =
av_rescale(pkt->
dts + syncoffset, 1, max)*max - syncoffset;
618 && ((chunked && !((*next_point)->pkt.flags&
CHUNK_START))
619 || !compare(s, &(*next_point)->pkt, pkt)))
620 next_point = &(*next_point)->
next;
632 this_pktl->
next = *next_point;
635 *next_point = this_pktl;
654 comp= (ts>ts2) - (ts<ts2);
666 int stream_count = 0, noninterleaved_count = 0;
667 int64_t delta_dts_max = 0;
680 ++noninterleaved_count;
696 delta_dts_max=
FFMAX(delta_dts_max, delta_dts);
699 if (s->
nb_streams == stream_count+noninterleaved_count &&
705 if (stream_count && flush) {
757 av_dlog(s,
"av_interleaved_write_frame size:%d dts:%s pts:%s\n",
765 av_dlog(s,
"av_interleaved_write_frame FLUSH\n");
832 int64_t *dts, int64_t *wall)