PSP技术讨论区
PSP模拟游戏区
PSP电影动漫分享区

全部PSP中文游戏迅雷下载 | 模拟游戏下载 | PSP电子书下载 | PSP软件下载 | PSP主题下载 | PSP游戏存档下载 | 怪物猎人交流区




当前位置:来看psp>psp教程>文章内容
PMP格式详解(PSP电影专用格式)
发布时间:2007-11-19

PMP格式详解:

著名的jonny设计了PMP格式,让大家可以使用小P来欣赏到高质量的影音;
但随着版本的推进,出现了PMP1.0, PMP2.0, PMP-AVC, 这些名词和概念可能让大家感到很困惑,
现在,我根据我的研究和理解来给大家解释一下这些名词的意思。

【PMP格式】
PMP是jonny设计的视频音频封装格式,如同AVI一样,只是一种封装的容器格式
PMP格式现在只有两个版本,一个是1.0, 一个是2.0

PMP1.0是一个比较简陋的版本,只支持封装MP4V流(xvid, divx)和MP3流(而且要求是CBR的,采样率为44100),
从文件头开始,顺序结构如下:

4字节:一定是"pmpm",pmp的标志;
4字节:版本号,为0,表示版本是1.0
4字节:视频帧总数
4字节:视频宽度
4字节:视频高度
4字节:视频scale
4字节:视频rate , 注意:视频的帧率fps = rate/scale
4字节:最大视频帧的大小
视频帧总数×4个字节:每帧视频的索引,每个索引4个字节,最低一个bit位表示是否关键帧,其余的31位bit表示帧的大小
视频数据:字节数,由上面的索引计算可以得出;
4个字节:音频帧的数据大小(由于采用的是cbr模式,所有的音频帧数据大小一样,但关键帧的大小比普通帧大小多一个字节)
4个字节:音频帧的总数
音频帧总数×1个字节:每帧音频的索引,每个索引1个字节,关键帧为1,普通帧为0,注意:每帧的实际大小=音频帧的数据大小+索引值;
音频数据:字节数,由上面的索引计算得出;

从上面的分析来看,PMP1.0格式有很大的不足,没有视频和音频的标志位,也就是说,固定死了视频和音频的编码格式,无法封装各式的流,
同时,由于视频和音频数据是非交错存储,播放程序在回放的时候,文件指针在来回地移动,读视频帧的时候移到前面,读音频帧又移到后面;

PMP2.0开始,jonny估计意识到1.0的不足,重新设计了文件的格式结构,我个人认为这个改变很不错:
从文件头开始,顺序结构如下:

4字节:一定是"pmpm",pmp的标志;
4字节:版本号,为1,表示版本是2.0
4字节:视频格式标志,这是一个改进,为支持封装各种视频流提供保证,0表示MP4V流(xvid, divx),1表示AVC流(PMP-AVC其实就是PMP2.0格式,只不过封装了AVC流)
4字节:视频帧总数
4字节:视频宽度
4字节:视频高度
4字节:视频scale
4字节:视频rate , 注意:视频的帧率fps = rate/scale
4字节:音频格式标志,同样为了以后支持封装各种音频提供保证,现在只支持mp3流,该值为0;
4字节:包含的音频流数量,为支持多音轨封装提供了保证,如果一个pmp中封装了两条音轨,该值就为2
4字节:每帧视频附带的音频帧的最大数,由于PMP2.0采用了视频音频交错存储的方式,一帧视频和相应的几帧音频放在一起,这是一个最大值;
4字节:音频scale,默认为1152
4字节:音频rate,默认为44100
4字节:音频是否立体声,0表示单声,1表示立体声;
视频帧总数×4个字节:每帧视频的索引,每个索引4个字节,最低一个bit位表示是否关键帧,其余的31位bit表示帧的大小(注意,这里的帧大小和1.0格式的帧大小不一样,看下面的解释)
视频音频混和数据:这里,jonny做了一个比较有意思的设计,把1个视频帧和其相应的音频帧混合起来,当做一个数据帧;那究竟怎么个混合法呢,我们分析一下:
首先计算每个视频帧的时间戳和每个音频帧的时间戳,videotime = videonum / videofps , audiotime = audionum / audiofps (videonum和audionum都从0开始)
那么第一个视频帧的时间戳就是0/videofps =0,而第二个视频帧的时间戳就是1/videofps ,然后,把第一个视频帧和所有时间戳小于1/videofps的音频帧接在一起,成了一个数据帧,如此类推下去;
然后在每个数据帧的前面再加上n个字节, n=1+4+4+4+4×每音轨被混合的帧数×音轨数,
其中这n个字节的意义如下:
1字节:本数据帧中,每音轨被混合的帧数;
4字节:被混合的第一个音频帧和视频帧之间的时间差;
4字节:被混合的最后一个音频帧和视频帧之间的时间差;
4字节:视频帧的大小;
4×每音轨被混合的帧数×音轨数:每个被混合的音频帧的大小



