On Tue, May 24, 2011 at 02:14:42PM +0200, Anton Khirnov wrote:
> From: Carl Eugen Hoyos <[email protected]>
> 
> Signed-off-by: Anton Khirnov <[email protected]>
> ---
>  libavformat/ape.c |    6 +++---
>  1 files changed, 3 insertions(+), 3 deletions(-)
> 
> diff --git a/libavformat/ape.c b/libavformat/ape.c
> index 956036d..ade6c75 100644
> --- a/libavformat/ape.c
> +++ b/libavformat/ape.c
> @@ -159,8 +159,8 @@ static int ape_read_header(AVFormatContext * s, 
> AVFormatParameters * ap)
>      int total_blocks;
>      int64_t pts;
>  
> -    /* TODO: Skip any leading junk such as id3v2 tags */
> -    ape->junklength = 0;
> +    /* Skip any leading junk such as id3v2 tags */
> +    ape->junklength = avio_tell(pb);
>  
>      tag = avio_rl32(pb);
>      if (tag != MKTAG('M', 'A', 'C', ' '))
> @@ -276,7 +276,7 @@ static int ape_read_header(AVFormatContext * s, 
> AVFormatParameters * ap)
>      ape->frames[0].nblocks = ape->blocksperframe;
>      ape->frames[0].skip    = 0;
>      for (i = 1; i < ape->totalframes; i++) {
> -        ape->frames[i].pos      = ape->seektable[i]; //ape->frames[i-1].pos 
> + ape->blocksperframe;
> +        ape->frames[i].pos      = ape->seektable[i] + ape->junklength; 
> //ape->frames[i-1].pos + ape->blocksperframe;
>          ape->frames[i].nblocks  = ape->blocksperframe;
>          ape->frames[i - 1].size = ape->frames[i].pos - ape->frames[i - 
> 1].pos;
>          ape->frames[i].skip     = (ape->frames[i].pos - ape->frames[0].pos) 
> & 3;
> -- 

looks ok, though people making such files need to be exterminated
_______________________________________________
libav-devel mailing list
[email protected]
https://lists.libav.org/mailman/listinfo/libav-devel

Reply via email to