diff options
author | Michael Niedermayer <michaelni@gmx.at> | 2014-04-25 01:56:15 +0200 |
---|---|---|
committer | Michael Niedermayer <michaelni@gmx.at> | 2014-04-25 01:56:23 +0200 |
commit | e148a5820dc5e7077f519d091b5e1ff2a5b23665 (patch) | |
tree | 451f39876420d8b1fd8faa0e15f8ae0f349955cc | |
parent | 817627d925384a55dd04d3427b4791e04bb98899 (diff) | |
parent | 18e7e21e2fb151d9dc01b6131b58dfc00715a69b (diff) | |
download | ffmpeg-streaming-e148a5820dc5e7077f519d091b5e1ff2a5b23665.zip ffmpeg-streaming-e148a5820dc5e7077f519d091b5e1ff2a5b23665.tar.gz |
Merge remote-tracking branch 'cehoyos/master'
* cehoyos/master:
Enable muxing ac-3 in caf.
Use correct msvc type specifiers for ptrdiff_t and size_t.
Fix vf_eq.c and vf_eq2.c compilation with !HAVE_6REGS.
Fix libpostproc compilation with !HAVE_6REGS.
Never write 0 as maximum bitrate for asf files.
Merged-by: Michael Niedermayer <michaelni@gmx.at>
-rw-r--r-- | libavcodec/dvdsubenc.c | 2 | ||||
-rw-r--r-- | libavcodec/flac_parser.c | 2 | ||||
-rw-r--r-- | libavcodec/h264_slice.c | 4 | ||||
-rw-r--r-- | libavcodec/jpeg2000dec.c | 2 | ||||
-rw-r--r-- | libavcodec/libvpxenc.c | 8 | ||||
-rw-r--r-- | libavcodec/mjpegdec.c | 6 | ||||
-rw-r--r-- | libavcodec/mpeg12dec.c | 2 | ||||
-rw-r--r-- | libavcodec/mpegvideo_enc.c | 2 | ||||
-rw-r--r-- | libavcodec/wmadec.c | 2 | ||||
-rw-r--r-- | libavcodec/zmbv.c | 6 | ||||
-rw-r--r-- | libavfilter/libmpcodecs/vf_eq.c | 4 | ||||
-rw-r--r-- | libavfilter/libmpcodecs/vf_eq2.c | 4 | ||||
-rw-r--r-- | libavformat/ape.c | 2 | ||||
-rw-r--r-- | libavformat/asfenc.c | 2 | ||||
-rw-r--r-- | libavformat/cafenc.c | 1 | ||||
-rw-r--r-- | libavformat/id3v2.c | 4 | ||||
-rw-r--r-- | libavformat/mmsh.c | 4 | ||||
-rw-r--r-- | libavformat/mmst.c | 4 | ||||
-rw-r--r-- | libavformat/oggparsevorbis.c | 2 | ||||
-rw-r--r-- | libavformat/rtpdec_xiph.c | 4 | ||||
-rw-r--r-- | libavformat/sdp.c | 2 | ||||
-rw-r--r-- | libavutil/internal.h | 5 | ||||
-rw-r--r-- | libpostproc/postprocess_template.c | 30 |
23 files changed, 54 insertions, 50 deletions
diff --git a/libavcodec/dvdsubenc.c b/libavcodec/dvdsubenc.c index 8130b74..11858c7 100644 --- a/libavcodec/dvdsubenc.c +++ b/libavcodec/dvdsubenc.c @@ -383,7 +383,7 @@ static int encode_dvd_subtitles(AVCodecContext *avctx, qq = outbuf; bytestream_put_be16(&qq, q - outbuf); - av_log(NULL, AV_LOG_DEBUG, "subtitle_packet size=%td\n", q - outbuf); + av_log(NULL, AV_LOG_DEBUG, "subtitle_packet size=%"PTRDIFF_SPECIFIER"\n", q - outbuf); ret = q - outbuf; fail: diff --git a/libavcodec/flac_parser.c b/libavcodec/flac_parser.c index 6ff4d9c..37b5fa9 100644 --- a/libavcodec/flac_parser.c +++ b/libavcodec/flac_parser.c @@ -612,7 +612,7 @@ static int flac_parse(AVCodecParserContext *s, AVCodecContext *avctx, if ( av_fifo_space(fpc->fifo_buf) < read_end - read_start && av_fifo_realloc2(fpc->fifo_buf, (read_end - read_start) + 2*av_fifo_size(fpc->fifo_buf)) < 0) { av_log(avctx, AV_LOG_ERROR, - "couldn't reallocate buffer of size %td\n", + "couldn't reallocate buffer of size %"PTRDIFF_SPECIFIER"\n", (read_end - read_start) + av_fifo_size(fpc->fifo_buf)); goto handle_error; } diff --git a/libavcodec/h264_slice.c b/libavcodec/h264_slice.c index 1234168..da2d911 100644 --- a/libavcodec/h264_slice.c +++ b/libavcodec/h264_slice.c @@ -2405,10 +2405,10 @@ static int decode_slice(struct AVCodecContext *avctx, void *arg) return 0; } if (h->cabac.bytestream > h->cabac.bytestream_end + 2 ) - av_log(h->avctx, AV_LOG_DEBUG, "bytestream overread %td\n", h->cabac.bytestream_end - h->cabac.bytestream); + av_log(h->avctx, AV_LOG_DEBUG, "bytestream overread %"PTRDIFF_SPECIFIER"\n", h->cabac.bytestream_end - h->cabac.bytestream); if (ret < 0 || h->cabac.bytestream > h->cabac.bytestream_end + 4) { av_log(h->avctx, AV_LOG_ERROR, - "error while decoding MB %d %d, bytestream %td\n", + "error while decoding MB %d %d, bytestream %"PTRDIFF_SPECIFIER"\n", h->mb_x, h->mb_y, h->cabac.bytestream_end - h->cabac.bytestream); er_add_slice(h, h->resync_mb_x, h->resync_mb_y, h->mb_x, diff --git a/libavcodec/jpeg2000dec.c b/libavcodec/jpeg2000dec.c index 5ae540e..fbfb7d1 100644 --- a/libavcodec/jpeg2000dec.c +++ b/libavcodec/jpeg2000dec.c @@ -782,7 +782,7 @@ static int jpeg2000_decode_packet(Jpeg2000DecoderContext *s, return ret; if (ret > sizeof(cblk->data)) { avpriv_request_sample(s->avctx, - "Block with lengthinc greater than %zu", + "Block with lengthinc greater than %"SIZE_SPECIFIER"", sizeof(cblk->data)); return AVERROR_PATCHWELCOME; } diff --git a/libavcodec/libvpxenc.c b/libavcodec/libvpxenc.c index 869c8fe..bc0cf96 100644 --- a/libavcodec/libvpxenc.c +++ b/libavcodec/libvpxenc.c @@ -158,7 +158,7 @@ static av_cold void dump_enc_cfg(AVCodecContext *avctx, width, "g_lag_in_frames:", cfg->g_lag_in_frames); av_log(avctx, level, "rate control settings\n" " %*s%u\n %*s%u\n %*s%u\n %*s%u\n" - " %*s%d\n %*s%p(%zu)\n %*s%u\n", + " %*s%d\n %*s%p(%"SIZE_SPECIFIER")\n %*s%u\n", width, "rc_dropframe_thresh:", cfg->rc_dropframe_thresh, width, "rc_resize_allowed:", cfg->rc_resize_allowed, width, "rc_resize_up_thresh:", cfg->rc_resize_up_thresh, @@ -373,7 +373,7 @@ static av_cold int vpx_init(AVCodecContext *avctx, ctx->twopass_stats.buf = av_malloc(ctx->twopass_stats.sz); if (!ctx->twopass_stats.buf) { av_log(avctx, AV_LOG_ERROR, - "Stat buffer alloc (%zu bytes) failed\n", + "Stat buffer alloc (%"SIZE_SPECIFIER" bytes) failed\n", ctx->twopass_stats.sz); return AVERROR(ENOMEM); } @@ -616,7 +616,7 @@ static int queue_frames(AVCodecContext *avctx, AVPacket *pkt_out, if (!cx_frame->buf) { av_log(avctx, AV_LOG_ERROR, - "Data buffer alloc (%zu bytes) failed\n", + "Data buffer alloc (%"SIZE_SPECIFIER" bytes) failed\n", cx_frame->sz); av_free(cx_frame); return AVERROR(ENOMEM); @@ -626,7 +626,7 @@ static int queue_frames(AVCodecContext *avctx, AVPacket *pkt_out, cx_frame->buf_alpha = av_malloc(cx_frame->sz_alpha); if (!cx_frame->buf_alpha) { av_log(avctx, AV_LOG_ERROR, - "Data buffer alloc (%zu bytes) failed\n", + "Data buffer alloc (%"SIZE_SPECIFIER" bytes) failed\n", cx_frame->sz_alpha); av_free(cx_frame); return AVERROR(ENOMEM); diff --git a/libavcodec/mjpegdec.c b/libavcodec/mjpegdec.c index dfe75bf..f2f5498 100644 --- a/libavcodec/mjpegdec.c +++ b/libavcodec/mjpegdec.c @@ -1813,7 +1813,7 @@ int ff_mjpeg_find_marker(MJpegDecodeContext *s, memset(s->buffer + *unescaped_buf_size, 0, FF_INPUT_BUFFER_PADDING_SIZE); - av_log(s->avctx, AV_LOG_DEBUG, "escaping removed %td bytes\n", + av_log(s->avctx, AV_LOG_DEBUG, "escaping removed %"PTRDIFF_SPECIFIER" bytes\n", (buf_end - *buf_ptr) - (dst - s->buffer)); } else if (start_code == SOS && s->ls) { const uint8_t *src = *buf_ptr; @@ -1896,7 +1896,7 @@ int ff_mjpeg_decode_frame(AVCodecContext *avctx, void *data, int *got_frame, start_code, unescaped_buf_size, buf_size); return AVERROR_INVALIDDATA; } - av_log(avctx, AV_LOG_DEBUG, "marker=%x avail_size_in_buf=%td\n", + av_log(avctx, AV_LOG_DEBUG, "marker=%x avail_size_in_buf=%"PTRDIFF_SPECIFIER"\n", start_code, buf_end - buf_ptr); ret = init_get_bits8(&s->gb, unescaped_buf_ptr, unescaped_buf_size); @@ -2181,7 +2181,7 @@ the_end: av_dict_copy(avpriv_frame_get_metadatap(data), s->exif_metadata, 0); av_dict_free(&s->exif_metadata); - av_log(avctx, AV_LOG_DEBUG, "decode frame unused %td bytes\n", + av_log(avctx, AV_LOG_DEBUG, "decode frame unused %"PTRDIFF_SPECIFIER" bytes\n", buf_end - buf_ptr); // return buf_end - buf_ptr; return buf_ptr - buf; diff --git a/libavcodec/mpeg12dec.c b/libavcodec/mpeg12dec.c index 5544841..98a732f 100644 --- a/libavcodec/mpeg12dec.c +++ b/libavcodec/mpeg12dec.c @@ -2391,7 +2391,7 @@ static int decode_chunks(AVCodecContext *avctx, AVFrame *picture, input_size = buf_end - buf_ptr; if (avctx->debug & FF_DEBUG_STARTCODE) - av_log(avctx, AV_LOG_DEBUG, "%3"PRIX32" at %td left %d\n", + av_log(avctx, AV_LOG_DEBUG, "%3"PRIX32" at %"PTRDIFF_SPECIFIER" left %d\n", start_code, buf_ptr - buf, input_size); /* prepare data for next start code */ diff --git a/libavcodec/mpegvideo_enc.c b/libavcodec/mpegvideo_enc.c index 09b48ab..cd5c19e 100644 --- a/libavcodec/mpegvideo_enc.c +++ b/libavcodec/mpegvideo_enc.c @@ -1045,7 +1045,7 @@ static int load_input_picture(MpegEncContext *s, const AVFrame *pic_arg) if (s->linesize & (STRIDE_ALIGN-1)) direct = 0; - av_dlog(s->avctx, "%d %d %td %td\n", pic_arg->linesize[0], + av_dlog(s->avctx, "%d %d %"PTRDIFF_SPECIFIER" %"PTRDIFF_SPECIFIER"\n", pic_arg->linesize[0], pic_arg->linesize[1], s->linesize, s->uvlinesize); if (direct) { diff --git a/libavcodec/wmadec.c b/libavcodec/wmadec.c index b1816b4..466c1a9 100644 --- a/libavcodec/wmadec.c +++ b/libavcodec/wmadec.c @@ -927,7 +927,7 @@ static int wma_decode_superframe(AVCodecContext *avctx, void *data, samples_offset += s->frame_len; } - av_dlog(s->avctx, "%d %d %d %d outbytes:%td eaten:%d\n", + av_dlog(s->avctx, "%d %d %d %d outbytes:%"PTRDIFF_SPECIFIER" eaten:%d\n", s->frame_len_bits, s->block_len_bits, s->frame_len, s->block_len, (int8_t *)samples - (int8_t *)data, avctx->block_align); diff --git a/libavcodec/zmbv.c b/libavcodec/zmbv.c index 71e8287..21a9e35 100644 --- a/libavcodec/zmbv.c +++ b/libavcodec/zmbv.c @@ -145,7 +145,7 @@ static int zmbv_decode_xor_8(ZmbvContext *c) prev += c->width * c->bh; } if (src - c->decomp_buf != c->decomp_len) - av_log(c->avctx, AV_LOG_ERROR, "Used %ti of %i bytes\n", + av_log(c->avctx, AV_LOG_ERROR, "Used %"PTRDIFF_SPECIFIER" of %i bytes\n", src-c->decomp_buf, c->decomp_len); return 0; } @@ -219,7 +219,7 @@ static int zmbv_decode_xor_16(ZmbvContext *c) prev += c->width * c->bh; } if (src - c->decomp_buf != c->decomp_len) - av_log(c->avctx, AV_LOG_ERROR, "Used %ti of %i bytes\n", + av_log(c->avctx, AV_LOG_ERROR, "Used %"PTRDIFF_SPECIFIER" of %i bytes\n", src-c->decomp_buf, c->decomp_len); return 0; } @@ -377,7 +377,7 @@ static int zmbv_decode_xor_32(ZmbvContext *c) prev += c->width * c->bh; } if (src - c->decomp_buf != c->decomp_len) - av_log(c->avctx, AV_LOG_ERROR, "Used %ti of %i bytes\n", + av_log(c->avctx, AV_LOG_ERROR, "Used %"PTRDIFF_SPECIFIER" of %i bytes\n", src-c->decomp_buf, c->decomp_len); return 0; } diff --git a/libavfilter/libmpcodecs/vf_eq.c b/libavfilter/libmpcodecs/vf_eq.c index c926c51..f8efa84 100644 --- a/libavfilter/libmpcodecs/vf_eq.c +++ b/libavfilter/libmpcodecs/vf_eq.c @@ -37,7 +37,7 @@ struct vf_priv_s { int contrast; }; -#if HAVE_MMX +#if HAVE_MMX && HAVE_6REGS static void process_MMX(unsigned char *dest, int dstride, unsigned char *src, int sstride, int w, int h, int brightness, int contrast) { @@ -224,7 +224,7 @@ static int vf_open(vf_instance_t *vf, char *args) if (args) sscanf(args, "%d:%d", &vf->priv->brightness, &vf->priv->contrast); process = process_C; -#if HAVE_MMX +#if HAVE_MMX && HAVE_6REGS if(ff_gCpuCaps.hasMMX) process = process_MMX; #endif diff --git a/libavfilter/libmpcodecs/vf_eq2.c b/libavfilter/libmpcodecs/vf_eq2.c index 7a3ef31..c9c3ff6 100644 --- a/libavfilter/libmpcodecs/vf_eq2.c +++ b/libavfilter/libmpcodecs/vf_eq2.c @@ -120,7 +120,7 @@ void create_lut (eq2_param_t *par) par->lut_clean = 1; } -#if HAVE_MMX +#if HAVE_MMX && HAVE_6REGS static void affine_1d_MMX (eq2_param_t *par, unsigned char *dst, unsigned char *src, unsigned w, unsigned h, unsigned dstride, unsigned sstride) @@ -289,7 +289,7 @@ void check_values (eq2_param_t *par) if ((par->c == 1.0) && (par->b == 0.0) && (par->g == 1.0)) { par->adjust = NULL; } -#if HAVE_MMX +#if HAVE_MMX && HAVE_6REGS else if (par->g == 1.0 && ff_gCpuCaps.hasMMX) { par->adjust = &affine_1d_MMX; } diff --git a/libavformat/ape.c b/libavformat/ape.c index b677ba9..d5a786a 100644 --- a/libavformat/ape.c +++ b/libavformat/ape.c @@ -264,7 +264,7 @@ static int ape_read_header(AVFormatContext * s) } if (ape->seektablelength / sizeof(*ape->seektable) < ape->totalframes) { av_log(s, AV_LOG_ERROR, - "Number of seek entries is less than number of frames: %zu vs. %"PRIu32"\n", + "Number of seek entries is less than number of frames: %"SIZE_SPECIFIER" vs. %"PRIu32"\n", ape->seektablelength / sizeof(*ape->seektable), ape->totalframes); return AVERROR_INVALIDDATA; } diff --git a/libavformat/asfenc.c b/libavformat/asfenc.c index 6ed4c0b..8add6e0 100644 --- a/libavformat/asfenc.c +++ b/libavformat/asfenc.c @@ -408,7 +408,7 @@ static int asf_write_header1(AVFormatContext *s, int64_t file_size, avio_wl32(pb, (asf->is_streamed || !pb->seekable) ? 3 : 2); /* ??? */ avio_wl32(pb, s->packet_size); /* packet size */ avio_wl32(pb, s->packet_size); /* packet size */ - avio_wl32(pb, bit_rate); /* Nominal data rate in bps */ + avio_wl32(pb, bit_rate ? bit_rate : -1); /* Maximum data rate in bps */ end_header(pb, hpos); /* unknown headers */ diff --git a/libavformat/cafenc.c b/libavformat/cafenc.c index ae36b85..f94101a 100644 --- a/libavformat/cafenc.c +++ b/libavformat/cafenc.c @@ -115,7 +115,6 @@ static int caf_write_header(AVFormatContext *s) switch (enc->codec_id) { case AV_CODEC_ID_AAC: - case AV_CODEC_ID_AC3: av_log(s, AV_LOG_ERROR, "muxing codec currently unsupported\n"); return AVERROR_PATCHWELCOME; } diff --git a/libavformat/id3v2.c b/libavformat/id3v2.c index 4cf8e9b..fb89e83 100644 --- a/libavformat/id3v2.c +++ b/libavformat/id3v2.c @@ -327,14 +327,14 @@ static void read_geobtag(AVFormatContext *s, AVIOContext *pb, int taglen, geob_data = av_mallocz(sizeof(ID3v2ExtraMetaGEOB)); if (!geob_data) { - av_log(s, AV_LOG_ERROR, "Failed to alloc %zu bytes\n", + av_log(s, AV_LOG_ERROR, "Failed to alloc %"SIZE_SPECIFIER" bytes\n", sizeof(ID3v2ExtraMetaGEOB)); return; } new_extra = av_mallocz(sizeof(ID3v2ExtraMeta)); if (!new_extra) { - av_log(s, AV_LOG_ERROR, "Failed to alloc %zu bytes\n", + av_log(s, AV_LOG_ERROR, "Failed to alloc %"SIZE_SPECIFIER" bytes\n", sizeof(ID3v2ExtraMeta)); goto fail; } diff --git a/libavformat/mmsh.c b/libavformat/mmsh.c index 482ece4..dac5d9f 100644 --- a/libavformat/mmsh.c +++ b/libavformat/mmsh.c @@ -119,7 +119,7 @@ static int read_data_packet(MMSHContext *mmsh, const int len) int res; if (len > sizeof(mms->in_buffer)) { av_log(NULL, AV_LOG_ERROR, - "Data packet length %d exceeds the in_buffer size %zu\n", + "Data packet length %d exceeds the in_buffer size %"SIZE_SPECIFIER"\n", len, sizeof(mms->in_buffer)); return AVERROR(EIO); } @@ -194,7 +194,7 @@ static int get_http_header_data(MMSHContext *mmsh) if (len) { if (len > sizeof(mms->in_buffer)) { av_log(NULL, AV_LOG_ERROR, - "Other packet len = %d exceed the in_buffer size %zu\n", + "Other packet len = %d exceed the in_buffer size %"SIZE_SPECIFIER"\n", len, sizeof(mms->in_buffer)); return AVERROR(EIO); } diff --git a/libavformat/mmst.c b/libavformat/mmst.c index ebef3ef..c851187 100644 --- a/libavformat/mmst.c +++ b/libavformat/mmst.c @@ -284,7 +284,7 @@ static MMSSCPacketType get_tcp_server_response(MMSTContext *mmst) if (length_remaining < 0 || length_remaining > sizeof(mms->in_buffer) - 12) { av_log(NULL, AV_LOG_ERROR, - "Incoming packet length %d exceeds bufsize %zu\n", + "Incoming packet length %d exceeds bufsize %"SIZE_SPECIFIER"\n", length_remaining, sizeof(mms->in_buffer) - 12); return AVERROR_INVALIDDATA; } @@ -320,7 +320,7 @@ static MMSSCPacketType get_tcp_server_response(MMSTContext *mmst) if (length_remaining < 0 || length_remaining > sizeof(mms->in_buffer) - 8) { av_log(NULL, AV_LOG_ERROR, - "Data length %d is invalid or too large (max=%zu)\n", + "Data length %d is invalid or too large (max=%"SIZE_SPECIFIER")\n", length_remaining, sizeof(mms->in_buffer)); return AVERROR_INVALIDDATA; } diff --git a/libavformat/oggparsevorbis.c b/libavformat/oggparsevorbis.c index c0898b0..75de0bd 100644 --- a/libavformat/oggparsevorbis.c +++ b/libavformat/oggparsevorbis.c @@ -170,7 +170,7 @@ int ff_vorbis_comment(AVFormatContext *as, AVDictionary **m, if (p != end) av_log(as, AV_LOG_INFO, - "%ti bytes of comment header remain\n", end - p); + "%"PTRDIFF_SPECIFIER" bytes of comment header remain\n", end - p); if (n > 0) av_log(as, AV_LOG_INFO, "truncated comment header, %i comments not found\n", n); diff --git a/libavformat/rtpdec_xiph.c b/libavformat/rtpdec_xiph.c index 887a65e..43f72a2 100644 --- a/libavformat/rtpdec_xiph.c +++ b/libavformat/rtpdec_xiph.c @@ -256,7 +256,7 @@ parse_packed_headers(const uint8_t * packed_headers, if (packed_headers_end - packed_headers < 9) { av_log(codec, AV_LOG_ERROR, - "Invalid %td byte packed header.", + "Invalid %"PTRDIFF_SPECIFIER" byte packed header.", packed_headers_end - packed_headers); return AVERROR_INVALIDDATA; } @@ -278,7 +278,7 @@ parse_packed_headers(const uint8_t * packed_headers, if (packed_headers_end - packed_headers != length || length1 > length || length2 > length - length1) { av_log(codec, AV_LOG_ERROR, - "Bad packed header lengths (%d,%d,%td,%d)\n", length1, + "Bad packed header lengths (%d,%d,%"PTRDIFF_SPECIFIER",%d)\n", length1, length2, packed_headers_end - packed_headers, length); return AVERROR_INVALIDDATA; } diff --git a/libavformat/sdp.c b/libavformat/sdp.c index ae29483..c53de90 100644 --- a/libavformat/sdp.c +++ b/libavformat/sdp.c @@ -217,7 +217,7 @@ static char *extradata2psets(AVCodecContext *c) sps_end = r1; } if (av_base64_encode(p, MAX_PSET_SIZE - (p - psets), r, r1 - r) == NULL) { - av_log(c, AV_LOG_ERROR, "Cannot Base64-encode %td %td!\n", MAX_PSET_SIZE - (p - psets), r1 - r); + av_log(c, AV_LOG_ERROR, "Cannot Base64-encode %"PTRDIFF_SPECIFIER" %"PTRDIFF_SPECIFIER"!\n", MAX_PSET_SIZE - (p - psets), r1 - r); av_free(psets); return NULL; diff --git a/libavutil/internal.h b/libavutil/internal.h index 9a04fa5..53f78e9 100644 --- a/libavutil/internal.h +++ b/libavutil/internal.h @@ -238,6 +238,11 @@ void avpriv_request_sample(void *avc, #if HAVE_LIBC_MSVCRT #define avpriv_open ff_open +#define PTRDIFF_SPECIFIER "Id" +#define SIZE_SPECIFIER "Iu" +#else +#define PTRDIFF_SPECIFIER "td" +#define SIZE_SPECIFIER "zu" #endif /** diff --git a/libpostproc/postprocess_template.c b/libpostproc/postprocess_template.c index 3991ae9..0761c50 100644 --- a/libpostproc/postprocess_template.c +++ b/libpostproc/postprocess_template.c @@ -1668,7 +1668,7 @@ DEINT_FF((%%REGd, %1), (%%REGd, %1, 2), (%0, %1, 8) , (%%REGd, %1, 4)) */ static inline void RENAME(deInterlaceL5)(uint8_t src[], int stride, uint8_t *tmp, uint8_t *tmp2) { -#if TEMPLATE_PP_MMXEXT || TEMPLATE_PP_3DNOW +#if (TEMPLATE_PP_MMXEXT || TEMPLATE_PP_3DNOW) && HAVE_6REGS src+= stride*4; __asm__ volatile( "lea (%0, %1), %%"REG_a" \n\t" @@ -1728,7 +1728,7 @@ DEINT_L5(%%mm1, %%mm0, (%%REGd, %1, 2), (%0, %1, 8) , (%%REGd, %1, 4)) : : "r" (src), "r" ((x86_reg)stride), "r"(tmp), "r"(tmp2) : "%"REG_a, "%"REG_d ); -#else //TEMPLATE_PP_MMXEXT || TEMPLATE_PP_3DNOW +#else //(TEMPLATE_PP_MMXEXT || TEMPLATE_PP_3DNOW) && HAVE_6REGS int x; src+= stride*4; for(x=0; x<8; x++){ @@ -1757,7 +1757,7 @@ DEINT_L5(%%mm1, %%mm0, (%%REGd, %1, 2), (%0, %1, 8) , (%%REGd, %1, 4)) src++; } -#endif //TEMPLATE_PP_MMXEXT || TEMPLATE_PP_3DNOW +#endif //(TEMPLATE_PP_MMXEXT || TEMPLATE_PP_3DNOW) && HAVE_6REGS } /** @@ -2164,7 +2164,7 @@ static inline void RENAME(tempNoiseReducer)(uint8_t *src, int stride, #define FAST_L2_DIFF //#define L1_DIFF //u should change the thresholds too if u try that one -#if TEMPLATE_PP_MMXEXT || TEMPLATE_PP_3DNOW +#if (TEMPLATE_PP_MMXEXT || TEMPLATE_PP_3DNOW) && HAVE_6REGS __asm__ volatile( "lea (%2, %2, 2), %%"REG_a" \n\t" // 3*stride "lea (%2, %2, 4), %%"REG_d" \n\t" // 5*stride @@ -2453,7 +2453,7 @@ L2_DIFF_CORE((%0, %%REGc) , (%1, %%REGc)) NAMED_CONSTRAINTS_ADD(b80) : "%"REG_a, "%"REG_d, "%"REG_c, "memory" ); -#else //TEMPLATE_PP_MMXEXT || TEMPLATE_PP_3DNOW +#else //(TEMPLATE_PP_MMXEXT || TEMPLATE_PP_3DNOW) && HAVE_6REGS { int y; int d=0; @@ -2536,7 +2536,7 @@ Switch between } } } -#endif //TEMPLATE_PP_MMXEXT || TEMPLATE_PP_3DNOW +#endif //(TEMPLATE_PP_MMXEXT || TEMPLATE_PP_3DNOW) && HAVE_6REGS } #endif //TEMPLATE_PP_ALTIVEC @@ -3093,11 +3093,11 @@ static void RENAME(postProcess)(const uint8_t src[], int srcStride, uint8_t dst[ static inline void RENAME(blockCopy)(uint8_t dst[], int dstStride, const uint8_t src[], int srcStride, int levelFix, int64_t *packedOffsetAndScale) { -#if !TEMPLATE_PP_MMX +#if !TEMPLATE_PP_MMX || !HAVE_6REGS int i; #endif if(levelFix){ -#if TEMPLATE_PP_MMX +#if TEMPLATE_PP_MMX && HAVE_6REGS __asm__ volatile( "movq (%%"REG_a"), %%mm2 \n\t" // packedYOffset "movq 8(%%"REG_a"), %%mm3 \n\t" // packedYScale @@ -3174,13 +3174,13 @@ SCALED_CPY((%%REGa, %4), (%%REGa, %4, 2), (%%REGd, %5), (%%REGd, %5, 2)) "r" ((x86_reg)dstStride) : "%"REG_d ); -#else //TEMPLATE_PP_MMX +#else //TEMPLATE_PP_MMX && HAVE_6REGS for(i=0; i<8; i++) memcpy( &(dst[dstStride*i]), &(src[srcStride*i]), BLOCK_SIZE); -#endif //TEMPLATE_PP_MMX +#endif //TEMPLATE_PP_MMX && HAVE_6REGS }else{ -#if TEMPLATE_PP_MMX +#if TEMPLATE_PP_MMX && HAVE_6REGS __asm__ volatile( "lea (%0,%2), %%"REG_a" \n\t" "lea (%1,%3), %%"REG_d" \n\t" @@ -3207,11 +3207,11 @@ SIMPLE_CPY((%%REGa, %2), (%%REGa, %2, 2), (%%REGd, %3), (%%REGd, %3, 2)) "r" ((x86_reg)dstStride) : "%"REG_a, "%"REG_d ); -#else //TEMPLATE_PP_MMX +#else //TEMPLATE_PP_MMX && HAVE_6REGS for(i=0; i<8; i++) memcpy( &(dst[dstStride*i]), &(src[srcStride*i]), BLOCK_SIZE); -#endif //TEMPLATE_PP_MMX +#endif //TEMPLATE_PP_MMX && HAVE_6REGS } } @@ -3363,7 +3363,7 @@ static void RENAME(postProcess)(const uint8_t src[], int srcStride, uint8_t dst[ // with the L1 Cache of the P4 ... or only a few blocks at a time or something for(x=0; x<width; x+=BLOCK_SIZE){ -#if TEMPLATE_PP_MMXEXT +#if TEMPLATE_PP_MMXEXT && HAVE_6REGS /* prefetchnta(srcBlock + (((x>>2)&6) + 5)*srcStride + 32); prefetchnta(srcBlock + (((x>>2)&6) + 6)*srcStride + 32); @@ -3499,7 +3499,7 @@ static void RENAME(postProcess)(const uint8_t src[], int srcStride, uint8_t dst[ #endif -#if TEMPLATE_PP_MMXEXT +#if TEMPLATE_PP_MMXEXT && HAVE_6REGS /* prefetchnta(srcBlock + (((x>>2)&6) + 5)*srcStride + 32); prefetchnta(srcBlock + (((x>>2)&6) + 6)*srcStride + 32); |