草庐IT

缓冲区

全部标签

ios - 当缓冲区已满并发送恢复时,AVPlayer 停止播放

我有一个CollectionView,在单元格内有一个AVPlayer,当-(void)scrollViewDidEndDecelerating:(UIScrollView*)scrollView被调用。这很好用,但问题是在AVPlayer播放该项目几次后,视频不再显示,但我可以听到它的声音。我还为每个像这样播放的项目添加了一个值@"playbackBufferFull"的观察者:[itemaddObserver:selfforKeyPath:@"playbackBufferFull"options:NSKeyValueObservingOptionNewcontext:nil];我注

ios - 使用 Metal 间接命令缓冲区时出错 : "Fragment shader cannot be used with indirect command buffers"

我正在开发一个基于Metal、MTKView的应用程序,它利用A11TBDR架构在单个渲染channel中执行延迟着色。我用的是苹果的DeferredLightingsamplecode作为引用,效果很好。我想尝试将几何缓冲区channel更改为GPU驱动,使用A11硬件上Metal2的间接命令缓冲区功能。我一直在使用Apple的EncodingIndirectCommandBuffersontheGPUsamplecode作为我的主要引用点。我可以在我的iPhoneXR上运行这个示例(尽管可能跑题了,滚动不流畅,它会抖动)。但是,当我尝试将我的几何缓冲区传递移动到间接命令缓冲区时,我

ios - 同时生成多个正弦波到音频单元的采样缓冲区 (iOS)

给定一个频率和振幅数组(长度不断变化),我能否在逐个样本的基础上生成一个包含数组中所有音调的音频缓冲区?如果不是,在单个音频单元中生成多个音调的最佳方法是什么?每个音符是否都生成自己的缓冲区,然后将它们相加到输出缓冲区中?这不是一次完成所有操作吗?正在开发一个通过触摸生成音符的iOS应用程序,考虑使用STK但不想发送音符关闭消息,而只想为我在数组中保存的音符生成正弦音调。每个音符实际上需要产生两个频率和振幅不同的正弦波。一个音符可能与另一个音符播放相同的频率,因此该频率的音符关闭消息可能会导致问题。最后,我想管理音频单元外每个音符的振幅(adsr)包络。我还希望响应时间尽可能快,因此我

ios - 是否可以在 OpenGL ES 2.0/iOS 上渲染到 8 位纹理帧缓冲区?

我需要将某些内容渲染到屏幕外缓冲区,然后通过调用glReadPixels将像素读回“CPU内存”。我的代码在Windows下编译为普通OpenGL时运行良好,但要使其在iOS中的OpenGLES2.0下运行,我必须将GL_ALPHA(或GL_LUMINANCE)纹理替换为一个GL_RGBA,意思是glTexImage2D(GL_TEXTURE_2D,0,GL_RGBA,width,height,0,GL_RGBA,GL_UNSIGNED_BYTE,NULL);代替glTexImage2D(GL_TEXTURE_2D,0,GL_ALPHA,width,height,0,GL_ALPHA,

leaflet 绘制 点 线 面 圆 椭圆 线缓冲区

  leaflet有个绘图插件Leaflet.draw,但是我不想要它的控件,只想用它的绘制功能,控件我自己提供,当时不知道如何使用,就自己写了个绘制点线面圆和椭圆的工具,代码如下:///////////////////***绘图*/vardrawUtil=(function(){//图层var_drawLayer;//绘图类型1:多边形2:画线3:画矩形4:画椭圆5选择位置6画圆var_drawType;//是否允许mousemove事件var_allowMouseMove=true;//多边形点集合var_polygonPointArr=[];//多边形var_polygon;//线的点集

leaflet结合turf.js实现绘制图形缓冲分析buffer(附源码下载)

前言leaflet入门开发系列环境知识点了解:leafletapi文档介绍,详细介绍leaflet每个类的函数以及属性等等leaflet在线例子leaflet插件,leaflet的插件库,非常有用内容概览leaflet结合turf.js实现绘制图形缓冲分析buffer功能源代码demo下载绘制图形buffer实现借助了一个插件turf.js:http://turfjs.org效果图如下:部分核心代码,完整的见源码demo下载varbufferstyle={fillColor:"#e6d933",fillOpacity:0.3,stroke:true,fill:true,color:"#FF00

ios - 减少/消除 <video> 元素上的缓冲滞后 (iOS)

我们有一个正在流式传输到移动设备的FFMPEG流。我们正在使用HTML5标签以内联显示视频(在实时流应用程序中)。我们已经设法将FFMPEG端的延迟降至最低,但在iOS端仍然存在延迟,播放器可能会缓冲几秒钟。有什么办法可以减少客户端延迟吗?我们需要尽可能接近实时,跳过是可以接受的。 最佳答案 如果您使用的是HTML5视频标签,则iOS设备将使用Quicktime播放视频。Apple不提供对其Quicktime播放器缓冲区设置等内部机制的控制。对于AppleTV上的一个项目,我什至和一个在库比蒂诺的苹果公司的人一起工作,他们只是不允许

ios - 设置 AVSampleBufferDisplayLayer 渲染样本缓冲区的速率

我正在使用AVSampleBufferDisplayLayer来显示通过网络连接以h.264格式传输的CMSampleBuffer。视频播放流畅且工作正常,但我似乎无法控制帧速率。具体来说,如果我在AVSampleBufferDisplayLayer中每秒排队60帧,它会显示这60帧,即使视频是以30FPS录制的。创建样本缓冲区时,可以通过将计时信息数组传递给CMSampleBufferCreate来设置呈现时间戳(计时信息不存在于h.264流中,但可以计算或以容器格式传递)。我设置的呈现时间戳相隔约0.033秒,持续时间为0.033,但显示层仍会显示尽可能多的每秒帧数。有两种方法可以

ios - NSData 转换时堆缓冲区溢出

我注意到XCode8中AddressSanitizer的有趣行为。在一种情况下,它会导致捕获断点:AddressSanitizer:地址上的堆缓冲区溢出,但我真的不明白为什么:char*buffer=malloc(length);memset(buffer,0,length);[outputgetBytes:bufferlength:length];stringOutput=[NSStringstringWithUTF8String:buffer];//hereiscrash同于:stringOutput=[NSStringstringWithUTF8String:output.byt

OpenGL ES 3.0 帧缓冲区失效 glInvalidateFramebuffer

未经作者(微信ID:Byte-Flow)允许,禁止转载文章首发于公众号:字节流动很多朋友都听说过glInvalidateFramebuffer(帧缓冲区失效)这个API,很多读者私信问过很多次:帧缓冲区失效应该怎么使用?在什么条件下使用?有什么好处?函数原型:voidglInvalidateFramebuffer(GLenumtarget, GLsizeinumAttachments, constGLenum*attachments);glInvalidateFramebuffer接口是OpenGLES3.0引入的,提供了一个通知驱动程序不再需要帧缓冲区内容的机制。target必须是GL_RE