nal.c File Reference

Converts Encapsulated Byte Sequence Packets (EBSP) to Raw Byte Sequence Packets (RBSP), and then onto String Of Data Bits (SODB). More...

#include "contributors.h"
#include "global.h"

Include dependency graph for nal.c:

Go to the source code of this file.

Functions

int RBSPtoSODB (byte *streamBuffer, int last_byte_pos)
int EBSPtoRBSP (byte *streamBuffer, int end_bytepos, int begin_bytepos)

Variables

byte assignSE2partition [][SE_MAX_ELEMENTS]


Detailed Description

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)

Definition in file nal.c.


Function Documentation

int EBSPtoRBSP ( byte *  streamBuffer,
int  end_bytepos,
int  begin_bytepos 
)

Converts Encapsulated Byte Sequence Packets to RBSP.

Parameters:
streamBuffer pointer to data stream
end_bytepos size of data stream
begin_bytepos Position after beginning

Definition at line 92 of file nal.c.

Referenced by NALUtoRBSP().

int RBSPtoSODB ( byte *  streamBuffer,
int  last_byte_pos 
)

Converts RBSP to string of data bits.

Parameters:
streamBuffer pointer to buffer containing data
last_byte_pos position of the last byte containing data.
Returns:
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.

Definition at line 41 of file nal.c.

Referenced by read_new_slice().


Variable Documentation

byte assignSE2partition[][SE_MAX_ELEMENTS]

Initial value:

{
  
  {  0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 },   
  {  0, 0, 0, 0, 0, 0, 0, 1, 1, 1, 1, 0, 2, 2, 2, 2, 0, 0, 0, 0 }    
}
lookup-table to assign different elements to partition

Note:
here we defined up to 6 different partitions similar to document Q15-k-18 described in the PROGFRAMEMODE. The Sliceheader contains the PSYNC information.
Elements inside a partition are not ordered. They are ordered by occurence in the stream. Assumption: Only partitionlosses are considered.
The texture elements luminance and chrominance are not ordered in the progressive form This may be changed in image.c
We also defined the proposed internet partition mode of Stephan Wenger here. To select the desired mode uncomment one of the two following lines.
-IMPORTANT: Picture- or Sliceheaders must be assigned to partition 0.
Furthermore partitions must follow syntax dependencies as outlined in document Q15-J-23.

Definition at line 20 of file nal.c.

Referenced by cabac_startcode_follows(), FirstPartOfSliceHeader(), pred_weight_table(), read_ipred_modes(), read_one_macroblock(), readCBPandCoeffsFromNAL(), readCoeff4x4_CAVLC(), readCompCoeff4x4SMB_CABAC(), readCompCoeff8x8_CABAC(), readMotionInfoFromNAL(), ref_pic_list_reordering(), RestOfSliceHeader(), and uvlc_startcode_follows().


Documentation generated with DoxyGen