Tag: 缓冲区

如何在iOS中接收和存储来自服务器的二进制数据?

我正在为iPhone(iOS 5)的应用程序工作。 我必须做的是通过使用我从服务器获得的二进制数据创build一个地图。 如果服务器有可用字节,我将它们读入一个缓冲区:uint8_t [1024]。 然后我parsing这些数据,并从中创build对象(例如包含经度和纬度点的path),但这些对象通常比我的缓冲区大。 在模拟器上,这不是一个大问题,因为我有足够的内存将它们存储到可变数组中。 但是,我该如何处理这个问题,以使我的应用程序安全的设备? 我应该使用什么arrays大小的iOS设备? 我希望我的问题是可以理解的。

IOS警告:无法分配渲染缓冲区存储

我有一个简单的IOS应用程序。 它包括两个工具栏和地图视图。 我只使用默认库(没有cocoa等)。 当我在真正的IPhone5s(IOS8.1)上debugging我的应用程序时,我的控制台中的“无法分配渲染缓冲区存储!0x1741f2c00”时,iPhone更改方向(模拟器没有问题)。 状态栏在实景设备和模拟器上纵向显示时会消失,并返回(这是我的一般问题)。 应用程序订阅UIDeviceOrientationDidChangeNotification。 [[UIDevice currentDevice] beginGeneratingDeviceOrientationNotifications]; [[NSNotificationCenter defaultCenter] addObserver:self selector:@selector(orientationChanged:) name:UIDeviceOrientationDidChangeNotification object:[UIDevice currentDevice]]; 但文本出现在控制台和状态栏消失独立于调用 -(void)orientationChanged:(NSNotification *)note { } Google不帮我。 所有链接到cocoa库错误的链接或一些graphics方法,我不使用。 对不起我的英语不好。 谢谢 :)

当缓冲区大小很小时,audio队列播放速度过快

我能够使用audio文件服务+audio队列服务来播放和播放m4a文件。 文件的比特率信息由于文件types而不适用于audio队列。 下载完所有的audio数据包后,我将它们传送给播放器。 当我select32768或16384左右的缓冲区大小时,由于callback被调用的次数较less,而且每个缓冲区的大小都很大,所以似乎正在以正常速度播放。 问题是有时我必须播放小文件,但是当我select一个小缓冲区大小-512或1024或2048到8192时,audio播放速度非常快,偶尔会出现毛刺。 我知道在Ccallback调用objective-c函数不是一个好主意,但为了可读性和易用性,我这样做。 无论如何,我认为这不是问题。 // allocate the buffers and prime the queue with some data before starting AudioQueueBufferRef buffers[XMNumberPlaybackBuffers]; int i; for (i = 0; i < XMNumberPlaybackBuffers; ++i) { err=AudioQueueAllocateBuffer(queue, XMAQDefaultBufSize, &buffers[i]); if (err) { [self failWithErrorCode:err customError:AP_AUDIO_QUEUE_BUFFER_ALLOCATION_FAILED]; } @synchronized(self) { state=AP_WAITING_FOR_QUEUE_TO_START; } // manually invoke callback to fill buffers with […]

播放远程video内容时减less初始延迟

您好使用MPMoviePlayerControllerstreamvideo到应用程序。 但是,加载需要很长时间,我希望能够预缓冲video。 有什么build议么?

多个OpenGL视图(Cocos2D)

注 : 任何人可以帮助我正确地解决这个问题得到100点赏金 ! 在我的应用程序中,我将UIKit和Cocos2D混合在一起,我使用addSubview和removeFromSuperview调用了一些简单的自定义视图animation。 我最近需要添加另一个CCScene到我的应用程序,以摆脱Cocos2D可以轻松处理的一些复杂的UIKit代码。 所以我在我的应用程序中有一个基本视图,它是一个UIViewController,它上面有一些button。 这些button背后是一个CCGLView,Cocos2D将会做任何事情。 这很好。 然后,当我想要去我的第二个视图控制器 (让我称之为我的游戏视图)后,我做了我的视图animation,viewdidload被调用(那是我的导演初始化为第二个CCScene),或者什么也没有发生,在控制台下面的错误。 现在在我原来的项目中,下面的错误是我得到的,在这个示例项目中没有任何反应。 这些是错误: OpenGL error 0x0501 in DrawSolidPolygon 104 OpenGL error 0x0502 in DrawSolidPolygon 104 OpenGL error 0x0501 in -[CCTextureAtlas drawNumberOfQuads:fromIndex:] 556 OpenGL error 0x0502 in -[CCTextureAtlas drawNumberOfQuads:fromIndex:] 556 OpenGL error 0x0502 in -[CCTextureAtlas drawNumberOfQuads:fromIndex:] 556 OpenGL error 0x0501 in -[CCParticleSystemQuad postStep] 411 OpenGL error […]