小编Aft*_*ath的帖子

iOS在线广播流媒体问题

我必须创建提供在线广播流(icecast)的应用程序,最好是.ogg格式.所以我有下一个问题:

  1. 我怎么能播放.ogg格式的音频流?有没有支持的课程?因为我找不到任何,所以我认为它没有用很多位操作是不可能的CFNetwork,CoreAudio, AudioToolbox(我不看cocos2d的,因为这很可笑),我错了?
  2. 我现在正在播放mp3流(对我来说没有.ogg的可能性).我试图用AVPlayer,MPMovieMediaController,AudioSreaming LIB通过MattGallagher和DigitalDJ,以及这些解决方案都不能为我提供了元数据访问.

对于AVPlayer:

   -(void)playButtonPressed:(id)sender
    {
        NSURL *grindURL = [NSURL URLWithString:@"http://radio.goha.ru:8000/grind.fm"];
                    grindFMPlayer = [[AVPlayer alloc] initWithURL:grindURL];
                    [grindFMPlayer.currentItem addObserver:self forKeyPath:@"status" options:0 context:nil]; 
                    AVPlayerItem *item = grindFMPlayer.currentItem;
                    [grindFMPlayer play];
    }

-(void)stopButtonPressed:(id)sender
{
            AVURLAsset *ass = grindFMPlayer.currentItem.asset;
            NSArray *arr = [ass commonMetadata];
            NSArray *it_meta = [grindFMPlayer.currentItem timedMetadata];
            [grindFMPlayer pause];
}
Run Code Online (Sandbox Code Playgroud)

arrit_meta计数总是0,没有歌曲\艺术家\任何元数据.
同样的MPMovieMediaController,从未调用metadataUpdate

streamAudioPlayer = [[MPMoviePlayerController alloc] 
                                                   initWithContentURL:[NSURL URLWithString:@"http://radio.goha.ru:8000/grind.fm"];
                streamAudioPlayer.movieSourceType = …
Run Code Online (Sandbox Code Playgroud)

audio streaming metadata ogg ios

11
推荐指数
1
解决办法
8564
查看次数

使用WebRTC构建iOS Native App

我正在寻找4天,但无法得到它.我构建了所有库并将其集成到我的自定义项目中,但我不知道应该采取哪些步骤来使其工作.我在代码示例\解释中找到的唯一一件事就是tech.appear.in/2015/05/25/Getting-started-with-WebRTC-on-iOS,但它对我来说很糟糕且不清楚,AppRTCDemo源代码也是如此.我读过关于浏览器的WebRTC但仍无法在iOS上重现它.任何人都可以解释或提供关于如何使用WebRTC API完全构建iOS本机应用程序的解释链接,例如p2p ios chat?

除了我不理解demo中提供的代码逻辑这一事实,我无法理解:

1)我的iOS应用程序的ICE服务器是什么?我应该好好照顾吗?它是服务器端的东西吗?我应该自己编码和运行它,还是我可以使用现有的Parse背景?

2)iOS应用程序中的信令机制是什么?它只是客户端,还是必须在服务器端实现?

3)也许有人可以解释一步一步的指南,也许有一些代码,如何使用WebRTC实现简单的iOS p2p聊天?例如:

"你必须:

  1. 使用this = source =和本教程= tutorial =在解析核心上创建ICE/STUN/TURN服务器.

  2. 使用创建的ICEServer创建RTCPeerConnection: RTCPeerConnectionFactory *pcFactory = [[RTCPeerConnectionFactory alloc] init]; RTCPeerConnection *peerConnection = [pcFactory peerConnectionWithICEServers:kICEServerURL constraints:nil delegate:self];

  3. 使用创建DataChannel ...

  4. 使用...解释发送信号= link =

  5. 设置本地和远程描述 ...

  6. ...使用发送数据...

  7. ......"或类似的东西.

我很抱歉这个问题,但是我想失去理智.谢谢!

iphone native objective-c ios webrtc

10
推荐指数
1
解决办法
6822
查看次数

为iOS创建自定义建筑地图的最佳方式

我看到了一些方法:

1)以编程方式使用OpenGL绘图.

2)以编程方式使用QuartzCore和CoreAnimation进行绘制.

3)在AutoCad中绘制地图,然后以某种方式将其连接到iOS.

4)使用SVG绘制地图.

要求支持寻路和gps导航.

对于前两种方式,我认为它在性能方面很昂贵,重新绘制缩放的所有元素; 我不认为这种方式可能有GPS导航支持.

使用AutoCad图片化的地图对我来说很难理解如何将它与用于寻路的图形\路径连接起来.

我的同事将使用SVG在Web上开发此应用程序.我找到了它 - https://github.com/SVGKit/SVGKit,但仍然不知道它将如何支持寻路和导航.

我将不胜感激任何帮助.

navigation map autocad path-finding ios

5
推荐指数
1
解决办法
2526
查看次数

如何从加速度计计算正确的速度值

我需要计算空间中的iphone速度,例如打孔速度.
我的第一个问题是:accelerometer:didAccelerate这个过滤操作的加速度值是:

