• 大小: 20.06MB
    文件类型: .rar
    金币: 1
    下载: 0 次
    发布日期: 2023-08-05
  • 语言: 其他
  • 标签: g28181  ps封装  

资源简介

g28181的ps封装,vs2013项目,自己创建一个工程,然后把项目导进去就可以编译,适合学习之用,感谢远在他方的你们的帮助和无私奉献。用到ffmpeg2.6

资源截图

代码片段和文件信息

typedef struct
{
uint8_t* start;
uint8_t* p;
uint8_t* end;
int bits_left;
} bs_t;

static inline bs_t* bs_init(bs_t* b uint8_t* buf size_t size)
{
    b->start = buf;
    b->p = buf;
    b->end = buf + size;
    b->bits_left = 8;
    return b;
}

static inline bs_t* bs_new(uint8_t* buf size_t size)
{
    bs_t* b = (bs_t*)malloc(sizeof(bs_t));
    bs_init(b buf size);
    return b;
}

static inline void bs_free(bs_t* b)
{
    free(b);
}

static inline int bs_eof(bs_t* b) { if (b->p >= b->end) { return 1; } else { return 0; } }

static inline void bs_write_u1(bs_t* b uint32_t v)
{
    b->bits_left--;

    if (! bs_eof(b))
    {
        // FIXME this is slow but we must clear bit first
        // is it better to memset(0) the whole buffer during bs_init() instead? 
        // if we don‘t do either we introduce pretty nasty bugs
        (*(b->p)) &= ~(0x01 << b->bits_left);
        (*(b->p)) |= ((v & 0x01) << b->bits_left);
    }

    if (b->bits_left == 0) { b->p ++; b->bits_left = 8; }
}

static inline void bs_write_u(bs_t* b int n uint32_t v)
{
    int i;
    for (i = 0; i < n; i++)
    {
        bs_write_u1(b (v >> ( n - i - 1 ))&0x01 );
    }
}

 属性            大小     日期    时间   名称
----------- ---------  ---------- -----  ----

     文件   20223488  2015-07-23 17:04  NG28181\avcodec-56.dll

     文件    5873664  2015-07-23 17:04  NG28181\avformat-56.dll

     文件     480256  2015-07-23 17:04  NG28181\avutil-54.dll

     文件       1234  2015-08-19 08:28  NG28181\bit.c

     文件       2727  2015-08-19 15:33  NG28181\gb28181_h264ps\bits_write.h

     文件       1673  2015-08-20 09:27  NG28181\gb28181_h264ps\find_nal_unit.cpp

     文件       3148  2015-08-19 20:16  NG28181\gb28181_h264ps\gb28181_make_pes_header.cpp

     文件       2706  2015-08-19 16:13  NG28181\gb28181_h264ps\gb28181_make_pes_headerbak.cpp

     文件       1821  2015-08-18 15:13  NG28181\gb28181_h264ps\gb28181_make_psm_header.cpp

     文件       1978  2015-08-19 19:20  NG28181\gb28181_h264ps\gb28181_make_ps_header.cpp

     文件       1252  2015-08-18 15:07  NG28181\gb28181_h264ps\gb28181_make_rtp_header.cpp

     文件       1963  2015-08-18 15:13  NG28181\gb28181_h264ps\gb28181_make_sys_header.cpp

     文件       4029  2015-08-20 15:31  NG28181\gb28181_h264ps\gb28181_packageH264forlocalfile.cpp

     文件       2757  2015-08-19 11:07  NG28181\gb28181_h264ps\gb28181_send_rtp_pack.cpp

     文件       2282  2015-08-19 14:18  NG28181\gb28181_h264ps\gb28181_streampackageForH264.cpp

     文件       3560  2015-08-19 17:08  NG28181\gb28181_h264ps\packet.h

     文件       1095  2015-06-16 09:51  NG28181\gb28181_h264ps\说明.txt

     文件    4820180  2015-08-20 14:44  NG28181\h264ts.mp4

     文件     181469  2015-07-23 17:04  NG28181\include\libavcodec\avcodec.h

     文件       3111  2015-07-23 17:04  NG28181\include\libavcodec\avfft.h

     文件       3998  2015-07-23 17:04  NG28181\include\libavcodec\dv_profile.h

     文件       2358  2015-07-23 17:04  NG28181\include\libavcodec\dxva2.h

     文件      10623  2015-07-23 17:04  NG28181\include\libavcodec\old_codec_ids.h

     文件       1185  2015-07-23 17:04  NG28181\include\libavcodec\qsv.h

     文件       4007  2015-07-23 17:04  NG28181\include\libavcodec\vaapi.h

     文件       5437  2015-07-23 17:04  NG28181\include\libavcodec\vda.h

     文件       7972  2015-07-23 17:04  NG28181\include\libavcodec\vdpau.h

     文件       6543  2015-07-23 17:04  NG28181\include\libavcodec\version.h

     文件       2356  2015-07-23 17:04  NG28181\include\libavcodec\vorbis_parser.h

     文件       6062  2015-07-23 17:04  NG28181\include\libavcodec\xvmc.h

............此处省略116个文件信息

评论

共有 条评论