Mercurial > libavformat.hg
changeset 541:23a5448ade32 libavformat
simplify put_padding_packet()
author | michael |
---|---|
date | Fri, 01 Oct 2004 20:05:04 +0000 |
parents | 26a477a5ebda |
children | be81a0f1974d |
files | mpeg.c |
diffstat | 1 files changed, 9 insertions(+), 24 deletions(-) [+] |
line wrap: on
line diff
--- a/mpeg.c Fri Oct 01 16:30:15 2004 +0000 +++ b/mpeg.c Fri Oct 01 20:05:04 2004 +0000 @@ -55,7 +55,7 @@ computed (VBR case) */ int64_t last_scr; /* current system clock */ - double vcd_padding_bitrate; + double vcd_padding_bitrate; //FIXME floats int64_t vcd_padding_bytes_written; } MpegMuxContext; @@ -530,33 +530,18 @@ } /* Write an MPEG padding packet header. */ -static int put_padding_header(AVFormatContext *ctx,uint8_t* buf, int full_padding_size) +static void put_padding_packet(AVFormatContext *ctx, ByteIOContext *pb,int packet_bytes) { MpegMuxContext *s = ctx->priv_data; - int size = full_padding_size - 6; /* subtract header length */ - - buf[0] = (uint8_t)(PADDING_STREAM >> 24); - buf[1] = (uint8_t)(PADDING_STREAM >> 16); - buf[2] = (uint8_t)(PADDING_STREAM >> 8); - buf[3] = (uint8_t)(PADDING_STREAM); - buf[4] = (uint8_t)(size >> 8); - buf[5] = (uint8_t)(size & 0xff); - + int i; + + put_be32(pb, PADDING_STREAM); + put_be16(pb, packet_bytes - 6); if (!s->is_mpeg2) { - buf[6] = 0x0f; - return 7; + put_byte(pb, 0x0f); + packet_bytes -= 7; } else - return 6; -} - -static void put_padding_packet(AVFormatContext *ctx, ByteIOContext *pb,int packet_bytes) -{ - uint8_t buffer[7]; - int size, i; - - size = put_padding_header(ctx,buffer, packet_bytes); - put_buffer(pb, buffer, size); - packet_bytes -= size; + packet_bytes -= 6; for(i=0;i<packet_bytes;i++) put_byte(pb, 0xff);