gravity_x = acceleration.x * kFilteringFactor + gravity_x * (1.0 - kFilteringFactor);
gravity_y = acceleration.y * kFilteringFactor + gravity_y * (1.0 - kFilteringFactor);
gravity_z = acceleration.z * kFilteringFactor + gravity_z * (1.0 - kFilteringFactor);
float gravityNorm = sqrt(gravity_x * gravity_x + gravity_y * gravity_y + gravity_z * gravity_z);
accelX = acceleration.x - gravity_x / gravityNorm;
accelY = acceleration.y - gravity_y / gravityNorm;
accelZ = acceleration.z - gravity_z / gravityNorm;
Run Code Online (Sandbox Code Playgroud)

和使用CoreMotion一样
motionManager.deviceMotion.userAcceleration.x; motionManager.deviceMotion.userAcceleration.y; motionManager.deviceMotion.userAcceleration.z;

接下来,根据相同的问题,我做以下

    const float …
Run Code Online (Sandbox Code Playgroud)

iphone acceleration ios core-motion

3
推荐指数
1
解决办法
8928
查看次数

iOS的室内导航硬件/软件要求

我正在为我的大学开发导航系统作为某种研究活动.我正在使用SVGKit来显示平面图.现在我需要提供用户定位服务以进行导航和跟踪.所以这是我的问题:

1)我是否需要在大学安装一些特殊硬件(例如Cisco MSE或更便宜的类似物),或者我可以将一些软件/技术应用于我们当前的硬件以确定服务器端用户位置?如果我这样做,我需要什么设备?我的意思是,它将是整个大学的一个单元,或每层一个,或者什么?

2)

问:为什么Redpin iPhone客户端不符合iPhone SDK协议?答:Apple不提供检索WiFi数据的公共API.为了让iPhone客户端正常工作,我们不得不使用私有API,iPhone SDK协议不允许这样做.

(c)http://redpin.org/faq.html

这是否意味着RedPin在AppStore中是不可接受的,所以我不能使用它?

3)除了标准路由器外,Navizon ITS是否需要一些特定的硬件设备?

谢谢大家,也许你可以为我提供更好的解决方案.提前致谢.

hardware iphone wifi ios indoor-positioning-system

3
推荐指数
1
解决办法
3183
查看次数

UIView动画落后于设备

我在我的应用程序中使用动画并感到困惑,因为动画在设备上滞后,在模拟器上一切似乎都没问题.首先我尝试使用

[UIView beginAnimations:nil context:nil];
[UIView setAnimationDuration:0.3];
[UIView setAnimationCurve:UIViewAnimationCurveEaseOut];
Run Code Online (Sandbox Code Playgroud)

在提交动画之前,有大约30行带有"if"块的代码,所以我认为这可能会导致问题,但后来我开始使用

[UIView animateWithDuration:0.3
                                  delay:0.0
                                options: UIViewAnimationCurveEaseIn
                             animations:^{
                                 mainView.frame = CGRectMake(0, 0, 320, 420);
                                 buttonsView.transform = CGAffineTransformMakeTranslation(0, 68);
                                 radioBar.transform = CGAffineTransformMakeTranslation(0, -50);
                                 vk_controller.view.frame = CGRectMake(0, 0, 320, 440);
                             } 
                             completion:^(BOOL finished){
                                 button.isHiddenDown = YES;
                             }];
Run Code Online (Sandbox Code Playgroud)

在"如果"块方面,但似乎停滞不前.当我按下按钮有延迟〜0.5-1秒(为什么?)然后动画开始.但是当我在桌子上观看时

[UIView animateWithDuration:0.3
                                  delay:0.0
                                options: UIViewAnimationCurveEaseIn
                             animations:^{
                                 mainView.frame = CGRectMake(0, 0, 320, 420);
                                 buttonsView.transform = CGAffineTransformMakeTranslation(0, 68);
                                 radioBar.transform = CGAffineTransformMakeTranslation(0, -50);
                                 goha_news_controller.view.frame = CGRectMake(0, 0, 320, 420);
                                 goha_news_controller.feed_table.frame = CGRectMake(0, 0, 320, 420);
                                 if(goha_news_controller.backgroundView)
                                 {
                                     goha_news_controller.backgroundView.frame = CGRectMake(0, …
Run Code Online (Sandbox Code Playgroud)

animation lag uiview uiviewanimation ios

2
推荐指数
1
解决办法
2471
查看次数

SwiftUI 按钮选择

我正在尝试掌握 SwiftUI 概念(完成了 Apple 的 SwiftUI 教程),但在 UIKit 十年之后对我来说似乎很难。

我需要通过单击 HStack 中的多个按钮(UIKit 的isSelected)来切换它们的状态,并更改它们的字体和文本(在 UIKit 世界中,我会attributedTextif语句中使用属性检查isSelected属性,全部在@IBActionon TouchUpInside)。

我的第一个想法是在其操作块中获取 Button 的“引用”,但感觉这不是 SwiftUI 方式(甚至不可能)。我找到了使用 Configurator 及其 isPressed 属性的解决方案(这不是我搜索的内容),但我需要 Button 实际上像切换一样。SwiftUI 中是否有任何内置的 isSelected 替换,或者我必须使用 @State 或 @BindableObject 来制作我自己的 View 实现来封装一些手势识别器(看起来很丑)。提前致谢!

button selected uibutton swift swiftui

1
推荐指数
1
解决办法
5211
查看次数