⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 bitstream.c

📁 网络MPEG4IP流媒体开发源代码
💻 C
字号:
#include "mpeg3private.h"#include "mpeg3protos.h"#include "bitstream.h"#include <stdlib.h>mpeg3_bits_t *mpeg3bits_new_stream(void){	mpeg3_bits_t *stream = malloc(sizeof(mpeg3_bits_t));	stream->bfr = 0;	stream->bfr_size = 0;	stream->bit_number = 0;	stream->input_ptr = NULL;	return stream;}int mpeg3bits_delete_stream(mpeg3_bits_t* stream){	free(stream);	return 0;}/* For mp3 decompression use a pointer in a buffer for getbits. */int mpeg3bits_use_ptr(mpeg3_bits_t* stream, unsigned char *buffer){	stream->bfr_size = stream->bit_number = 0;	stream->bfr = 0;	stream->input_ptr = buffer;	stream->orig_ptr = buffer;	stream->buflen = 65535;	return 0;}int mpeg3bits_use_ptr_len(mpeg3_bits_t *stream, unsigned char *buffer,			  long buflen){  stream->bfr_size = stream->bit_number = 0;  stream->bfr = 0;  stream->input_ptr = buffer;  stream->orig_ptr = buffer;  stream->buflen = buflen;  return 0;}/* Erase the buffer with the next 4 bytes in the file. */int mpeg3bits_refill(mpeg3_bits_t* stream){	stream->bit_number = 32;	stream->bfr_size = 32;	stream->bfr = (unsigned int)(*stream->input_ptr++) << 24;	stream->bfr |= (unsigned int)(*stream->input_ptr++) << 16;	stream->bfr |= (unsigned int)(*stream->input_ptr++) << 8;	stream->bfr |= *stream->input_ptr++;	return mpeg3bits_eof(stream);}int mpeg3bits_byte_align(mpeg3_bits_t *stream){	stream->bit_number = (stream->bit_number + 7) & 0xf8;	return 0;}int mpeg3bits_getbitoffset(mpeg3_bits_t *stream){	return stream->bit_number & 7;}

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -