m3u8格式说明

阅读更多

一、概念
1. Playlist file
    一个M3U的 Playlist 就是一个由多个独立行组成的文本文件,每行由回车/换行区分。每一行可以是一个URI  空白行或
是以”#“号开头的字符串,并且空格只能存在于一行中不同元素间的分隔。
   一个URI 表示一个媒体段或是”variant Playlist file“(最多支持一层嵌套,即一个mm3u8文件中嵌套另一个m3u8),
以”#EXT“开头的表示一个”tag“,否则表示注释,直接忽略
2. Tags
    #EXTM3U:  每个M3U文件第一行必须是这个tag。
    #EXTINF:指定每个媒体段(ts)的持续时间,这个仅对其后面的URI有效,每两个媒体段URI间被这个tag分隔开,其格式如下:
                     #EXTINF:,  :<br>  duration表示持续的时间(秒)”Durations MUST be integers if the protocol version of the Playlist file is less</p> <p style="margin-right: auto; margin-bottom: 15px; margin-left: auto; border: 0px; text-indent: 24px; color: #222222; font-family: 'Microsoft YaHei', SimSun, Helvetica, Tahoma, Arial, sans-serif; line-height: 24px;">than 3“,否则可以是浮点数。<br>    #EXT-X-BYTERANGE:表示媒体段是一个媒体URI资源中的一段,只对其后的media URI有效,格式如下:<br>                     #EXT-X-BYTERANGE:<n>[@o]:<br>  其中n表示这个区间的大小,o表在URI中的offset;”The EXT-X-BYTERANGE tag appeared in version 4 of the protocol“。<br>    #EXT-X-TARGETDURATION:指定最大的媒体段时间长(秒)。所以#EXTINF中指定的时间长度必须小于或是等于这个最大<br>值。这个tag在整个PlayList文件中只能出现一 次(在嵌套的情况下,一般有真正ts url的m3u8才会出现该tag)。格式如下:<br>                     #EXT-X-TARGETDURATION:<s>:s表示最大的秒数。</p> <p style="margin-right: auto; margin-bottom: 15px; margin-left: auto; border: 0px; text-indent: 24px; color: #222222; font-family: 'Microsoft YaHei', SimSun, Helvetica, Tahoma, Arial, sans-serif; line-height: 24px;">    #EXT-X-MEDIA-SEQUENCE:每一个media URI 在 PlayList中只有唯一的序号,相邻之间序号+1。<br>                     #EXT-X-MEDIA-SEQUENCE:<number>:<br>                    一个media URI并不是必须要包含的,如果没有,默认为0。<br>    #EXT-X-KEY:表示怎么对media segments进行解码。其作用范围是下次该tag出现前的所有media URI,格式如下:<br>                     #EXT-X-KEY:<attribute-list>:<br>                    NONE 或者 AES-128。如果是NONE,则URI以及IV属性必须不存在,如果是AES-128(Advanced Encryption</p> <p style="margin-right: auto; margin-bottom: 15px; margin-left: auto; border: 0px; text-indent: 24px; color: #222222; font-family: 'Microsoft YaHei', SimSun, Helvetica, Tahoma, Arial, sans-serif; line-height: 24px;">                    Standard),则URI必须存在,IV可以不存在。<br>                    对于AES-128的情况,keytag和URI属性共同表示了一个key文件,通过URI可以获得这个key,如果没有<br>                    IV(Initialization Vector),则使用序列号作为IV进行编解码,将序列号的高位赋到16个字节的buffer中,左边补0;如果<br>                    有IV,则将改值当成16个字节的16进制数。</p> <p style="margin-right: auto; margin-bottom: 15px; margin-left: auto; border: 0px; text-indent: 24px; color: #222222; font-family: 'Microsoft YaHei', SimSun, Helvetica, Tahoma, Arial, sans-serif; line-height: 24px;">    #EXT-X-PROGRAM-DATE-TIME:将一个绝对时间或是日期和一个媒体段中的第一个sample相关联,只对下一个meida URI有效,格式如下:<br>                     #EXT-X-PROGRAM-DATE-TIME:<YYYY-MM-DDThh:mm:ssZ><br>                     For example:<br>                     #EXT-X-PROGRAM-DATE-TIME:2010-02-19T14:54:23.031+08:00<br>   #EXT-X-ALLOW-CACHE:是否允许做cache,这个可以在PlayList文件中任意地方出现,并且最多出现一次,作用效果是所有的媒体段。格式如下:<br>                     #EXT-X-ALLOW-CACHE:<YES|NO><br>   #EXT-X-PLAYLIST-TYPE: 提供关于PlayList的可变性的信息, 这个对整个PlayList文件有效,是可选的,格式如下:<br>                     #EXT-X-PLAYLIST-TYPE:<EVENT|VOD> :如果是VOD,则服务器不能改变PlayList 文件;如果是EVENT,则<br>服务器不能改变或是删除PlayList文件中的任何部分,但是可以向该文件中增加新的一行内容。<br>   #EXT-X-ENDLIST:表示PlayList的末尾了,它可以在PlayList中任意位置出现,但是只能出现一个,格式如下:<br>                     #EXT-X-ENDLIST<br>   #EXT-X-MEDIA:被用来在PlayList中表示相同内容的不用语种/译文的版本,比如可以通过使用3个这种tag表示3中不用语音的音<br>频,或者用2个这个tag表示不同角度的video在PlayLists中。这个标签是独立存在的,其格式如下:<br>                    #EXT-X-MEDIA:<attribute-list>:该属性列表中包含:URI、TYPE、GROUP-ID、LANGUAGE、NAME、DEFAULT、AUTOSELECT。<br>                    URI:如果没有,则表示这个tag描述的可选择版本在主PlayList的EXT-X-STREAM-INF中存在;<br>                    TYPE:AUDIO and VIDEO;<br>                    GROUP-ID:具有相同ID的MEDIAtag,组成一组样式;<br>                    LANGUAGE:identifies the primary language used in the rendition。<br>                    NAME:The value is a quoted-string containing a human-readable description of the rendition. If the LANGUAGE attribute is present then this description SHOULD be in that language。<br>                    DEFAULT: YES或是NO,默认是No,如果是YES,则客户端会以这种选项来播放,除非用户自己进行选择。<br>                    AUTOSELECT:YES或是NO,默认是No,如果是YES,则客户端会根据当前播放环境来进行选择(用户没有根据自己偏好进行选择的前提下)。<br>        The EXT-X-MEDIA tag appeared in version 4 of the protocol。<br>o All EXT-X-MEDIA tags in the same group MUST have the same TYPE<br>attribute.<br>o All EXT-X-MEDIA tags in the same group MUST have different NAME<br>attributes.<br>o A group MUST NOT have more than one member with a DEFAULT<br>attribute of YES.<br>o All members of a group whose AUTOSELECT attribute has a value of<br>YES MUST have LANGUAGE [RFC5646] attributes with unique values.<br>o All members of a group with TYPE=AUDIO MUST use the same audio<br>sample format.<br>o All members of a group with TYPE=VIDEO MUST use the same video<br>sample format。</p> <p style="margin-right: auto; margin-bottom: 15px; margin-left: auto; border: 0px; text-indent: 24px; color: #222222; font-family: 'Microsoft YaHei', SimSun, Helvetica, Tahoma, Arial, sans-serif; line-height: 24px;">  #EXT-X-STREAM-INF:指定一个包含多媒体信息的 media URI 作为PlayList,一般做M3U8的嵌套使用,它只对紧跟后面的URI有<br>效,格式如下:<br>#EXT-X-STREAM-INF:<attribute-list><br><URI><br>有以下属性:<br>BANDWIDTH:带宽,必须有。<br>PROGRAM-ID:该值是一个十进制整数,惟一地标识一个在PlayList文件范围内的特定的描述。一个PlayList 文件中可<br>能包含多个有相同ID的此tag。<br>CODECS:不是必须的。<br>RESOLUTION:分辨率。<br>AUDIO:这个值必须和AUDIO类别的“EXT-X-MEDIA”标签中“GROUP-ID”属性值相匹配。<br>VIDEO:同上</p> <p style="margin-right: auto; margin-bottom: 15px; margin-left: auto; border: 0px; text-indent: 24px; color: #222222; font-family: 'Microsoft YaHei', SimSun, Helvetica, Tahoma, Arial, sans-serif; line-height: 24px;">m3u8的组成格式有多种,下面给出一个实例,http://ipadlive.cntv.soooner.com/cctv_p2p_hdcctv2.m3u8这个是CCTV-2财经的一个源,内容如下<br>#EXTM3U<br>#EXT-X-ALLOW-CACHE:NO<br>#EXT-X-TARGETDURATION:10<br>#EXT-X-MEDIA-SEQUENCE:8453235<br>#EXTINF:19,<br>http://124.232.164.44:80/ipad/160_15601_4572/20130804075250.ts?userid=VSNDNP-183061027101_160_15601_4572<br>#EXTINF:2,<br>http://124.232.164.44:80/ipad/160_15601_4572/20130804075300.ts?userid=VSNDNP-183061027101_160_15601_4572<br>#EXTINF:10,<br>http://124.232.164.44:80/ipad/160_15601_4572/20130804075310.ts?userid=VSNDNP-183061027101_160_15601_4572</p> <p style="margin-right: auto; margin-bottom: 15px; margin-left: auto; border: 0px; text-indent: 24px; color: #222222; font-family: 'Microsoft YaHei', SimSun, Helvetica, Tahoma, Arial, sans-serif; line-height: 24px;">如果是这种的话,就很方便其中http一行就是完整的一个链接,否则还要进行拼接。</p> </div> </div> </div> </div> </div> <!--PC和WAP自适应版--> <div id="SOHUCS" sid="1177175804900077568"></div> <script type="text/javascript" src="/views/front/js/chanyan.js"></script> <!-- 文章页-底部 动态广告位 --> <div class="youdao-fixed-ad" id="detail_ad_bottom"></div> </div> <div class="col-md-3"> <div class="row" id="ad"> <!-- 文章页-右侧1 动态广告位 --> <div id="right-1" class="col-lg-12 col-md-12 col-sm-4 col-xs-4 ad"> <div class="youdao-fixed-ad" id="detail_ad_1"> </div> </div> <!-- 文章页-右侧2 动态广告位 --> <div id="right-2" class="col-lg-12 col-md-12 col-sm-4 col-xs-4 ad"> <div class="youdao-fixed-ad" id="detail_ad_2"></div> </div> <!-- 文章页-右侧3 动态广告位 --> <div id="right-3" class="col-lg-12 col-md-12 col-sm-4 col-xs-4 ad"> <div class="youdao-fixed-ad" id="detail_ad_3"></div> </div> </div> </div> </div> </div> </div> <div class="container"> <h4 class="pt20 mb15 mt0 border-top">你可能感兴趣的:(HLS)</h4> <div id="paradigm-article-related"> <div class="recommend-post mb30"> <ul class="widget-links"> <li><a href="/article/1943791671925862400.htm" title="ceph报错整理" target="_blank">ceph报错整理</a> <span class="text-muted">时空无限</span> <a class="tag" taget="_blank" href="/search/Kubernetes/1.htm">Kubernetes</a><a class="tag" taget="_blank" href="/search/ceph/1.htm">ceph</a><a class="tag" taget="_blank" href="/search/linux/1.htm">linux</a><a class="tag" taget="_blank" href="/search/%E8%BF%90%E7%BB%B4/1.htm">运维</a><a class="tag" taget="_blank" href="/search/kubernetes/1.htm">kubernetes</a> <div>xxdaemonshaverecentlycrashedceph-scluster:id:d82dfc33-6a35-4fa4-b5f0-c32979b714cdhealth:HEALTH_WARN74daemonshaverecentlycrashedcephcrashlsIDENTITYNEW2024-07-26T06:17:34.480675Z_bd4c30b7-2347-4307-a9e6</div> </li> <li><a href="/article/1943386895954276352.htm" title="访问 chls.pro/ssl 进不去?别慌!Charles 救星在此!" target="_blank">访问 chls.pro/ssl 进不去?别慌!Charles 救星在此!</a> <span class="text-muted">测试界的段子手</span> <a class="tag" taget="_blank" href="/search/ssl/1.htm">ssl</a><a class="tag" taget="_blank" href="/search/%E7%BD%91%E7%BB%9C%E5%8D%8F%E8%AE%AE/1.htm">网络协议</a><a class="tag" taget="_blank" href="/search/%E7%BD%91%E7%BB%9C/1.htm">网络</a> <div>各位小伙伴们,有没有遇到过这样的尴尬情况:兴致勃勃地想用Charles抓包,结果发现访问chls.pro/ssl怎么都进不去?就像想吃火锅却发现煤气罐没气一样,瞬间感觉人生都灰暗了!别担心!作为一名资深(被迫)踩坑选手,我来拯救你们于水火之中!问题描述:当你信心满满地打开浏览器,输入chls.pro/ssl,期待着Charles证书的下载页面出现时,却发现页面一片空白,或者直接提示连接超时。内心O</div> </li> <li><a href="/article/1942525918568312832.htm" title="深入探索视频格式标准及其应用" target="_blank">深入探索视频格式标准及其应用</a> <span class="text-muted">D哥有个初二君</span> <div>本文还有配套的精品资源,点击获取简介:视频格式标准对于数字媒体的编码、存储、传输和播放至关重要,它涵盖了容器格式、视频编码、音频编码等多个方面。本简介详细介绍了容器格式如MP4、AVI、MKV和TS;常见的视频编码标准包括H.264/AVC、H.265/HEVC、VP9和AV1;音频编码标准有AAC、FLAC和Opus;格式转换和流媒体协议如RTMP、HLS和DASH的重要性;以及分辨率和帧率对视</div> </li> <li><a href="/article/1942039369175068672.htm" title="Unreal Engine开发:高级渲染技术_4.高级着色器编程" target="_blank">Unreal Engine开发:高级渲染技术_4.高级着色器编程</a> <span class="text-muted">chenlz2007</span> <a class="tag" taget="_blank" href="/search/%E6%B8%B8%E6%88%8F%E5%BC%80%E5%8F%91/1.htm">游戏开发</a><a class="tag" taget="_blank" href="/search/%E8%99%9A%E5%B9%BB/1.htm">虚幻</a><a class="tag" taget="_blank" href="/search/%E7%9D%80%E8%89%B2%E5%99%A8/1.htm">着色器</a><a class="tag" taget="_blank" href="/search/%E6%B8%B8%E6%88%8F%E5%BC%95%E6%93%8E/1.htm">游戏引擎</a><a class="tag" taget="_blank" href="/search/%E6%95%B0%E6%8D%AE%E5%BA%93/1.htm">数据库</a><a class="tag" taget="_blank" href="/search/%E7%BD%91%E7%BB%9C/1.htm">网络</a><a class="tag" taget="_blank" href="/search/rpc/1.htm">rpc</a> <div>4.高级着色器编程在上一节中,我们探讨了UnrealEngine中的基础渲染技术,包括光照、阴影和材质系统。本节将深入探讨高级着色器编程,帮助您掌握更复杂的渲染效果和优化技术。UnrealEngine的着色器系统是基于HLSL(High-LevelShadingLanguage)和USF(UnrealShaderFormat)的,这两种语言允许开发者编写高效的着色器代码,以实现各种视觉效果。4.1</div> </li> <li><a href="/article/1941360662605262848.htm" title="一个 可以在线播放 m3u8 的网页(非常实用)" target="_blank">一个 可以在线播放 m3u8 的网页(非常实用)</a> <span class="text-muted">西门吹雪1998</span> <a class="tag" taget="_blank" href="/search/%E8%85%BE%E8%AE%AF%E4%BA%91/1.htm">腾讯云</a><a class="tag" taget="_blank" href="/search/%E5%89%8D%E7%AB%AF/1.htm">前端</a> <div>之前在做安卓直播流hls播放的功能,有时候失败了,不知道啥问题,就一直想着找一个可以在线播放的地方测试一下,找了好久终于找到一个,记录一下,以防下次需要用到。地址:https://m3u8player.org</div> </li> <li><a href="/article/1940783806604701696.htm" title="主流视频流格式及 Vue3 实现方案" target="_blank">主流视频流格式及 Vue3 实现方案</a> <span class="text-muted">玛卡巴卡半夜不睡觉</span> <a class="tag" taget="_blank" href="/search/html5/1.htm">html5</a><a class="tag" taget="_blank" href="/search/%E5%89%8D%E7%AB%AF/1.htm">前端</a><a class="tag" taget="_blank" href="/search/vue.js/1.htm">vue.js</a> <div>1.HLS(HTTPLiveStreaming)技术原理:基于HTTP的流媒体协议,使用.m3u8索引文件+.ts分片文件。特点:高兼容性(尤其iOS)、10+秒延迟、支持自适应码率。Vue3实现(video.js):npminstallvideo.jsvideojs-contrib-hlsimport{ref,onMounted,onUnmounted}from'vue';importvideo</div> </li> <li><a href="/article/1940588621748826112.htm" title="vscode配置vim" target="_blank">vscode配置vim</a> <span class="text-muted">silenci</span> <a class="tag" taget="_blank" href="/search/vscode/1.htm">vscode</a><a class="tag" taget="_blank" href="/search/vim/1.htm">vim</a><a class="tag" taget="_blank" href="/search/excel/1.htm">excel</a> <div>{"editor.fontSize":16,"editor.fontWeight":"normal","editor.fontFamily":"'FiraCode'","C_Cpp.enhancedColorization":"enabled","vim.normalModeKeyBindings":[{"before":["g","d"],"after":["*"]}],"vim.hlsearc</div> </li> <li><a href="/article/1940329364134621184.htm" title="Vue3 - 详解播放m3u8视频流+HLS拉流推流完整方案,vue3如何播放m3u8格式文件实时视频播放教程(流媒体播放、直播视频流、实时摄像头监控视频流对接、后端服务器切片分片传输视频流边下边播)" target="_blank">Vue3 - 详解播放m3u8视频流+HLS拉流推流完整方案,vue3如何播放m3u8格式文件实时视频播放教程(流媒体播放、直播视频流、实时摄像头监控视频流对接、后端服务器切片分片传输视频流边下边播)</a> <span class="text-muted">王二红</span> <a class="tag" taget="_blank" href="/search/%2B/1.htm">+</a><a class="tag" taget="_blank" href="/search/Vue3/1.htm">Vue3</a><a class="tag" taget="_blank" href="/search/%E5%BC%80%E5%8F%91%E9%97%AE%E9%A2%98%E6%B1%87%E6%80%BB/1.htm">开发问题汇总</a><a class="tag" taget="_blank" href="/search/vue3/1.htm">vue3</a><a class="tag" taget="_blank" href="/search/m3u8/1.htm">m3u8</a><a class="tag" taget="_blank" href="/search/hls/1.htm">hls</a><a class="tag" taget="_blank" href="/search/vue3%E6%92%AD%E6%94%BEm3u8%E8%A7%86%E9%A2%91%E6%B5%81%E6%95%99%E7%A8%8B/1.htm">vue3播放m3u8视频流教程</a><a class="tag" taget="_blank" href="/search/vue%E6%92%AD%E6%94%BEm3u8%E6%96%87%E4%BB%B6/1.htm">vue播放m3u8文件</a><a class="tag" taget="_blank" href="/search/vue3%E7%9B%B4%E6%92%AD%E8%A7%86%E9%A2%91%E6%B5%81%E6%92%AD%E6%94%BE/1.htm">vue3直播视频流播放</a><a class="tag" taget="_blank" href="/search/%E6%91%84%E5%83%8F%E5%A4%B4%E5%AE%9E%E6%97%B6%E7%9B%91%E6%8E%A7%E7%94%BB%E9%9D%A2%E8%A7%86%E9%A2%91%E6%B5%81/1.htm">摄像头实时监控画面视频流</a> <div>前言如果您需要Vue2版本,请访问这篇文章。在vue3(PC端+移动端H5)项目开发中,实现m3u8+hls视频流播放、实时流媒体播放高性能无延迟方案及源码,vue3播放3mu8文件/直播视频流,实时流媒体播放需求、做直播实时传输播放、摄像头监控画面视频流、服务器后端视频切片分段返给前端+边下边播等需求,解决前端网页播放视频流卡顿加载慢、无法载入黑屏、播放不流畅、CORS跨域、安卓苹果浏览器兼容等</div> </li> <li><a href="/article/1938150864258658304.htm" title="Vitis HLS 学习笔记--hls::stream(理解串流:基础)" target="_blank">Vitis HLS 学习笔记--hls::stream(理解串流:基础)</a> <span class="text-muted">hi94</span> <a class="tag" taget="_blank" href="/search/Vitis/1.htm">Vitis</a><a class="tag" taget="_blank" href="/search/HLS/1.htm">HLS</a><a class="tag" taget="_blank" href="/search/%E5%AD%A6%E4%B9%A0/1.htm">学习</a><a class="tag" taget="_blank" href="/search/%E7%AC%94%E8%AE%B0/1.htm">笔记</a><a class="tag" taget="_blank" href="/search/c%2B%2B/1.htm">c++</a><a class="tag" taget="_blank" href="/search/fpga%E5%BC%80%E5%8F%91/1.htm">fpga开发</a><a class="tag" taget="_blank" href="/search/HLS/1.htm">HLS</a> <div>目录1.介绍2.示例2.1代码解析2.2定义串流2.3串流的综合报告3.总结1.介绍在VitisHLS中,hls::stream是一个用于在C/C++中进行高级合成的关键数据结构。它类似于C++标准库中的std::stream,但是专门设计用于硬件描述语言(如Verilog或VHDL)中的数据流。hls::stream提供了一种方便的方法来处理数据流,使得在设计硬件加速器时更加灵活和可控。hls:</div> </li> <li><a href="/article/1937095774760398848.htm" title="Vue3+TS 视频播放器组件封装(Video.js + Hls.js 最佳组合,从零基础到精通,收藏这篇就够了!" target="_blank">Vue3+TS 视频播放器组件封装(Video.js + Hls.js 最佳组合,从零基础到精通,收藏这篇就够了!</a> <span class="text-muted"></span> <div>.hljs-comment,.hljs-quote{color:#b6b18b}.hljs-deletion,.hljs-name,.hljs-regexp,.hljs-selector-class,.hljs-selector-id,.hljs-tag,.hljs-template-variable,.hljs-variable{color:#eb3c54}.hljs-built_in,.hlj</div> </li> <li><a href="/article/1936979672634028032.htm" title="SRS(Simple Realtime Server) 开源直播/双录服务器" target="_blank">SRS(Simple Realtime Server) 开源直播/双录服务器</a> <span class="text-muted">@井九</span> <a class="tag" taget="_blank" href="/search/%E5%BC%80%E6%BA%90/1.htm">开源</a><a class="tag" taget="_blank" href="/search/%E6%9C%8D%E5%8A%A1%E5%99%A8/1.htm">服务器</a><a class="tag" taget="_blank" href="/search/%E8%BF%90%E7%BB%B4/1.htm">运维</a> <div>一、SRS是什么?SRS(SimpleRealtimeServer)是一个纯C++编写的高性能开源流媒体服务器,目标是打造简单、高效、易用、支持多协议的直播服务系统。自2013年开源以来,已成为国内外广泛使用的RTMP/WebRTC服务端方案之一。核心特性:支持主流直播协议:RTMP、HTTP-FLV、HLS、WebRTC、SRT、GB28181⚡支持亚秒级延迟:特别是WebRTC和HTTP-FL</div> </li> <li><a href="/article/1936479600364285952.htm" title="【以及好久没上号的闲聊】Unity记录8.1-地图-重构与优化" target="_blank">【以及好久没上号的闲聊】Unity记录8.1-地图-重构与优化</a> <span class="text-muted">MWHLS</span> <a class="tag" taget="_blank" href="/search/Unity/1.htm">Unity</a><a class="tag" taget="_blank" href="/search/unity/1.htm">unity</a><a class="tag" taget="_blank" href="/search/%E5%BC%80%E6%BA%90/1.htm">开源</a> <div>最近几年越来越懒,要是能分身多好哇,大家教教我懒得更CSDN了,所以不是很常上号,而CSDN的两周前私信显示的灰灰的也就是虽然我每次上号都有看私信,但是搞笑的是前面四个明显的消息全是CSDN的广告,我压根没看到两周前未读的私信很抱歉各位私信的好同志们这么久没回所以我特意找出了我这个游戏的开源起始篇,这篇我甚至在我自己博客上都还没发出来我的博客:mwhls.top虽然这个游戏可能还得再做好几年吧,反</div> </li> <li><a href="/article/1935867434355453952.htm" title="FPGA基础 -- Verilog函数" target="_blank">FPGA基础 -- Verilog函数</a> <span class="text-muted">sz66cm</span> <a class="tag" taget="_blank" href="/search/FPGA%E5%9F%BA%E7%A1%80/1.htm">FPGA基础</a><a class="tag" taget="_blank" href="/search/fpga%E5%BC%80%E5%8F%91/1.htm">fpga开发</a> <div>Verilog函数(function)目标:让具备一般RTL经验的工程师,系统掌握Verilog函数的语法、约束、可综合写法以及在实际项目中的高效用法,为后续SystemVerilog及HLS设计奠定基础。1为什么要用函数?设计痛点函数带来的价值重复逻辑:CRC、Parity、优先编码等往往在多个模块出现将共用运算封装为函数,避免复制粘贴,减少Bug概率可读性差:长表达式嵌套写在连线或always</div> </li> <li><a href="/article/1935839319306596352.htm" title="流媒体之LL-HLS 低延时HLS协议" target="_blank">流媒体之LL-HLS 低延时HLS协议</a> <span class="text-muted">艾浅觅</span> <a class="tag" taget="_blank" href="/search/%E6%B5%81%E5%AA%92%E4%BD%93%E5%8D%8F%E8%AE%AE%E5%BC%80%E5%8F%91%E7%9F%A5%E8%AF%86/1.htm">流媒体协议开发知识</a><a class="tag" taget="_blank" href="/search/%E7%BD%91%E7%BB%9C/1.htm">网络</a> <div>文章目录1背景2LL-HLS协议2.1部分分段(PartialSegments)2.2播放列表增量更新(PlaylistDeltaUpdates)2.3阻止播放列表重新加载(BlockingofPlaylistReloads)2.4预加载提示(PreloadHints)2.5完整示例3总结LL-HLS是一个低延时HLS协议,它与HLS协议相比,在传输时,将视频数据分成多个小片,每个小片大小为1MB</div> </li> <li><a href="/article/1935577448234151936.htm" title="MMDet实例分割loss_rpn_bbox为nan但其它loss正常的解决" target="_blank">MMDet实例分割loss_rpn_bbox为nan但其它loss正常的解决</a> <span class="text-muted">MWHLS</span> <a class="tag" taget="_blank" href="/search/python/1.htm">python</a><a class="tag" taget="_blank" href="/search/python/1.htm">python</a><a class="tag" taget="_blank" href="/search/pytorch/1.htm">pytorch</a><a class="tag" taget="_blank" href="/search/%E6%B7%B1%E5%BA%A6%E5%AD%A6%E4%B9%A0/1.htm">深度学习</a><a class="tag" taget="_blank" href="/search/%E4%BA%BA%E5%B7%A5%E6%99%BA%E8%83%BD/1.htm">人工智能</a> <div>文章首发见博客:https://mwhls.top/4901.html。无图/格式错误/后续更新请见首发页。更多更新请到mwhls.top查看欢迎留言提问或批评建议,私信不回。昨天还以为这个月无活可整,没想到第二天就来事了,下个月还好久,留到下月发也不大好(º﹃º)。问题描述使用MMDetection训练实例分割,训练可执行,测试可执行,但loss_rpn_bbox为nan,loss_bbox却有</div> </li> <li><a href="/article/1935279809064136704.htm" title="ffmpeg ,结合 SSRF任意文件读取漏洞" target="_blank">ffmpeg ,结合 SSRF任意文件读取漏洞</a> <span class="text-muted">德古拉的杂货铺</span> <a class="tag" taget="_blank" href="/search/%E6%B8%97%E9%80%8F%E6%B5%8B%E8%AF%95%E7%AF%87/1.htm">渗透测试篇</a><a class="tag" taget="_blank" href="/search/ffmpeg/1.htm">ffmpeg</a><a class="tag" taget="_blank" href="/search/%E5%AE%89%E5%85%A8%E6%BC%8F%E6%B4%9E/1.htm">安全漏洞</a><a class="tag" taget="_blank" href="/search/%E8%A7%86%E9%A2%91%E5%A4%84%E7%90%86/1.htm">视频处理</a> <div>ffmpeg,结合SSRF任意文件读取漏洞前言一、ffmpeg是什么?FFmpeg背景知识简介HLS(HTTPLiveStreaming)二、使用步骤CentOS7下的安装三、ffmpeg任意文件读取漏洞复现环境搭建漏洞利用修复建议前言初衷:最近空闲,想通过vulhub靶场进行学习,猛的看到ffmpeg,很熟悉。在2018年开发的堡垒机时,曾经用过它进行视频文件的处理。于是决定从它开始练习写博客。</div> </li> <li><a href="/article/1934287801411497984.htm" title="MATLAB基础应用精讲-【数模应用】RGB三色合成与分离(附MATLAB代码实现)" target="_blank">MATLAB基础应用精讲-【数模应用】RGB三色合成与分离(附MATLAB代码实现)</a> <span class="text-muted">林聪木</span> <a class="tag" taget="_blank" href="/search/opencv/1.htm">opencv</a><a class="tag" taget="_blank" href="/search/%E4%BA%BA%E5%B7%A5%E6%99%BA%E8%83%BD/1.htm">人工智能</a><a class="tag" taget="_blank" href="/search/%E8%AE%A1%E7%AE%97%E6%9C%BA%E8%A7%86%E8%A7%89/1.htm">计算机视觉</a> <div>目录知识储备RGB三色原理HLS(色相、亮度、饱和度)原理算法原理什么是RGB彩色合成RGB三色的合成与分离图片的色彩空间转换色彩空间转换通道分离、合并图像rgb通道分离通道的拆分与合并通过函数拆分通道合并图像处理——颜色算子实验配置准备实验代码代码实现MATLAB知识储备RGB三色原理在中学的物理课中我们可能做过棱镜的试验,白光通过棱镜后被分解成多种颜色逐渐过渡的色谱,颜色依次为红、橙、黄、绿、</div> </li> <li><a href="/article/1934125068019888128.htm" title="全面掌握SRS服务器在CentOS7上的安装与配置" target="_blank">全面掌握SRS服务器在CentOS7上的安装与配置</a> <span class="text-muted">seiji morisako</span> <div>本文还有配套的精品资源,点击获取简介:SRS(SimpleRealtimeServer)是一个高效实时视频流服务服务器,尤其在LinuxCentOS764位操作系统上运行良好。它的5.0版本支持包括RTMP、WebRTC、HLS、HTTP-FLV、SRT和MPEG-DASH在内的多种网络协议,满足不同直播场景的视频传输需求。此压缩包包含安装和配置SRS所需的所有文件和文档。用户可通过修改配置参数,</div> </li> <li><a href="/article/1932008178455736320.htm" title="Shader编写指南(六十): Shader运行时性能优化" target="_blank">Shader编写指南(六十): Shader运行时性能优化</a> <span class="text-muted">小李也疯狂</span> <a class="tag" taget="_blank" href="/search/%23/1.htm">#</a><a class="tag" taget="_blank" href="/search/%E7%90%86%E8%A7%A3%E7%9D%80%E8%89%B2%E5%99%A8%E3%80%90Shader%E3%80%91%E6%80%A7%E8%83%BD/1.htm">理解着色器【Shader】性能</a><a class="tag" taget="_blank" href="/search/%E6%80%A7%E8%83%BD%E4%BC%98%E5%8C%96/1.htm">性能优化</a><a class="tag" taget="_blank" href="/search/unity/1.htm">unity</a><a class="tag" taget="_blank" href="/search/shader/1.htm">shader</a> <div>不同平台的GPU性能差异显著(如高端PCGPU与低端移动GPU),为确保游戏在各类设备上流畅运行,需针对性优化着色器,减少计算量和纹理读取。以下是关键优化策略及实践建议:一、按需计算,避免冗余操作1.精简计算逻辑移除无效参数:若材质属性(如颜色)始终为固定值,直接在着色器中硬编码,避免动态计算。hlsl//反例:始终使用白色,仍从材质获取颜色fixed4color=_MainColor;//优化:</div> </li> <li><a href="/article/1930380844610940928.htm" title="婚恋小程序直播系统框架搭建" target="_blank">婚恋小程序直播系统框架搭建</a> <span class="text-muted">ALLSectorSorft</span> <a class="tag" taget="_blank" href="/search/%E5%B0%8F%E7%A8%8B%E5%BA%8F/1.htm">小程序</a> <div>逻辑分析直播流管理:需要处理主播端的直播流推送,确保直播流能够稳定、高效地传输到各个观看用户的设备上。这涉及到选择合适的流媒体协议,如RTMP(Real-TimeMessagingProtocol)、HLS(HTTPLiveStreaming)等。用户连接与互动:管理观众的连接,让他们能够顺利进入直播间观看直播。同时,提供互动功能,如聊天、点赞、送礼物等,增强用户之间以及用户与主播之间的互动性。直</div> </li> <li><a href="/article/1929162589405769728.htm" title="使用jessibuca+wvp+zlm实现html无插件播放摄像头实时画面" target="_blank">使用jessibuca+wvp+zlm实现html无插件播放摄像头实时画面</a> <span class="text-muted">nov4th</span> <a class="tag" taget="_blank" href="/search/webrtc/1.htm">webrtc</a><a class="tag" taget="_blank" href="/search/html/1.htm">html</a><a class="tag" taget="_blank" href="/search/%E5%89%8D%E7%AB%AF/1.htm">前端</a><a class="tag" taget="_blank" href="/search/%E5%AE%9E%E6%97%B6%E9%9F%B3%E8%A7%86%E9%A2%91/1.htm">实时音视频</a> <div>使用jessibuca+wvp+zlm实现html无插件播放摄像头实时画面环境一、flv、hls简易版二、进阶操作环境wvp+zlmjessibuca.jshtml5+jquerycrypto-js.min.js一、flv、hls简易版简易版播放停止销毁varshowOperateBtns=true;//是否显示按钮varjessibuca=null;//播放器对象//初始化播放器function</div> </li> <li><a href="/article/1928671529680302080.htm" title="nginx搭建直播推流服务&推流拉流鉴权" target="_blank">nginx搭建直播推流服务&推流拉流鉴权</a> <span class="text-muted">NaughtyBo</span> <a class="tag" taget="_blank" href="/search/%E8%A7%86%E9%A2%91%26amp%3B%E6%B5%81%E5%AA%92%E4%BD%93/1.htm">视频&流媒体</a><a class="tag" taget="_blank" href="/search/nginx/1.htm">nginx</a> <div>文章目录学习链接步骤使用nginx搭建直播推流服务安装依赖库下载nginx-http-flv-module模块下载nginx解压nginx,进入nginx目录设置nginx编译配置编译并安装配置nginxrtmp服务启动nginx准备另外一台电脑下载OBS下载OBSwindows|linux安装vlc观看直播flv协议hls协议使用ffmpeg命令行推流推流鉴权&拉流鉴权1、版本2、安装步骤3、n</div> </li> <li><a href="/article/1928481019355262976.htm" title="从零搭建云点播系统(一):开源组件选型、安全加密与成本优化" target="_blank">从零搭建云点播系统(一):开源组件选型、安全加密与成本优化</a> <span class="text-muted">Ai财富密码</span> <a class="tag" taget="_blank" href="/search/%E5%89%AF%E4%B8%9A%E9%A1%B9%E7%9B%AE/1.htm">副业项目</a><a class="tag" taget="_blank" href="/search/%E5%BC%80%E6%BA%90/1.htm">开源</a><a class="tag" taget="_blank" href="/search/%E5%AE%89%E5%85%A8/1.htm">安全</a> <div>笔者最近在开发几个项目,需要内网搭建在线视频系统,于是做了相关调研分析了领课在线教育、酷瓜云等,其中主要用的技术是云点播,云点播系统的实现依赖于多项关键技术:流媒体协议(如HLS、DASH)通过自适应码率技术保障流畅播放;分布式存储(如FastDFS)与智能转码(FFmpeg)实现海量资源的弹性管理与多端适配;P2P网络与CDN边缘计算突破带宽瓶颈,降低分发延迟;多级加密方案(AES、DRM)与数</div> </li> <li><a href="/article/1927546104782581760.htm" title="vue+ThreeJs 创建过渡圆圈效果" target="_blank">vue+ThreeJs 创建过渡圆圈效果</a> <span class="text-muted">资深前端之路</span> <a class="tag" taget="_blank" href="/search/threeJs/1.htm">threeJs</a><a class="tag" taget="_blank" href="/search/vue.js/1.htm">vue.js</a><a class="tag" taget="_blank" href="/search/javascript/1.htm">javascript</a><a class="tag" taget="_blank" href="/search/%E5%89%8D%E7%AB%AF/1.htm">前端</a> <div>嗨,我是小路。今天主要和大家分享的主题是“vue+ThreeJs创建过渡圆圈效果”。今天在做着色器过渡效果练习,发现出现了很多新的函数,这些都超出了js之外,需要更多的掌握和学习。以下是自己的复盘和梳理。1.获取距离定义:distance获取两个点之间的距离2.平滑过渡定义:smoothstep函数是用来平滑插值的函数。在HLSL或者其他着色语言中,smoothstep可能用于生成平滑的过渡效果,</div> </li> <li><a href="/article/1926962984719020032.htm" title="通过vivado HLS设计一个FIR低通滤波器" target="_blank">通过vivado HLS设计一个FIR低通滤波器</a> <span class="text-muted">fpga和matlab</span> <a class="tag" taget="_blank" href="/search/Vivado/1.htm">Vivado</a><a class="tag" taget="_blank" href="/search/HLS%E5%BC%80%E5%8F%91/1.htm">HLS开发</a><a class="tag" taget="_blank" href="/search/vivado/1.htm">vivado</a><a class="tag" taget="_blank" href="/search/HLS/1.htm">HLS</a><a class="tag" taget="_blank" href="/search/FIR%E4%BD%8E%E9%80%9A%E6%BB%A4%E6%B3%A2%E5%99%A8/1.htm">FIR低通滤波器</a> <div>目录1.FIR参数确定2.FIR系数计算3.C/C++代码实现4.VivadoHLS项目创建与配置4.1在VivadoHLS中创建新项目并配置4.2在VivadoHLS中执行C仿真4.3执行C综合以将C代码转换为RTL4.4进行RTL级仿真验证4.5导出IP4.6在Vivado中集成IPVivadoHLS是一款强大的高层次综合工具,可将C/C++代码转换为硬件描述语言(HDL),显著提升FPGA开</div> </li> <li><a href="/article/1925900185829961728.htm" title="求助:uniapp+video+hls播放m3u8视频IOS遇到播放问题" target="_blank">求助:uniapp+video+hls播放m3u8视频IOS遇到播放问题</a> <span class="text-muted">mingxia_jiang</span> <a class="tag" taget="_blank" href="/search/uni-app/1.htm">uni-app</a><a class="tag" taget="_blank" href="/search/%E9%9F%B3%E8%A7%86%E9%A2%91/1.htm">音视频</a> <div>uniapp+video+hls微信h5中,ios使用hls.js加载处理m3u8视频时会监控到报错Hls.Events.ERROR,详情是我这边测试data.fatal是false,type是mediaError,我是用hls.recoverMediaError()尝试恢复播放,在调用recoverMediaError()方法后,错误事件仍然触发,并且data.fatal变为true,data.</div> </li> <li><a href="/article/1925753053789614080.htm" title="vivadoHLS优化" target="_blank">vivadoHLS优化</a> <span class="text-muted">ailao4622</span> <div>//HLS数据类型:ap_fixed--------------------------------------------------------------------------(优化)Directive(函数/类->变量/对象)InsertDirective(优化措施ug902->designoptimization)Directive:DATA_PACK对结构体打包:INTERFACE对</div> </li> <li><a href="/article/1925309467587571712.htm" title="前端开发 HTML5 视频直播实现方案" target="_blank">前端开发 HTML5 视频直播实现方案</a> <span class="text-muted">前端视界</span> <a class="tag" taget="_blank" href="/search/%E5%89%8D%E7%AB%AF%E8%89%BA%E5%8C%A0%E9%A6%86/1.htm">前端艺匠馆</a><a class="tag" taget="_blank" href="/search/html5/1.htm">html5</a><a class="tag" taget="_blank" href="/search/%E9%9F%B3%E8%A7%86%E9%A2%91/1.htm">音视频</a><a class="tag" taget="_blank" href="/search/%E5%89%8D%E7%AB%AF/1.htm">前端</a><a class="tag" taget="_blank" href="/search/ai/1.htm">ai</a> <div>前端开发HTML5视频直播实现方案关键词:HTML5视频直播、WebRTC、RTMP、HLS、WebSocket、媒体流处理、实时通信摘要:本文系统解析基于HTML5的视频直播技术体系,涵盖核心原理、协议对比、开发流程与实战案例。通过深入剖析WebRTC、RTMP、HLS等关键技术,结合媒体捕获API、编码算法和流媒体服务器架构,提供从前端采集到后端处理的完整解决方案。适合前端开发者、流媒体工程师</div> </li> <li><a href="/article/1924307177963581440.htm" title="MMDet加载旧版本代码权重及自定义数据集的问题及解决" target="_blank">MMDet加载旧版本代码权重及自定义数据集的问题及解决</a> <span class="text-muted">MWHLS</span> <a class="tag" taget="_blank" href="/search/python/1.htm">python</a><a class="tag" taget="_blank" href="/search/python/1.htm">python</a><a class="tag" taget="_blank" href="/search/pytorch/1.htm">pytorch</a><a class="tag" taget="_blank" href="/search/mmdet/1.htm">mmdet</a> <div>文章首发见博客:https://mwhls.top/4881.html。无图/格式错误/后续更新请见首发页。更多更新请到mwhls.top查看欢迎留言提问或批评建议,私信不回。场景PyTorch说它们2.0很快,那么就安个最新的Torch和MMDet。打开两年前的顶会文章,复制更早几年的代码文件以及权重。找个数据集。按照最新的config进行配置权重路径。然而,找不到加载权重。解决config配置</div> </li> <li><a href="/article/1923822558940033024.htm" title="实时通信协议概述:WebRTC、RTPRTCP、RTMP、HLS 和 FLV 的比较与应用" target="_blank">实时通信协议概述:WebRTC、RTPRTCP、RTMP、HLS 和 FLV 的比较与应用</a> <span class="text-muted">m0_74823021</span> <a class="tag" taget="_blank" href="/search/webrtc/1.htm">webrtc</a> <div>文章目录一、协议总览二、WebRTC2.1时序图2.2代码示例三、RTP/RTCP3.1时序图3.2代码示例四、RTMP4.1时序图4.2代码示例五、HLS5.1时序图5.2代码示例六、总结一、协议总览协议/格式细节对比适用场景用法WebRTC使用UDP传输协议,支持P2P通信,可以实现低延迟的实时通信。与其他需要服务器中转的协议相比,WebRTC可以直接在客户端之间传输数据,降低了延迟和带宽消耗</div> </li> <li><a href="/article/94.htm" title="PHP,安卓,UI,java,linux视频教程合集" target="_blank">PHP,安卓,UI,java,linux视频教程合集</a> <span class="text-muted">cocos2d-x小菜</span> <a class="tag" taget="_blank" href="/search/java/1.htm">java</a><a class="tag" taget="_blank" href="/search/UI/1.htm">UI</a><a class="tag" taget="_blank" href="/search/PHP/1.htm">PHP</a><a class="tag" taget="_blank" href="/search/android/1.htm">android</a><a class="tag" taget="_blank" href="/search/linux/1.htm">linux</a> <div>╔-----------------------------------╗┆                           </div> </li> <li><a href="/article/221.htm" title="各表中的列名必须唯一。在表 'dbo.XXX' 中多次指定了列名 'XXX'。" target="_blank">各表中的列名必须唯一。在表 'dbo.XXX' 中多次指定了列名 'XXX'。</a> <span class="text-muted">bozch</span> <a class="tag" taget="_blank" href="/search/.net/1.htm">.net</a><a class="tag" taget="_blank" href="/search/.net+mvc/1.htm">.net mvc</a> <div>在.net mvc5中,在执行某一操作的时候,出现了如下错误:       各表中的列名必须唯一。在表 'dbo.XXX' 中多次指定了列名 'XXX'。 经查询当前的操作与错误内容无关,经过对错误信息的排查发现,事故出现在数据库迁移上。 回想过去: 在迁移之前已经对数据库进行了添加字段操作,再次进行迁移插入XXX字段的时候,就会提示如上错误。  &</div> </li> <li><a href="/article/348.htm" title="Java 对象大小的计算" target="_blank">Java 对象大小的计算</a> <span class="text-muted">e200702084</span> <a class="tag" taget="_blank" href="/search/java/1.htm">java</a> <div>                          Java对象的大小 如何计算一个对象的大小呢?    </div> </li> <li><a href="/article/475.htm" title="Mybatis Spring" target="_blank">Mybatis Spring</a> <span class="text-muted">171815164</span> <a class="tag" taget="_blank" href="/search/mybatis/1.htm">mybatis</a> <div>ApplicationContext ac = new ClassPathXmlApplicationContext("applicationContext.xml"); CustomerService userService = (CustomerService) ac.getBean("customerService"); Customer cust</div> </li> <li><a href="/article/602.htm" title="JVM 不稳定参数" target="_blank">JVM 不稳定参数</a> <span class="text-muted">g21121</span> <a class="tag" taget="_blank" href="/search/jvm/1.htm">jvm</a> <div>        -XX 参数被称为不稳定参数,之所以这么叫是因为此类参数的设置很容易引起JVM 性能上的差异,使JVM 存在极大的不稳定性。当然这是在非合理设置的前提下,如果此类参数设置合理讲大大提高JVM 的性能及稳定性。        可以说“不稳定参数”</div> </li> <li><a href="/article/729.htm" title="用户自动登录网站" target="_blank">用户自动登录网站</a> <span class="text-muted">永夜-极光</span> <a class="tag" taget="_blank" href="/search/%E7%94%A8%E6%88%B7/1.htm">用户</a> <div>1.目标:实现用户登录后,再次登录就自动登录,无需用户名和密码 2.思路:将用户的信息保存为cookie            每次用户访问网站,通过filter拦截所有请求,在filter中读取所有的cookie,如果找到了保存登录信息的cookie,那么在cookie中读取登录信息,然后直接</div> </li> <li><a href="/article/856.htm" title="centos7 安装后失去win7的引导记录" target="_blank">centos7 安装后失去win7的引导记录</a> <span class="text-muted">程序员是怎么炼成的</span> <a class="tag" taget="_blank" href="/search/%E6%93%8D%E4%BD%9C%E7%B3%BB%E7%BB%9F/1.htm">操作系统</a> <div>1.使用root身份(必须)打开 /boot/grub2/grub.cfg 2.找到 ### BEGIN /etc/grub.d/30_os-prober ###   在后面添加    menuentry "Windows 7 (loader) (on /dev/sda1)" { </div> </li> <li><a href="/article/983.htm" title="Oracle 10g 官方中文安装帮助文档以及Oracle官方中文教程文档下载" target="_blank">Oracle 10g 官方中文安装帮助文档以及Oracle官方中文教程文档下载</a> <span class="text-muted">aijuans</span> <a class="tag" taget="_blank" href="/search/oracle/1.htm">oracle</a> <div>Oracle 10g 官方中文安装帮助文档下载:http://download.csdn.net/tag/Oracle%E4%B8%AD%E6%96%87API%EF%BC%8COracle%E4%B8%AD%E6%96%87%E6%96%87%E6%A1%A3%EF%BC%8Coracle%E5%AD%A6%E4%B9%A0%E6%96%87%E6%A1%A3 Oracle 10g 官方中文教程</div> </li> <li><a href="/article/1110.htm" title="JavaEE开源快速开发平台G4Studio_V3.2发布了" target="_blank">JavaEE开源快速开发平台G4Studio_V3.2发布了</a> <span class="text-muted">無為子</span> <a class="tag" taget="_blank" href="/search/AOP/1.htm">AOP</a><a class="tag" taget="_blank" href="/search/oracle/1.htm">oracle</a><a class="tag" taget="_blank" href="/search/mysql/1.htm">mysql</a><a class="tag" taget="_blank" href="/search/javaee/1.htm">javaee</a><a class="tag" taget="_blank" href="/search/G4Studio/1.htm">G4Studio</a> <div>  我非常高兴地宣布,今天我们最新的JavaEE开源快速开发平台G4Studio_V3.2版本已经正式发布。大家可以通过如下地址下载。   访问G4Studio网站 http://www.g4it.org   G4Studio_V3.2版本变更日志 功能新增 (1).新增了系统右下角滑出提示窗口功能。 (2).新增了文件资源的Zip压缩和解压缩</div> </li> <li><a href="/article/1237.htm" title="Oracle常用的单行函数应用技巧总结" target="_blank">Oracle常用的单行函数应用技巧总结</a> <span class="text-muted">百合不是茶</span> <a class="tag" taget="_blank" href="/search/%E6%97%A5%E6%9C%9F%E5%87%BD%E6%95%B0/1.htm">日期函数</a><a class="tag" taget="_blank" href="/search/%E8%BD%AC%E6%8D%A2%E5%87%BD%E6%95%B0%28%E6%A0%B8%E5%BF%83%29/1.htm">转换函数(核心)</a><a class="tag" taget="_blank" href="/search/%E6%95%B0%E5%AD%97%E5%87%BD%E6%95%B0/1.htm">数字函数</a><a class="tag" taget="_blank" href="/search/%E9%80%9A%E7%94%A8%E5%87%BD%E6%95%B0%28%E6%A0%B8%E5%BF%83%29/1.htm">通用函数(核心)</a><a class="tag" taget="_blank" href="/search/%E5%AD%97%E7%AC%A6%E5%87%BD%E6%95%B0/1.htm">字符函数</a> <div>单行函数;   字符函数,数字函数,日期函数,转换函数(核心),通用函数(核心) 一:字符函数: .UPPER(字符串) 将字符串转为大写 .LOWER (字符串) 将字符串转为小写 .INITCAP(字符串) 将首字母大写 .LENGTH (字符串) 字符串的长度 .REPLACE(字符串,'A','_') 将字符串字符A转换成_ </div> </li> <li><a href="/article/1364.htm" title="Mockito异常测试实例" target="_blank">Mockito异常测试实例</a> <span class="text-muted">bijian1013</span> <a class="tag" taget="_blank" href="/search/java/1.htm">java</a><a class="tag" taget="_blank" href="/search/%E5%8D%95%E5%85%83%E6%B5%8B%E8%AF%95/1.htm">单元测试</a><a class="tag" taget="_blank" href="/search/mockito/1.htm">mockito</a> <div>Mockito异常测试实例: package com.bijian.study; import static org.mockito.Mockito.mock; import static org.mockito.Mockito.when; import org.junit.Assert; import org.junit.Test; import org.mockito.</div> </li> <li><a href="/article/1491.htm" title="GA与量子恒道统计" target="_blank">GA与量子恒道统计</a> <span class="text-muted">Bill_chen</span> <a class="tag" taget="_blank" href="/search/JavaScript/1.htm">JavaScript</a><a class="tag" taget="_blank" href="/search/%E6%B5%8F%E8%A7%88%E5%99%A8/1.htm">浏览器</a><a class="tag" taget="_blank" href="/search/%E7%99%BE%E5%BA%A6/1.htm">百度</a><a class="tag" taget="_blank" href="/search/Google/1.htm">Google</a><a class="tag" taget="_blank" href="/search/%E9%98%B2%E7%81%AB%E5%A2%99/1.htm">防火墙</a> <div>前一阵子,统计**网址时,Google Analytics(GA) 和量子恒道统计(也称量子统计),数据有较大的偏差,仔细找相关资料研究了下,总结如下:   为何GA和量子网站统计(量子统计前身为雅虎统计)结果不同? 首先:没有一种网站统计工具能保证百分之百的准确出现该问题可能有以下几个原因:(1)不同的统计分析系统的算法机制不同;(2)统计代码放置的位置和前后</div> </li> <li><a href="/article/1618.htm" title="【Linux命令三】Top命令" target="_blank">【Linux命令三】Top命令</a> <span class="text-muted">bit1129</span> <a class="tag" taget="_blank" href="/search/linux%E5%91%BD%E4%BB%A4/1.htm">linux命令</a> <div>Linux的Top命令类似于Windows的任务管理器,可以查看当前系统的运行情况,包括CPU、内存的使用情况等。如下是一个Top命令的执行结果:     top - 21:22:04 up 1 day, 23:49, 1 user, load average: 1.10, 1.66, 1.99 Tasks: 202 total, 4 running, 198 sl</div> </li> <li><a href="/article/1745.htm" title="spring四种依赖注入方式" target="_blank">spring四种依赖注入方式</a> <span class="text-muted">白糖_</span> <a class="tag" taget="_blank" href="/search/spring/1.htm">spring</a> <div>  平常的java开发中,程序员在某个类中需要依赖其它类的方法,则通常是new一个依赖类再调用类实例的方法,这种开发存在的问题是new的类实例不好统一管理,spring提出了依赖注入的思想,即依赖类不由程序员实例化,而是通过spring容器帮我们new指定实例并且将实例注入到需要该对象的类中。依赖注入的另一种说法是“控制反转”,通俗的理解是:平常我们new一个实例,这个实例的控制权是我</div> </li> <li><a href="/article/1872.htm" title="angular.injector" target="_blank">angular.injector</a> <span class="text-muted">boyitech</span> <a class="tag" taget="_blank" href="/search/AngularJS/1.htm">AngularJS</a><a class="tag" taget="_blank" href="/search/AngularJS+API/1.htm">AngularJS API</a> <div>angular.injector   描述: 创建一个injector对象, 调用injector对象的方法可以获得angular的service, 或者用来做依赖注入.   使用方法: angular.injector(modules, [strictDi])   参数详解: Param Type Details mod</div> </li> <li><a href="/article/1999.htm" title="java-同步访问一个数组Integer[10],生产者不断地往数组放入整数1000,数组满时等待;消费者不断地将数组里面的数置零,数组空时等待" target="_blank">java-同步访问一个数组Integer[10],生产者不断地往数组放入整数1000,数组满时等待;消费者不断地将数组里面的数置零,数组空时等待</a> <span class="text-muted">bylijinnan</span> <a class="tag" taget="_blank" href="/search/Integer/1.htm">Integer</a> <div> public class PC { /** * 题目:生产者-消费者。 * 同步访问一个数组Integer[10],生产者不断地往数组放入整数1000,数组满时等待;消费者不断地将数组里面的数置零,数组空时等待。 */ private static final Integer[] val=new Integer[10]; private static</div> </li> <li><a href="/article/2126.htm" title="使用Struts2.2.1配置" target="_blank">使用Struts2.2.1配置</a> <span class="text-muted">Chen.H</span> <a class="tag" taget="_blank" href="/search/apache/1.htm">apache</a><a class="tag" taget="_blank" href="/search/spring/1.htm">spring</a><a class="tag" taget="_blank" href="/search/Web/1.htm">Web</a><a class="tag" taget="_blank" href="/search/xml/1.htm">xml</a><a class="tag" taget="_blank" href="/search/struts/1.htm">struts</a> <div>Struts2.2.1 需要如下 jar包: commons-fileupload-1.2.1.jar commons-io-1.3.2.jar commons-logging-1.0.4.jar freemarker-2.3.16.jar javassist-3.7.ga.jar ognl-3.0.jar spring.jar struts2-core-2.2.1.jar struts2-sp</div> </li> <li><a href="/article/2253.htm" title="[职业与教育]青春之歌" target="_blank">[职业与教育]青春之歌</a> <span class="text-muted">comsci</span> <a class="tag" taget="_blank" href="/search/%E6%95%99%E8%82%B2/1.htm">教育</a> <div>        每个人都有自己的青春之歌............但是我要说的却不是青春...        大家如果在自己的职业生涯没有给自己以后创业留一点点机会,仅仅凭学历和人脉关系,是难以在竞争激烈的市场中生存下去的....   &nbs</div> </li> <li><a href="/article/2380.htm" title="oracle连接(join)中使用using关键字" target="_blank">oracle连接(join)中使用using关键字</a> <span class="text-muted">daizj</span> <a class="tag" taget="_blank" href="/search/JOIN/1.htm">JOIN</a><a class="tag" taget="_blank" href="/search/oracle/1.htm">oracle</a><a class="tag" taget="_blank" href="/search/sql/1.htm">sql</a><a class="tag" taget="_blank" href="/search/using/1.htm">using</a> <div>在oracle连接(join)中使用using关键字 34. View the Exhibit and examine the structure of the ORDERS and ORDER_ITEMS tables. Evaluate the following SQL statement: SELECT oi.order_id, product_id, order_date FRO</div> </li> <li><a href="/article/2507.htm" title="NIO示例" target="_blank">NIO示例</a> <span class="text-muted">daysinsun</span> <a class="tag" taget="_blank" href="/search/nio/1.htm">nio</a> <div>NIO服务端代码: public class NIOServer { private Selector selector; public void startServer(int port) throws IOException { ServerSocketChannel serverChannel = ServerSocketChannel.open(</div> </li> <li><a href="/article/2634.htm" title="C语言学习homework1" target="_blank">C语言学习homework1</a> <span class="text-muted">dcj3sjt126com</span> <a class="tag" taget="_blank" href="/search/c/1.htm">c</a><a class="tag" taget="_blank" href="/search/homework/1.htm">homework</a> <div>0、 课堂练习做完 1、使用sizeof计算出你所知道的所有的类型占用的空间。 int x; sizeof(x);   sizeof(int);   # include <stdio.h> int main(void) { int x1; char x2; double x3; float x4; printf(&quo</div> </li> <li><a href="/article/2761.htm" title="select in order by , mysql排序" target="_blank">select in order by , mysql排序</a> <span class="text-muted">dcj3sjt126com</span> <a class="tag" taget="_blank" href="/search/mysql/1.htm">mysql</a> <div>If i select like this: SELECT id FROM users WHERE id IN(3,4,8,1); This by default will select users in this order 1,3,4,8, I would like to select them in the same order that i put IN() values so: </div> </li> <li><a href="/article/2888.htm" title="页面校验-新建项目" target="_blank">页面校验-新建项目</a> <span class="text-muted">fanxiaolong</span> <a class="tag" taget="_blank" href="/search/%E9%A1%B5%E9%9D%A2%E6%A0%A1%E9%AA%8C/1.htm">页面校验</a> <div>$(document).ready( function() { var flag = true; $('#changeform').submit(function() { var projectScValNull = true; var s =""; var parent_id = $("#parent_id").v</div> </li> <li><a href="/article/3015.htm" title="Ehcache(02)——ehcache.xml简介" target="_blank">Ehcache(02)——ehcache.xml简介</a> <span class="text-muted">234390216</span> <a class="tag" taget="_blank" href="/search/ehcache/1.htm">ehcache</a><a class="tag" taget="_blank" href="/search/ehcache.xml/1.htm">ehcache.xml</a><a class="tag" taget="_blank" href="/search/%E7%AE%80%E4%BB%8B/1.htm">简介</a> <div>ehcache.xml简介          ehcache.xml文件是用来定义Ehcache的配置信息的,更准确的来说它是定义CacheManager的配置信息的。根据之前我们在《Ehcache简介》一文中对CacheManager的介绍我们知道一切Ehcache的应用都是从CacheManager开始的。在不指定配置信</div> </li> <li><a href="/article/3142.htm" title="junit 4.11中三个新功能" target="_blank">junit 4.11中三个新功能</a> <span class="text-muted">jackyrong</span> <a class="tag" taget="_blank" href="/search/java/1.htm">java</a> <div>junit 4.11中两个新增的功能,首先是注解中可以参数化,比如 import static org.junit.Assert.assertEquals; import java.util.Arrays; import org.junit.Test; import org.junit.runner.RunWith; import org.junit.runn</div> </li> <li><a href="/article/3269.htm" title="国外程序员爱用苹果Mac电脑的10大理由" target="_blank">国外程序员爱用苹果Mac电脑的10大理由</a> <span class="text-muted">php教程分享</span> <a class="tag" taget="_blank" href="/search/windows/1.htm">windows</a><a class="tag" taget="_blank" href="/search/PHP/1.htm">PHP</a><a class="tag" taget="_blank" href="/search/unix/1.htm">unix</a><a class="tag" taget="_blank" href="/search/Microsoft/1.htm">Microsoft</a><a class="tag" taget="_blank" href="/search/perl/1.htm">perl</a> <div>Mac 在国外很受欢迎,尤其是在 设计/web开发/IT 人员圈子里。普通用户喜欢 Mac 可以理解,毕竟 Mac 设计美观,简单好用,没有病毒。那么为什么专业人士也对 Mac 情有独钟呢?从个人使用经验来看我想有下面几个原因: 1、Mac OS X 是基于 Unix 的 这一点太重要了,尤其是对开发人员,至少对于我来说很重要,这意味着Unix 下一堆好用的工具都可以随手捡到。如果你是个 wi</div> </li> <li><a href="/article/3396.htm" title="位运算、异或的实际应用" target="_blank">位运算、异或的实际应用</a> <span class="text-muted">wenjinglian</span> <a class="tag" taget="_blank" href="/search/%E4%BD%8D%E8%BF%90%E7%AE%97/1.htm">位运算</a> <div>一. 位操作基础,用一张表描述位操作符的应用规则并详细解释。       二. 常用位操作小技巧,有判断奇偶、交换两数、变换符号、求绝对值。       三. 位操作与空间压缩,针对筛素数进行空间压缩。    &n</div> </li> <li><a href="/article/3523.htm" title="weblogic部署项目出现的一些问题(持续补充中……)" target="_blank">weblogic部署项目出现的一些问题(持续补充中……)</a> <span class="text-muted">Everyday都不同</span> <a class="tag" taget="_blank" href="/search/weblogic%E9%83%A8%E7%BD%B2%E5%A4%B1%E8%B4%A5/1.htm">weblogic部署失败</a> <div>好吧,weblogic的问题确实……   问题一: org.springframework.beans.factory.BeanDefinitionStoreException: Failed to read candidate component class: URL [zip:E:/weblogic/user_projects/domains/base_domain/serve</div> </li> <li><a href="/article/3650.htm" title="tomcat7性能调优(01)" target="_blank">tomcat7性能调优(01)</a> <span class="text-muted">toknowme</span> <a class="tag" taget="_blank" href="/search/tomcat7/1.htm">tomcat7</a> <div>    Tomcat优化: 1、最大连接数最大线程等设置 <Connector port="8082" protocol="HTTP/1.1"                useBodyEncodingForURI="t</div> </li> <li><a href="/article/3777.htm" title="PO VO DAO DTO BO TO概念与区别" target="_blank">PO VO DAO DTO BO TO概念与区别</a> <span class="text-muted">xp9802</span> <a class="tag" taget="_blank" href="/search/java/1.htm">java</a><a class="tag" taget="_blank" href="/search/DAO/1.htm">DAO</a><a class="tag" taget="_blank" href="/search/%E8%AE%BE%E8%AE%A1%E6%A8%A1%E5%BC%8F/1.htm">设计模式</a><a class="tag" taget="_blank" href="/search/bean/1.htm">bean</a><a class="tag" taget="_blank" href="/search/%E9%A2%86%E5%9F%9F%E6%A8%A1%E5%9E%8B/1.htm">领域模型</a> <div>O/R Mapping 是 Object Relational Mapping(对象关系映射)的缩写。通俗点讲,就是将对象与关系数据库绑定,用对象来表示关系数据。在O/R Mapping的世界里,有两个基本的也是重要的东东需要了解,即VO,PO。 它们的关系应该是相互独立的,一个VO可以只是PO的部分,也可以是多个PO构成,同样也可以等同于一个PO(指的是他们的属性)。这样,PO独立出来,数据持</div> </li> </ul> </div> </div> </div> <div> <div class="container"> <div class="indexes"> <strong>按字母分类:</strong> <a href="/tags/A/1.htm" target="_blank">A</a><a href="/tags/B/1.htm" target="_blank">B</a><a href="/tags/C/1.htm" target="_blank">C</a><a href="/tags/D/1.htm" target="_blank">D</a><a href="/tags/E/1.htm" target="_blank">E</a><a href="/tags/F/1.htm" target="_blank">F</a><a href="/tags/G/1.htm" target="_blank">G</a><a href="/tags/H/1.htm" target="_blank">H</a><a href="/tags/I/1.htm" target="_blank">I</a><a href="/tags/J/1.htm" target="_blank">J</a><a href="/tags/K/1.htm" target="_blank">K</a><a href="/tags/L/1.htm" target="_blank">L</a><a href="/tags/M/1.htm" target="_blank">M</a><a href="/tags/N/1.htm" target="_blank">N</a><a href="/tags/O/1.htm" target="_blank">O</a><a href="/tags/P/1.htm" target="_blank">P</a><a href="/tags/Q/1.htm" target="_blank">Q</a><a href="/tags/R/1.htm" target="_blank">R</a><a href="/tags/S/1.htm" target="_blank">S</a><a href="/tags/T/1.htm" target="_blank">T</a><a href="/tags/U/1.htm" target="_blank">U</a><a href="/tags/V/1.htm" target="_blank">V</a><a href="/tags/W/1.htm" target="_blank">W</a><a href="/tags/X/1.htm" target="_blank">X</a><a href="/tags/Y/1.htm" target="_blank">Y</a><a href="/tags/Z/1.htm" target="_blank">Z</a><a href="/tags/0/1.htm" target="_blank">其他</a> </div> </div> </div> <footer id="footer" class="mb30 mt30"> <div class="container"> <div class="footBglm"> <a target="_blank" href="/">首页</a> - <a target="_blank" href="/custom/about.htm">关于我们</a> - <a target="_blank" href="/search/Java/1.htm">站内搜索</a> - <a target="_blank" href="/sitemap.txt">Sitemap</a> - <a target="_blank" href="/custom/delete.htm">侵权投诉</a> </div> <div class="copyright">版权所有 IT知识库 CopyRight © 2000-2050 E-COM-NET.COM , All Rights Reserved. <!-- <a href="https://beian.miit.gov.cn/" rel="nofollow" target="_blank">京ICP备09083238号</a><br>--> </div> </div> </footer> <!-- 代码高亮 --> <script type="text/javascript" src="/static/syntaxhighlighter/scripts/shCore.js"></script> <script type="text/javascript" src="/static/syntaxhighlighter/scripts/shLegacy.js"></script> <script type="text/javascript" src="/static/syntaxhighlighter/scripts/shAutoloader.js"></script> <link type="text/css" rel="stylesheet" href="/static/syntaxhighlighter/styles/shCoreDefault.css"/> <script type="text/javascript" src="/static/syntaxhighlighter/src/my_start_1.js"></script> </body> </html>