parsetcommon.c
上传用户:hjq518
上传日期:2021-12-09
资源大小:5084k
文件大小:2k
源码类别:

Audio

开发平台:

Visual C++

  1. /*!
  2.  **************************************************************************************
  3.  * file
  4.  *    parset.c
  5.  * brief
  6.  *    Picture and Sequence Parameter set generation and handling
  7.  *  date 25 November 2002
  8.  * author
  9.  *    Main contributors (see contributors.h for copyright, address and affiliation details)
  10.  *      - Stephan Wenger        <stewe@cs.tu-berlin.de>
  11.  *
  12.  **************************************************************************************
  13.  */
  14. #include "global.h"
  15. #include "memalloc.h"
  16. /*!
  17.  *************************************************************************************
  18.  * brief
  19.  *    Allocates memory for a pps
  20.  *
  21.  * return
  22.  *    pointer to a pps
  23.  *************************************************************************************
  24.  */
  25. pic_parameter_set_rbsp_t *AllocPPS ()
  26.  {
  27.    pic_parameter_set_rbsp_t *p;
  28.    if ((p=calloc (sizeof (pic_parameter_set_rbsp_t), 1)) == NULL)
  29.      no_mem_exit ("AllocPPS: PPS");
  30.    p->slice_group_id = NULL;
  31.    return p;
  32.  }
  33. /*!
  34.  *************************************************************************************
  35.  * brief
  36.  *    Allocates memory for am sps
  37.  *
  38.  * return
  39.  *    pointer to a sps
  40.  *************************************************************************************
  41.  */
  42. seq_parameter_set_rbsp_t *AllocSPS ()
  43.  {
  44.    seq_parameter_set_rbsp_t *p;
  45.    if ((p=calloc (sizeof (seq_parameter_set_rbsp_t), 1)) == NULL)
  46.      no_mem_exit ("AllocSPS: SPS");
  47.    return p;
  48.  }
  49. /*!
  50.  *************************************************************************************
  51.  * brief
  52.  *    Frees a pps
  53.  *
  54.  * param pps
  55.  *     pps to be freed
  56.  *
  57.  * return
  58.  *    none
  59.  *************************************************************************************
  60.  */
  61.  void FreePPS (pic_parameter_set_rbsp_t *pps)
  62.  {
  63.    assert (pps != NULL);
  64.    if (pps->slice_group_id != NULL)
  65.      free (pps->slice_group_id);
  66.    free (pps);
  67.  }
  68.  /*!
  69.  *************************************************************************************
  70.  * brief
  71.  *    Frees a sps
  72.  *
  73.  * param sps
  74.  *     sps to be freed
  75.  *
  76.  * return
  77.  *    none
  78.  *************************************************************************************
  79.  */
  80.  void FreeSPS (seq_parameter_set_rbsp_t *sps)
  81.  {
  82.    assert (sps != NULL);
  83.    free (sps);
  84.  }