}
}
- avpriv_align_put_bits(pb);
+ align_put_bits(pb);
put_bits(pb, 8, strlen(aux_data));
avpriv_put_string(pb, aux_data, 0);
}
put_bits(&s->pb, 8, namelen - 14);
put_bits(&s->pb, 4, 0); //extension type - filler
padbits = -put_bits_count(&s->pb) & 7;
- avpriv_align_put_bits(&s->pb);
+ align_put_bits(&s->pb);
for (i = 0; i < namelen - 2; i++)
put_bits(&s->pb, 8, name[i]);
put_bits(&s->pb, 12 - padbits, 0);
24,
};
+#if FF_API_AVPRIV_PUT_BITS
void avpriv_align_put_bits(PutBitContext *s)
{
- put_bits(s, s->bit_left & 7, 0);
+ align_put_bits(s);
}
+#endif
void avpriv_put_string(PutBitContext *pb, const char *string,
int terminate_string)
{
int format;
- avpriv_align_put_bits(&s->pb);
+ align_put_bits(&s->pb);
put_bits(&s->pb, 17, 1);
/* 0: H.263 escape codes 1: 11-bit escape codes */
H261Context *h = (H261Context *)s;
int format, temp_ref;
- avpriv_align_put_bits(&s->pb);
+ align_put_bits(&s->pb);
/* Update the pointer to last GOB */
s->ptr_lastgob = put_bits_ptr(&s->pb);
coded_frame_rate= 1800000;
coded_frame_rate_base= (1000+best_clock_code)*best_divisor;
- avpriv_align_put_bits(&s->pb);
+ align_put_bits(&s->pb);
/* Update the pointer to last GOB */
s->ptr_lastgob = put_bits_ptr(&s->pb);
put_bits(&pb, 8, v);
}
}
- avpriv_align_put_bits(&pb);
+ align_put_bits(&pb);
av_freep(&buf2);
/* End of image */
static void put_header(MpegEncContext *s, int header)
{
- avpriv_align_put_bits(&s->pb);
+ align_put_bits(&s->pb);
put_bits(&s->pb, 16, header >> 16);
put_sbits(&s->pb, 16, header);
}
ff_pce_copy_bits(pb, gb, 16);
if (bits)
ff_pce_copy_bits(pb, gb, bits);
- avpriv_align_put_bits(pb);
+ align_put_bits(pb);
align_get_bits(gb);
comment_size = ff_pce_copy_bits(pb, gb, 8);
for (; comment_size > 0; comment_size--)
{
find_best_tables(s);
- avpriv_align_put_bits(&s->pb);
+ align_put_bits(&s->pb);
put_bits(&s->pb, 2, s->pict_type - 1);
put_bits(&s->pb, 5, s->qscale);
#include "libavutil/intreadwrite.h"
#include "libavutil/avassert.h"
+#include "version.h"
+
#if ARCH_X86_64
// TODO: Benchmark and optionally enable on other 64-bit architectures.
typedef uint64_t BitBuf;
s->bit_buf = 0;
}
+#if FF_API_AVPRIV_PUT_BITS
+void avpriv_align_put_bits(PutBitContext *s);
+#endif
+
#ifdef BITSTREAM_WRITER_LE
-#define avpriv_align_put_bits align_put_bits_unsupported_here
#define avpriv_put_string ff_put_string_unsupported_here
#define avpriv_copy_bits avpriv_copy_bits_unsupported_here
#else
-/**
- * Pad the bitstream with zeros up to the next byte boundary.
- */
-void avpriv_align_put_bits(PutBitContext *s);
/**
* Put the string string in the bitstream.
s->size_in_bits = 8*size;
}
+/**
+ * Pad the bitstream with zeros up to the next byte boundary.
+ */
+static inline void align_put_bits(PutBitContext *s)
+{
+ put_bits(s, s->bit_left & 7, 0);
+}
+
#undef AV_WBBUF
#undef AV_WLBUF
{
int full_frame= 0;
- avpriv_align_put_bits(&s->pb);
+ align_put_bits(&s->pb);
put_bits(&s->pb, 1, 1); /* marker */
}
}
- // avpriv_align_put_bits(&s->pb);
+ // align_put_bits(&s->pb);
while (put_bits_count(&s->pb) & 31)
put_bits(&s->pb, 1, 0);
{
uint32_t cur_pos, dist;
- avpriv_align_put_bits(&s->pb);
+ align_put_bits(&s->pb);
cur_pos = put_bits_count(&s->pb) >> 3;
/* VC-2 11 - sequence_header() */
static void encode_seq_header(VC2EncContext *s)
{
- avpriv_align_put_bits(&s->pb);
+ align_put_bits(&s->pb);
encode_parse_params(s);
put_vc2_ue_uint(&s->pb, s->base_vf);
encode_source_params(s);
/* VC-2 12.1 - picture_header() */
static void encode_picture_header(VC2EncContext *s)
{
- avpriv_align_put_bits(&s->pb);
+ align_put_bits(&s->pb);
put_bits32(&s->pb, s->picture_number++);
}
static void encode_wavelet_transform(VC2EncContext *s)
{
encode_transform_params(s);
- avpriv_align_put_bits(&s->pb);
+ align_put_bits(&s->pb);
}
/* VC-2 12 - picture_parse() */
static void encode_picture_start(VC2EncContext *s)
{
- avpriv_align_put_bits(&s->pb);
+ align_put_bits(&s->pb);
encode_picture_header(s);
- avpriv_align_put_bits(&s->pb);
+ align_put_bits(&s->pb);
encode_wavelet_transform(s);
}
quants[level][orientation]);
}
}
- avpriv_align_put_bits(pb);
+ align_put_bits(pb);
bytes_len = (put_bits_count(pb) >> 3) - bytes_start - 1;
if (p == 2) {
int len_diff = slice_bytes_max - (put_bits_count(pb) >> 3);
#ifndef FF_API_UNUSED_CODEC_CAPS
#define FF_API_UNUSED_CODEC_CAPS (LIBAVCODEC_VERSION_MAJOR < 59)
#endif
-
+#ifndef FF_API_AVPRIV_PUT_BITS
+#define FF_API_AVPRIV_PUT_BITS (LIBAVCODEC_VERSION_MAJOR < 59)
+#endif
#endif /* AVCODEC_VERSION_H */
s->coef_vlcs[tindex]->huffcodes[1]);
}
if (s->version == 1 && s->avctx->channels >= 2)
- avpriv_align_put_bits(&s->pb);
+ align_put_bits(&s->pb);
}
return 0;
}
else if (encode_block(s, src_coefs, total_gain) < 0)
return INT_MAX;
- avpriv_align_put_bits(&s->pb);
+ align_put_bits(&s->pb);
return put_bits_count(&s->pb) / 8 - s->avctx->block_align;
}
if (color != PADDING_COLOR && (PADDING + (w&1)))
put_xsub_rle(pb, PADDING + (w&1), PADDING_COLOR);
- avpriv_align_put_bits(pb);
+ align_put_bits(pb);
bitmap += linesize;
}