【PMP的播放】
从上面的分析,我们知道,PMP有两种格式(1.0,2.0),又由于2.0格式中封装的流不一样,出现了所谓pmp2.0和pmp-avc的不同;
所有,我们需要不同的播放器(pmp-mod1, pmp-mod2, pmp-avc)来播放这些文件;

由于pmp1.0和pmp2.0格式文件的差异太大,在小p上如果要实现同时支持这两种的话,代码编写会比较复杂,效率可能也会因此降低
同时由于pmp1.0格式的不足,我建议大家放弃pmp1.0格式,原有的pmp1.0格式的片子可以通过remux转成2.0格式;
至于pmp-mp4v和pmp-avc文件,我个人认为,他们是可以放在一个程序中支持的,因为他们的封装是一样的,只是里面的流不一样而已;
只需要通过对不同解码器的解码即可。

【后话】
写这篇东西的目的就是希望能让大家了解到pmp的各种格式的区别.
我希望自己有时间和能力来给大家做一个pmp-mod,支持pmp2.0(包括pmp-mp4v,pmp-avc),但实际上,我现在的工作比较繁忙,没有太多精力来编写这个。
所以,写这个的另一个目的是分享我的研究,希望能有技术高手能通过这篇东西,写出一个新的pmp-mod,支持pmp2.0格式的播放(包括pmp-mp4v和pmp-avc)。





上一篇:PSP游戏 [索尼克·竞争者2][Sonic_Rivals_2][RAC][192MB][USA]  
下一篇:死神FANS的最爱![死神:灵魂升温5] 发售确定

