MCPcopy Create free account
hub / github.com/FFmpeg/FFmpeg / put_bits63

Function put_bits63

libavcodec/put_bits.h:344–367  ·  view source on GitHub ↗

* Write up to 63 bits into a bitstream. */

Source from the content-addressed store, hash-verified

342 * Write up to 63 bits into a bitstream.
343 */
344static inline void put_bits63(PutBitContext *s, int n, uint64_t value)
345{
346 av_assert2(n < 64U && value < (UINT64_C(1) << n));
347
348#if BUF_BITS >= 64
349 put_bits_no_assert(s, n, value);
350#else
351 if (n < 32)
352 put_bits(s, n, value);
353 else if (n == 32)
354 put_bits32(s, value);
355 else if (n < 64) {
356 uint32_t lo = value & 0xffffffff;
357 uint32_t hi = value >> 32;
358#ifdef BITSTREAM_WRITER_LE
359 put_bits32(s, lo);
360 put_bits(s, n - 32, hi);
361#else
362 put_bits(s, n - 32, hi);
363 put_bits32(s, lo);
364#endif
365 }
366#endif
367}
368
369/**
370 * Write up to 64 bits into a bitstream.

Callers 10

update_extradataFunction · 0.85
update_extradataFunction · 0.85
put_ue_coefFunction · 0.85
put_se_coefFunction · 0.85
CBS_FUNC(write_unsigned)Function · 0.85
CBS_FUNC(write_signed)Function · 0.85
put_vc2_ue_uint_inlineFunction · 0.85
set_ue_golomb_longFunction · 0.85
put_bits64Function · 0.85
put_sbits63Function · 0.85

Calls 3

put_bits_no_assertFunction · 0.85
put_bits32Function · 0.85
put_bitsFunction · 0.70

Tested by

no test coverage detected