csvorbis.Info.unpack_info C# (CSharp) Method

unpack_info() private method

private unpack_info ( csBuffer opb ) : int
opb csogg.csBuffer
return int
        int unpack_info(csBuffer opb)
        {
            version=opb.read(32);
            if(version!=0)return(-1);

            channels=opb.read(8);
            rate=opb.read(32);

            bitrate_upper=opb.read(32);
            bitrate_nominal=opb.read(32);
            bitrate_lower=opb.read(32);

            blocksizes[0]=1<<opb.read(4);
            blocksizes[1]=1<<opb.read(4);

            if((rate<1) ||
                (channels<1)||
                (blocksizes[0]<8)||
                (blocksizes[1]<blocksizes[0]) ||
                (opb.read(1)!=1))
            {
                //goto err_out; // EOP check
                clear();
                return(-1);
            }
            return(0);
            // err_out:
            // vorbis_info_clear(vi);
            // return(-1);
        }