其他电影:
·PSP软件下载 PSP 视频播放软件 PMP Mod AVC v1.02M-I subtitle(对
·psp教程 PSP GPS导航软件MAPTHIS详细使用方法
·psp教程 菜鸟问题:PSP如何连接电脑
·psp教程 Psp1.5版上网教程
·psp教程 怎么看UMD Video?《只属于我的果实》实例讲解




精彩壁纸/主题
《潜龙谍影4》PSP壁纸
《潜龙谍影4》PSP壁纸
PSP音乐游戏《DJMAX 酷懒之味》精美壁纸
PSP音乐游戏《DJMAX 酷懒之味》精
《马里奥兄弟》PSP主题下载
《马里奥兄弟》PSP主题下载
经典的PSP美女壁纸收藏版
经典的PSP美女壁纸收藏版
《真三国无双5》PSP主题下载
《真三国无双5》PSP主题下载
《战国BASARA 战斗英雄》官方PSP壁纸发布
《战国BASARA 战斗英雄》官方PSP壁

推荐游戏/电影
【PSP之家】口袋泡泡龙 [迅雷下載]
【PSP之家】口袋泡泡龙 [迅雷下載]
PSP《啪嗒砰 2 咚锵♪》日版试玩版下载
PSP《啪嗒砰 2 咚锵♪》日版
FC游戏《街头格斗小子》中文版下载
FC游戏《街头格斗小子》中文版下载
GBA游戏《多卡邦怪物猎人》中文版下载
GBA游戏《多卡邦怪物猎人》中文版
PSP游戏 [短程拖车赛-冠军倒计时赛2007][RAC][361MB][ISO][USA]
PSP游戏 [短程拖车赛-冠军倒计时赛
【psp游戏】[爆脑].[Smart.Bomb]【迅雷下载】
【psp游戏】[爆脑].[Smart.Bomb]【
PSP最新资讯
·人气动漫《竹刀少女》游戏版明年春登陆PSP
·有点邪恶!PSP《假面女仆卫士》人设、画面公
·成功偷跑!PSP《游戏王 卡片力量3》详细介绍
·Dark-Alex辟谣泄漏隐私事件 下代系统更完美
·TA-088 V3主板已被破解!神电V8即将到来?!
·PSP《空之轨迹》将发售3合一套装收藏版
·PSP《战国BASARA:战斗英雄》6武将故事模式公
·神电对决蓝电!PSP3000破解进入白热化竞争时
·PSP等产品被告侵权!索尼巨额赔偿
·《啪嗒砰2》搭配珍珠白PSP3000套装官网公布
最新行情/周边
·PSP2000价格疯涨!新一周PSP主机及周边报价!
·冠犀PSP2000炫彩个性皮肤实机试用评测!
·PSP3000破解初现曙光!Datel神奇电池惊世现身
·近期PSP主机及周边报价!2000价格高居不下
·近期购机提示:警惕廉价翻新、硬降PSP主机!
·PSP3000破解广告惊现卖场!请玩家谨防骗局!
·最新一周PSP主机及周边配件报价
·2000还是PSP3000?购买新P的玩家须知!
·港版PSP3000将于2008年10月14日发售
·索尼10月推出新型高速记忆棒:PRO-HG Duo HX
PSP游戏推荐
·psp游戏 大航海时代4 PSP简体汉化版V1.00凯旋
·psp游戏大作《英雄传说6 空之轨迹3RD》日版下
·【PSP游戏】篱笆墙外[迅雷下載]【165MB】
·PSP《幻想传说》中文汉化完美版下载
·【psp游戏】 英雄传说 5 海之槛歌 【迅雷下载
·【PSP】LocoRoco樂克樂克中文版[迅雷下載]【3
·【psp游戏】 异形症候群 美版 【迅雷下载】
·PSP游戏水银 ISO迅雷下载 美版
·PSP [寂静岭-起源] 中文汉化版下载
·[PSP游戏][黄金罗盘][A·AVG][773MB][USA]
PSP中文游戏大全
·PSP《宿命传说2》中文汉化版下载
·PSP麻将游戏《上海》简体中文汉化版下载
·PSP麻将游戏《萌麻将 萌将》中文汉化版下载
·PSP《死神Bleach:魂之狂欢》繁体中文版下载
·PSP《实况足球2009》简体中文汉化版下载
·PSP《星之海洋:初次启航》简体中文100%汉化
·PSP《三国志7》简体中文汉化v1.0版下载
·PSP《魔唤精灵 携带版》简体中文汉化版下载
·PSP《最终幻想2》完美简体中文汉化版下载
·PSP十八x游戏《女仆咖啡帕露菲》中文版下载
模拟游戏下载
·GBC游戏《瓜瓜火龙》中文版下载
·FC游戏《勇者斗恶龙2》中文版下载
·GBA游戏《传说世界-换装迷宫3》中文版下载
·FC游戏《汤姆和杰瑞》中文版下载
·SFC游戏《三国志3》中文版下载
·GBA游戏《友情足球4V4》中文版下载
·FC游戏《坦克大战》中文版下载
·GBA游戏《上海》中文版下载
·FC游戏《Q版沙罗曼蛇》中文版下载
·FC游戏《魂斗罗X》中文版下载


本站提供的资源取材于互联网,仅供学习和试用,请务必于下载后24小时内删除,不得用于商业用途,违者自负法律责任。
Copyright @ 2006-2008 来看PSP中文网 - 京ICP备07011524号