1. uMediaPlayer - 小巧的播放软件
    player<===>codec<==>stream protocol stack
  2. stream protocol stack:
    主要是 RTSP
  3. codec
    主要是 iso mpeg4
  4. player
    主要是 qt or others
  5. 关于mpeg4 语法结构
    visual object sequence
        visual object
            video object layer
                video object plane
                    video packet header
                    motion texture picture
    注意,每个层次都有header结构,例如visual object sequece header中有profile-level.从vop开始就是element stream,和vop并行的有vop_with_shortheader,gop,(mesh,fba)
  6. vop即通常的I/P/B/S frame??
  7. 几个名词
    视频宝典,的确不错。[SilkyBible] 视频知识系列
    http://www.dream4ever.org/archive/t-439.html
    http://www.shooter.com.cn/?artid=49&show=1 xvid设置解释,里面有很多名词可以做参考,例如inter4v是mb的一种类型.
    mcbpc - chrominance色度宏快编码模式,参考Table 6,里面含有两个信息:mbtype(参考附录B-1, macroblock type),cbpc还有个是cbpy注意这些可变长编码是如何设计成可进行查表计算的。实际上cpbc 表示macroblock中最后两个block(色度块)是否编码,所以cbpc有两位,对应位为1表示是coded,而cbpy有4位,表示macroblock中前4个block是否是编码块.。是macroblock的参数
    2004年12月21日13:25:36
  8. VLD
    对vld的解码大的流程控制参数为: block 是intra还是inter block,是dc还是ac,reversible_vlc==?,short_video_header==0?这四个参数决定了采用的码表.流程为:
    对于DC解码

    None.gif if (short_video_header == 0 )
    ExpandedBlockStart.gifContractedBlock.gif
    dot.gif {
    InBlock.gif
    //difference code
    InBlock.gif
    //variable length dc_coeff_size + fixed size code ,table B-13,B-14,B-15
    InBlock.gif
    //for example ExpandedBlockEnd.gif}
    None.gif else ExpandedBlockStart.gifContractedBlock.gif dot.gif {
    InBlock.gif
    //not difference code,fixed 8bits ExpandedBlockEnd.gif}

    对于AC

    None.gif // for dc in non intra block and ac in all block
    None.gif
    // generate a event(last,run,level)
    None.gif
    // last table code bit s denotes level's sign None.gif if (short_video_header == 1 )
    ExpandedBlockStart.gifContractedBlock.gif
    dot.gif {
    InBlock.gif
    //B-17 ExpandedBlockEnd.gif}
    None.gif else ExpandedBlockStart.gifContractedBlock.gif dot.gif {
    InBlock.gif
    //difference between intra and inter InBlock.gifif(intra)
    ExpandedSubBlockStart.gifContractedSubBlock.gif
    dot.gif{
    InBlock.gif
    if(reversible_vlc==1)
    ExpandedSubBlockStart.gifContractedSubBlock.gif
    dot.gif{
    InBlock.gif
    //B-23 ExpandedSubBlockEnd.gif}
    InBlock.gifelse ExpandedSubBlockStart.gifContractedSubBlock.gifdot.gif{
    InBlock.gif
    //B-16 ExpandedSubBlockEnd.gif}
    ExpandedSubBlockEnd.gif}
    ExpandedBlockEnd.gif}

    2004年12月22日

  9. mb_type中的inter_q,intra_q表示可对量化的台阶进行微调,4v,表示有4个motion_vector.
    2004年12月27日11:00:44
  10. progressive and interlaced
    两个比较好的 术语解释
    http://gb.doom9.org/index.html?/glossary.htm
    http://gb.doom9.org/index.html?/video-basics.htm
  11. interploation的过程受 quarter_pixel精度和round_control的控制
    half sample mode interpolation很简单,需要注意的是计算interpolation时候src的定位(是以half sample为单位的,所以取src的时候需要右移1位,但在interpolation时不需要移位)
    在motion vector取预测的时候,Median是取三个candidate中中间的那个值而不是取平均值
    注意uv 的运动向量预测是取4个lumine block之和做处理的。
      uv_dx = (uv_dx >> 1) + roundtab_79[uv_dx & 0x3];
      uv_dy = (uv_dy >> 1) + roundtab_79[uv_dy & 0x3];
      roundtab_79还有另一个表是根据
    /*****************************************************************************
     * Modified rounding tables
     * Original tables see ISO spec tables 7-6 -> 7-9
     ****************************************************************************/
  12. const uint32_t roundtab[16] =
    {0, 0, 0, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 2, 2 };
    变换而来的,roundtab_79是除2后应加的数值,同理roundtab_76是除8后应加的数值

转载于:https://www.cnblogs.com/embed/archive/2004/08/10/31913.html

stream media(1)相关推荐

  1. 在Windows 7中的Windows Media Player 12中快速预览歌曲

    Do you ever wish you could quickly preview a song without having to play it? Today we look at a quic ...

  2. Windows 8或10上Windows Media Center的5种替代方法

    Windows 8 (and now 10) no longer comes with Windows Media Center by default. To get it, you can upgr ...

  3. 学习Windows 7:使用Windows Media Player管理音乐

    If you're moving from XP to Windows 7, you'll notice that Windows Media Player 12 is a different tha ...

  4. xbox one 越狱_如何在Xbox One上播放视频和音乐文件

    xbox one 越狱 The Xbox One has integrated TV features and support for streaming media apps like Netfli ...

  5. 自定义异常最佳实践_播放,自定义和组织媒体的最佳文章

    自定义异常最佳实践 Computers today are used for much more than generating documents, writing and receiving em ...

  6. 从技术上解读大数据的应用现状和开源未来! | 技术头条

    作者 | 韩锐. Lizy Kurian John.詹剑锋 责编 | 胡巍巍 近年来,随着大数据系统的快速发展,各式各样的开源基准测试集被开发出来,以评测和分析大数据系统并促进其技术改进.然而,迄今为 ...

  7. Opera Unite如何架设自己的网站

    1使用Opera的File Sharing可以共享你的文件 2使用Opera的Stream media可以共享你的视频,有些格式甚至可以直接在浏览器端打开(比如MOV,但是需要安装Quicktime的 ...

  8. ITU-T G.1081 IPTV性能监测点 (Performance monitoring points for IPTV)

    ITU-T 建议书 G.1081 IPTV性能监测点 Performance monitoring points for IPTV Summary Successful deployment of I ...

  9. Tasker to stop Poweramp control for the headset while there is an incoming SMS - frozen

    If you usually like to use Poweramp or any other media player to enjoy the music with headset plugge ...

最新文章

  1. 首发 | 北京踏歌智行完成Pre-A轮数千万融资,辰韬资本领投
  2. c# Bitmap byte[] Stream 文件相互转换
  3. 线性支持向量机、线性可分支持向量机、非线性支持向量机是怎么区分的?
  4. windows下安装以及配置nginx
  5. Notepad++如何更改背景色(以保护视力色为例)
  6. 安卓勒索软件进一步扩散
  7. 我的世界java版tis,我的世界1.7.10~1.8.8 9tis-3d回到汇编的时代mod
  8. mysql审计 社区版有吗_mysql 5.6 社区版上审计功能,不扯皮
  9. csgo跳投指令_csgo跳投绑定指令
  10. C语言丨栈(二):链栈
  11. 使用mysql悲观锁解决并发问题
  12. [转载] python中集合的表示_Python No.18_集合以及表示符号
  13. ruby DBI安装使用指南
  14. 数据结构 树的遍历(递归遍历练习)
  15. Tensorflow中图像的预处理
  16. 学院后勤报修系统php_企业智能故障报修系统,助你轻松解决设备维修难题
  17. (Android-RTC-8)分析HardwareVideoEncoder—BitrateAdjuster
  18. 基于php的大学学生宿舍网上报修管理系统
  19. Navicat操作数据库
  20. Excel2013 基本用法(上)

热门文章

  1. 企业级负载均衡集群——lvs的TUN模式(隧道模式)详细说明
  2. JavaSE和JavaEE的区别
  3. C语言之浮点型在内存中的存储
  4. C语言实战项目【1】猜数字
  5. Ubuntu配置apt的国内源地址
  6. 口播神器,基于Edge,微软TTS(text-to-speech)文字转语音免费开源库edge-tts实践(Python3.10)
  7. 天池龙珠计划训练营——python3
  8. 替代电脑软件的在线工具的收集整理
  9. Linux操作系统-标准IO库(3)
  10. OpenAPI规范3.1.0