Thomas Volkert <silvo <at> gmx.net> writes:

>      if (size >= 18) {  /* We're obviously dealing with WAVEFORMATEX */
> -        int cbSize = avio_rl16(pb); /* cbSize */
> +        int cbSize = (!big_endian ? avio_rl16(pb) : 
> avio_rb16(pb)); /* cbSize */

This change looks useless to me given that you error 
out two lines below:

> +        if (big_endian) {
> +            avpriv_report_missing_feature(codec, 
> "WAVEFORMATEX support for RIFX files\n");
> +            return AVERROR_PATCHWELCOME;

> -    /* check RIFF header */
> -    tag = avio_rl32(pb);
> -
> -    rf64 = tag == MKTAG('R', 'F', '6', '4');
> -    if (!rf64 && tag != MKTAG('R', 'I', 'F', 'F'))
> +    /* read chunk ID */
> +    switch (avio_rl32(pb)) {

I still believe this would look simpler like this:
/* check RIFF header */
tag = avio_rl32(pb);

switch (tag) {

Carl Eugen

_______________________________________________
ffmpeg-devel mailing list
ffmpeg-devel@ffmpeg.org
http://ffmpeg.org/mailman/listinfo/ffmpeg-devel

Reply via email to