www.pudn.com > jm50g.zip > nal.c
/* *********************************************************************** * COPYRIGHT AND WARRANTY INFORMATION * * Copyright 2001, International Telecommunications Union, Geneva * * DISCLAIMER OF WARRANTY * * These software programs are available to the user without any * license fee or royalty on an "as is" basis. The ITU disclaims * any and all warranties, whether express, implied, or * statutory, including any implied warranties of merchantability * or of fitness for a particular purpose. In no event shall the * contributor or the ITU be liable for any incidental, punitive, or * consequential damages of any kind whatsoever arising from the * use of these programs. * * This disclaimer of warranty extends to the user of these programs * and user's customers, employees, agents, transferees, successors, * and assigns. * * The ITU does not represent or warrant that the programs furnished * hereunder are free of infringement of any third-party patents. * Commercial implementations of ITU-T Recommendations, including * shareware, may be subject to royalty fees to patent holders. * Information regarding the ITU-T patent policy is available from * the ITU Web site at http://www.itu.int. * * THIS IS NOT A GRANT OF PATENT RIGHTS - SEE THE ITU-T PATENT POLICY. ************************************************************************ */ /*! ************************************************************************ * \file nal.c * * \brief * Converts Encapsulated Byte Sequence Packets (EBSP) to Raw Byte * Sequence Packets (RBSP), and then onto String Of Data Bits (SODB) * * \author * Main contributors (see contributors.h for copyright, address and affiliation details) * - Shankar L. Regunathan************************************************************************ */ #include "contributors.h" #include #include #include #include #include #include "defines.h" #include "global.h" /*! ************************************************************************ * \brief * Converts RBSP to string of data bits * \param streamBuffer * pointer to buffer containing data * \param last_byte_pos * position of the last byte containing data. * \return last_byte_pos * position of the last byte pos. If the last-byte was entirely a stuffing byte, * it is removed, and the last_byte_pos is updated. * ************************************************************************/ int RBSPtoSODB(byte *streamBuffer, int last_byte_pos) { int ctr_bit, bitoffset; bitoffset = 0; //find trailing 1 ctr_bit = (streamBuffer[last_byte_pos-1] & (0x01<