mirror of
https://github.com/FFmpeg/FFmpeg.git
synced 2024-12-23 12:43:46 +02:00
Use new function put_nbyte() to speed up padding.
Patch by Anssi Hannula, anssi d hannula a iki d fi Originally committed as revision 26194 to svn://svn.ffmpeg.org/ffmpeg/trunk
This commit is contained in:
parent
17ee8f669f
commit
febd72be65
@ -347,7 +347,7 @@ static int spdif_write_packet(struct AVFormatContext *s, AVPacket *pkt)
|
|||||||
if (!ctx->pkt_offset)
|
if (!ctx->pkt_offset)
|
||||||
return 0;
|
return 0;
|
||||||
|
|
||||||
padding = (ctx->pkt_offset - ctx->use_preamble * BURST_HEADER_SIZE - ctx->out_bytes) >> 1;
|
padding = (ctx->pkt_offset - ctx->use_preamble * BURST_HEADER_SIZE - ctx->out_bytes) & ~1;
|
||||||
if (padding < 0) {
|
if (padding < 0) {
|
||||||
av_log(s, AV_LOG_ERROR, "bitrate is too high\n");
|
av_log(s, AV_LOG_ERROR, "bitrate is too high\n");
|
||||||
return AVERROR(EINVAL);
|
return AVERROR(EINVAL);
|
||||||
@ -373,8 +373,7 @@ static int spdif_write_packet(struct AVFormatContext *s, AVPacket *pkt)
|
|||||||
if (ctx->out_bytes & 1)
|
if (ctx->out_bytes & 1)
|
||||||
put_be16(s->pb, ctx->out_buf[ctx->out_bytes - 1]);
|
put_be16(s->pb, ctx->out_buf[ctx->out_bytes - 1]);
|
||||||
|
|
||||||
for (; padding > 0; padding--)
|
put_nbyte(s->pb, 0, padding);
|
||||||
put_be16(s->pb, 0);
|
|
||||||
|
|
||||||
av_log(s, AV_LOG_DEBUG, "type=%x len=%i pkt_offset=%i\n",
|
av_log(s, AV_LOG_DEBUG, "type=%x len=%i pkt_offset=%i\n",
|
||||||
ctx->data_type, ctx->out_bytes, ctx->pkt_offset);
|
ctx->data_type, ctx->out_bytes, ctx->pkt_offset);
|
||||||
|
Loading…
Reference in New Issue
Block a user