• tstools-1.11

    合成源码流程 1.合成函数 --merge_with_h264() 2.流程 1)初始化重要参数值见下表 序号 参数 代表意思 1 got_video 标志位,合成TS流中是否有视频流;有为TRUE,否则false 2 got_audio 标志位,合成TS流中是否有音频流;有为TRUE,否则false 3 prog_pids[] 音视频PID,都有取2个,只有视频或音频取1。 4 prog_type[] 音视频流类型,都有取2个;如只要视频H264码流则 prog_type[0] = AVC_VIDEO_STREAM_TYPE;(0x1B) 2.取音频prog_type[]的值 代码: switch (audio_type) { case AUDIO_ADTS: case AUDIO_ADTS_MPEG2: case AUDIO_ADTS_MPEG4: prog_type[1] = ADTS_AUDIO_STREAM_TYPE; break; case AUDIO_L2: prog_type[1] = MPEG2_AUDIO_STREAM_TYPE; break; case AUDIO_AC3: prog_type[1] = ATSC_DOLBY_AUDIO_STREAM_TYPE; break; default: // what else can we do? prog_type[1] = ADTS_AUDIO_STREAM_TYPE; break; } 3连续写出八个TS流空包------ write_TS_null_packet(TS_writer_poutput) 代码 write_TS_null_packet(TS_writer_p output) { byte TS_packet[TS_PACKET_SIZE]; int err, ii; TS_packet[0] = 0x47; TS_packet[1] = 0x1F; // PID is 0x1FFF TS_packet[2] = 0xFF; TS_packet[3] = 0x20; // payload only for (ii=4; ii<TS_PACKET_SIZE; ii++) TS_packet[ii] = 0xFF; err = write_TS_packet_parts(output,TS_packet,TS_PACKET_SIZE,NULL,0,NULL,0,0x1FF,FALSE,0); if (err) { fprintf(stderr,"### Error writing null TS packet\n"); return 1; } return 0; }<span style="font-weight: bold;"> </span> 注:空包包头 0x47 0x1F 0xFF 0x20 包数据全为0xff。包长188个字节 4.为多种类型(音频、视频流)写出pat和PMT--- write_TS_program_data2() 具体如何写参考write_pat_and_pmt()、append_to_pidint_list()等函数 5.判断got_video 、got_audio是否为true(即是否任何一个存在),存在在进行循环合成 while (got_video || got_audio) { ...... } 6.具体合成 具体合成分两步:1. write_TS_program_data2()----------------写出PMT和PAT 2.根据H264码流的帧类型(I帧和非I帧),添加PTS/DTS和pcr 代码如下: <strong> </strong> if (is_I_or_IDR_frame(access_unit)) //判断是否是I帧,I帧则pts/dts ;否则打pcr err = write_access_unit_as_TS_with_pts_dts(access_unit,video_context, output,DEFAULT_VIDEO_PID, TRUE,video_pts+45000, TRUE,video_pts);

    0
    137
    489KB
    2021-12-16
    5
  • libmgi-4.0.0.new.tar.gz

    本MGI库完美支持miniGui4.0.7, 1.支持64位编译器,32位请下载本人上传的另外一个版本; 2.更改了现代手机样式的皮肤,支持自定义键盘大小; 3、支持miniGui 4.0.7版本 交叉编译方式: libmgi-4.0.0(专门为minigui 4.0修改的版本) ./configure --prefix=$PWD/../_install --host=aarch64-linux PKG_CONFIG_PATH=$PWD/../_install/lib/pkgconfig/ CPPFLAGS=-I$PWD/../_install/include LDFLAGS=-L$PWD/../_install/lib make make install

    1
    128
    22.08MB
    2020-07-30
    48
  • libmgi-4.0.0.tar.gz

    本MGI库完美支持miniGui4.0, 1.不支持64位编译器,64位请下载本人上传的另外一个版本; 2.增加硬件键盘中文输入支持; 3.增加键盘鼠标热插拔的支持; 交叉编译方式: libmgi-4.0.0(专门为minigui 4.0修改的版本) ./configure --prefix=$PWD/../_install --host=arm-hisiv600-linux PKG_CONFIG_PATH=$PWD/../_install/lib/pkgconfig/ CPPFLAGS=-I$PWD/../_install/include LDFLAGS=-L$PWD/../_install/lib make make install

    1
    120
    1.79MB
    2019-11-21
    9
  • sublime Text3 汉化包.zip

    sublime Text3 中文完全汉化包 替换Sublime Text 3\Packages 下对应文件即可

    0
    183
    99KB
    2019-11-11
    9
  • minigui 静态按键类

    minigui 静态按键类 本类按键风格和静态框相同,静态框所有的风格和消息都支持,按键是在静态框基础上增加了MSG_MOUSEMOVEIN(鼠标移入和移出窗口)和MSG_LBUTTONUP(鼠标在窗口松手)两个消息,通过发送NotifyParent消息给控件实现自定义控件消息,类似于静态框的超类。同样可以修改源码调用源码API将其他消息交给原控件完成,实现控件的超类。

    0
    128
    3KB
    2017-01-16
    9
  • MiniGUI编程指南-V3.0

    MiniGUI • 编程指南( V3.0) • 简介 • 版权声明 • 第 1 篇: MiniGUI 编程基础 第 01 章:前言 o o 第 02 章:开始 MiniGUI 编程 o 第 03 章:窗口和消息 o 第 04 章:对话框编程基础 o 第 05 章:控件编程基础 o 第 06 章:控件高级编程 o 第 07 章:菜单 o 第 08 章:滚动条 o 第 09 章:键盘和鼠标 o 第 10 章:图标、光标和插入符 o 第 11 章:界面外观及特效 • 第 2 篇: MiniGUI 图形编程 第 12 章:其他编程主题 o o 第 13 章:图形设备接口 o 第 14 章:文本的处理和显示 • 第 3 篇: MiniGUI 高级编程 第 15 章:高级图形函数 o o 第 16 章:进程间通讯及异步事件处理 o 第 17 章:开发定制的 MiniGUI-Processes 服务器程序 • 第 4 篇: MiniGUI 控件编程 第 18 章:图形引擎及输入引擎 o o 第 19 章:静态框 o 第 20 章:按钮 o 第 21 章:列表框 o 第 22 章:编辑框 o 第 23 章:组合框 o 第 24 章:菜单按钮 o 第 25 章:进度条 o 第 26 章:滑块 第 27 章:工具栏 第 28 章:属性表 o 第 29 章:滚动窗口控件 o 第 30 章:滚动型控件 o 第 31 章:树型控件 o 第 32 章:列表型控件 o 第 33 章:月历控件 o 第 34 章:旋钮控件 o 第 35 章:酷工具栏 o 第 36 章:动画控件 o 第 37 章:网格控件 o 第 38 章:图标型控件 • 第 39 章:独立滚动条控件 附录A:统一的 MiniGUI 初始化接口

    0
    48
    5.05MB
    2016-03-29
    3
  • 分享达人

    成功上传6个资源即可获取
  • 分享小兵

    成功上传3个资源即可获取
  • 创作能手

    授予每个自然周发布1篇到3篇原创IT博文的用户
关注 私信
上传资源赚积分or赚钱