refine the flvenc shift_data move data option
Signed-off-by: Steven Liu <[email protected]>
---
libavformat/flvenc.c | 12 +++++++-----
1 file changed, 7 insertions(+), 5 deletions(-)
diff --git a/libavformat/flvenc.c b/libavformat/flvenc.c
index 5714321..d7506c5 100644
--- a/libavformat/flvenc.c
+++ b/libavformat/flvenc.c
@@ -626,13 +626,15 @@ static int shift_data(AVFormatContext *s)
avio_seek(read_pb, flv->keyframes_info_offset, SEEK_SET);
pos = avio_tell(read_pb);
- /* shift data by chunk of at most keyframe *filepositions* and *times*
size */
+#define READ_BLOCK do {
\
read_size[read_buf_id] = avio_read(read_pb, read_buf[read_buf_id],
metadata_size); \
- read_buf_id ^= 1;
- do {
+ read_buf_id ^= 1;
\
+} while (0)
- read_size[read_buf_id] = avio_read(read_pb, read_buf[read_buf_id],
metadata_size); \
- read_buf_id ^= 1;
+ /* shift data by chunk of at most keyframe *filepositions* and *times*
size */
+ READ_BLOCK;
+ do {
+ READ_BLOCK;
n = read_size[read_buf_id];
if (n < 0)
break;
--
2.10.1 (Apple Git-78)
_______________________________________________
ffmpeg-devel mailing list
[email protected]
http://ffmpeg.org/mailman/listinfo/ffmpeg-devel