diff mbox

[FFmpeg-devel,2/2] avformat/flvenc: refine the flvenc shift_data code

Message ID 20170123090530.9180-1-lq@chinaffmpeg.org
State Accepted
Commit 1bb192ef6c1771ee18d1c5ed31d7c0cac8a25ebb
Headers show

Commit Message

Liu Steven Jan. 23, 2017, 9:05 a.m. UTC
refine the flvenc shift_data move data option

Signed-off-by: Steven Liu <lq@chinaffmpeg.org>
---
 libavformat/flvenc.c | 12 +++++++-----
 1 file changed, 7 insertions(+), 5 deletions(-)

Comments

Steven Liu Jan. 24, 2017, 4:32 a.m. UTC | #1
2017-01-23 17:05 GMT+08:00 Steven Liu <lq@chinaffmpeg.org>:

> refine the flvenc shift_data move data option
>
> Signed-off-by: Steven Liu <lq@chinaffmpeg.org>
> ---
>  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
> ffmpeg-devel@ffmpeg.org
> http://ffmpeg.org/mailman/listinfo/ffmpeg-devel

pushed
diff mbox

Patch

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;