iPhone:HTTP 直播,无需任何服务器端处理

2024-02-05

我希望能够将 iPhone 摄像头的帧/视频(实时)流式传输到互联网。我在一个线程中看到过(从 iPhone 传输视频 https://stackoverflow.com/questions/3444791/streaming-video-from-an-iphone)可以使用 AVCaptureSession 的 beginConfiguration 和 commitConfiguration。但我不知道如何开始设计这个任务。已经有很多关于如何将视频流传输到 iPhone 的教程,但实际上这并不是我正在寻找的。

你们能给我任何可以进一步帮助我的想法吗?


这是一个棘手的问题。你应该能够做到,但这并不容易。

一种不实时的方法(不能满足您的需求,但值得一提)是从相机捕获并将其保存到视频文件中。请参阅 AV Foundation Guide 了解如何执行此操作。保存后,您可以使用 HTTP Live Streaming 分段器生成正确的分段。 Apple 拥有适用于 Mac OSX 的应用程序,但也有一个开源版本,您可以将其改编为适用于 iOS。最重要的是,您还必须运行一个 http 服务器来为这些段提供服务。有很多 http 服务器可供您使用。

但要实时进行,首先正如您已经发现的那样,您需要从相机收集帧。一旦你有了这些,你想将它们转换为 h.264。为此你需要 ffmpeg。基本上,您将图像推送到 ffmpeg 的 AVPicture,形成流。然后,您需要管理该流,以便实时流分段器将其识别为实时流 h.264 设备。我不知道该怎么做,这听起来像是一项严肃的工作。完成此操作后,您需要有一个 http 服务器来为该流提供服务。

实际上可能更容易的是使用基于 RTP/RTSP 的流。 RTP 的开源版本涵盖了该方法,并且 ffmpeg 完全支持该方法。它不是 http 直播,但它可以很好地工作。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

iPhone:HTTP 直播,无需任何服务器端处理 的相关文章

  • Grand Central Dispatch (GCD) 调度源标志

    我最近不再使用 to GCD 调度来源 https developer apple com documentation dispatch 1385630 dispatch source create监视文件更改 效果很好 API 也变得更加
  • 如何订阅设备方向(非界面方向)事件?

    在我的应用程序中 我想在设备旋转 方向更改 的情况下调用 CCScene myscene 中的某些方法 我禁用了自动旋转 因为我希望它不会发生 问题是 我想根据我的设备方向改变场景中的重力 我的代码 void onEnter super o
  • 如何在 iPhone 中使用 XMPPFramework 创建 MultiUserChatRoom

    我正在 iPhone 中使用 XMPPFramwwork 开发聊天应用程序 我成功完成了一对一聊天 现在我想在我的应用程序中开发多用户聊天 我尝试了以下代码 但未调用 XMPPRoomDelegate 的任何委托方法 我如何开始创建聊天室
  • 移动物体而不实际接触物体

    我是 iPhone 开发的初学者 我一直在寻找这个问题的答案 但还没有找到任何东西 我想做的是允许用户移动对象而无需实际触摸该对象 他们可以触摸屏幕上的任何位置 并且当他们移动时 对象将从原来的位置向用户的方向移动移动但不会跳到他们的触摸位
  • 如何打开/关闭 iPhone 相机闪光灯 swift 2?

    我正在寻找如何打开 关闭 iPhone 的相机闪光灯 我发现了这个 IBAction func didTouchFlashButton sender AnyObject let avDevice AVCaptureDevice defaul
  • iOS:GMail API - 通过电子邮件发送附件

    我能够成功发送没有附件的电子邮件 但是 当我尝试使用 GTLUploadParamaters 上传附件时 出现 501 错误 我尝试添加照片库中附件的 NSData 以及仅发送图像的 URL 在这两种情况下我都得到了同样的错误 Create
  • 将 WebStorm 与 Parse.com 结合使用

    我对包括 WebStorm 在内的 Web 开发完全陌生 但我确实了解游戏开发 因此我在 iOS 游戏中多次使用 Parse com 我知道 Parse 有一个 JS SDK 但是我如何将其与 WebStorm 一起使用 整个网络服务器对我
  • iPhone触摸形状或原始数据

    有人知道是否可以检测触摸形状吗 也许通过获取原始触摸屏数据 我在这里找到了这个问题 答案 如何获取原始触摸屏数据 https stackoverflow com questions 789737 iphone raw touchscreen
  • 我可以在滚动时固定表格的 tableHeaderView 位置吗?

    我有一个表视图 并在其 tableHeaderView 上附加了一个 UISegmentedControl 如何使 tableHeaderView 固定 以便即使在滚动表视图时也始终可以在同一位置查看 UISegmentedControl
  • iPhone 中的 UIGlassButton

    有人使用 Glass Button 提交过申请吗 获得批准了吗 我正在尝试使用彩色圆形按钮 但不想使用这些技巧 如何在 iPhone 上设置按钮背景颜色 https stackoverflow com questions 372731 ho
  • 如何使用 xcode 3.1.3 处理 iAd

    目前我正在集成 iAds 并制作该应用程序的精简版 我的问题是以前我使用的 iAds 是 xcode 4 1 3 但目前我使用的是 xcode 3 1 3 iAds 不支持我们所做的 请帮助我 NSString contentSize UI
  • iOS:保持应用程序在后台运行

    如何让我的应用程序在后台运行 我需要越狱我的 iPhone 才能执行此操作吗 我只需要这个应用程序每隔设定的时间间隔从互联网上检查一些内容 并在需要时发出通知 以供我自己使用 是的 不需要越狱 查看本文档的 实现长时间运行的后台任务 部分A
  • 如何查找哪个注释发送了showDetails?

    如何查找哪个注释发送了showDetails MKPinAnnotationView customPinView MKPinAnnotationView alloc initWithAnnotation annotation reuseId
  • UITextField 字体大小在开始或停止输入字符时发生变化

    我见过很多线程 但没有找到解决这个问题的任何具体解决方案 我使用 XIB 创建了 UITextfield 尚未以编程方式对该字段执行任何操作 一旦我开始打字 文本字段的字体就会改变 一旦我将焦点移出文本字段 并且随着键盘消失 字体大小就会减
  • 在 Objective C 中使用下划线作为属性名称前缀 [重复]

    这个问题在这里已经有答案了 我以前避免在变量名中使用下划线 这可能是我大学 Java 时代的遗留下来的 因此 当我在 Objective C 中定义属性时 我自然会这样做 In the header interface Whatever N
  • iOS Swift 检测键盘事件

    我能以某种方式检测来自 iOS 键盘的事件吗 我想检测此类事件UIViewController哪个没有UITextField或任何此类物体 我只有四个圆圈UIView我想在按下键盘上的按钮时将它们涂成不同的颜色 您没有任何对象可以从键盘获取
  • 如何使用 ZBar 读取器的 scanCrop 属性?

    我正在使用 iPhone 的 ZBar SDK 来扫描条形码 我希望阅读器仅扫描特定的矩形而不是整个视图 为此需要将阅读器的 scanCrop 属性设置为所需的矩形 我很难理解必须设置的矩形参数 有人可以告诉我如果在纵向视图上它的坐标是 我
  • iPhone 标签栏上的未读计数

    在 Cocoa Touch 上实现 TabBar 上图标的未读计数的最佳方法是什么 我想模仿 SMS 或邮件应用程序的行为 向我的应用程序的用户显示未读消息计数 并使用包含数字的红点 您正在寻找的属性称为徽章 您可以通过执行以下操作来设置它
  • 为什么 GDB 调试器不断冻结 Xcode 4?

    这真是一个奇怪的错误 我正在开发一个使用相机源的 iPhone 项目 并通过 OpenGL 着色器运行它以对其应用效果 然而 每次我在代码中简单地创建一个新的 GLfloat 时 调试器都会在启动时冻结 我无法复制和粘贴文本 因为整个 XC
  • 应用未能及时恢复

    我在一个非常具体的场景中遇到 未能及时恢复 崩溃 我认为与看门狗相关 仅在从后台恢复时 并且仅在进入后台后在很短的时间内执行此操作 a最多几秒钟 这似乎是相关的崩溃日志 Incident Identifier E30F2238 5B15 4

随机推荐

  • Django数据迁移FieldError

    我有一个模型 class User AbstractUser kind models ForeignKey UserKind blank True null True 当我尝试在迁移中更改某些用户时 def forward apps sch
  • 在二维数组中随机生成簇

    我正在创建一个 2d 图块游戏 并且想知道在其中生成特定图块类型的簇的最佳方法是什么 例如 假设我有一个二维数组 它是我的地图 草用0表示 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
  • 在 ruby​​ 中转义字符串中的单引号和双引号?

    如何转义字符串中的单引号和双引号 我想一起转义单引号和双引号 我知道如何分别通过它们 但不知道如何同时通过它们 e g str ruby on rails ruby on rails 我首选的方法是不用担心转义 而是使用 q 其行为类似于单
  • 如何修复 IPython 的“ImportError:没有名为 shell 的模块”错误

    我看到很多人建议我使用以下代码片段来嵌入 IPython shell 或从例如 中删除到 IPython shell Django 视图 from IPython Shell import IPShellEmbed ipython IPSh
  • 访问数据项目错误

    我有一个连接到 SQL Server 数据库的 Access 数据项目 最近我从SQL Server修改了数据库的结构 现在 每当我尝试打开其中一张表时 都会收到以下错误 Microsoft Office Access 找不到对象 SELE
  • Jetty(错误)配置:它不会从外部机器响应......为什么?

    我在 ubuntu 11 机器上安装了 jetty sudo apt get install jetty 之后我配置了上下文 war 文件和 NO START 变量 当我在同一台机器上测试时 一切正常 例如 curl http localh
  • 如何使用 Docker 在 Alpine Linux 上部署 Laravel Web 应用程序?

    我使用 PHP 的基础镜像在 ECS 上成功部署了 Laravel Web 应用程序 特别是7 3 apache stretch from https hub docker com php https hub docker com php
  • iFrame src 不是 javascript:false 但效果相同

    还有其他写法吗javascript false那个更令人愉快 我正在为 Intranet 应用程序 适用于 IE6 构建打印功能 并使用 iframe 制作打印页面 body append printIFrame attr style po
  • 以编程方式取消 aws s3 中文件的加密设置

    I m performing an android build via aws code build The apk files generated are by default applied with server side encry
  • 无法调用 std::max 因为 minwindef.h 定义了“max”[重复]

    这个问题在这里已经有答案了 我将如何实际调用 std max 该代码无法在 Visual Studio 2013 中编译 因为它采用 max 作为宏 std max 在 std 之后需要一个标识符 您可以取消宏定义 undef max Ed
  • 在资源管理器中打开

    如何通过 C 代码在资源管理器中打开路径 我用谷歌搜索 除了系统命令之外找不到任何东西来执行此操作 但是 我不希望它阻止或显示控制台窗口 您可能正在寻找ShellExecute http msdn microsoft com en us l
  • 将 Laravel 5.0 升级到最新版本(7.x)

    我被分配了一个旧的 Laravel 项目 版本 5 0 第一个任务是将 Laravel 从5 0版本到最新的版本 7 x 截至今日 从 Laravel 文档中 我发现这将需要一个痛苦的漫长过程 我知道有一项付费服务 叫做Laravel 转变
  • 如何从表中获取第二大或第三大条目[重复]

    这个问题在这里已经有答案了 谁能告诉我如何找到表中第 N 个最大的条目在甲骨文中 就像我们可以使用的最大的MAX 列名 有没有有效的方法来找到第n大的 SELECT FROM SELECT some column row number ov
  • 如何在android中保持按钮的固定宽高比

    我有一组水平布局的按钮 我已将可绘制图像设置为每个按钮的背景 但是 当我将线性布局设置为跨越屏幕宽度时 按钮会失去其纵横比 我想保持其纵横比不变 我的意思是 无论屏幕分辨率是多少 我都必须在整个应用程序中保持它的方形 我怎样才能做到这一点
  • 广度优先搜索中的计数级别(起始节点和目标节点之间的距离)

    谁能帮助我如何使用Java中的广度优先搜索来计算图表的访问级别 这是我的方法 我有起始节点 str 和结束节点 目标 当循环到达目标节点时应该停止 我现在想要的是计算从起始节点到结束节点的级别 public void bfs String
  • 我应该用鸭子类型语言定义接口吗?

    我正准备用鸭子类型语言 Groovy 编写我的第一个应用程序 如果我要用静态类型语言编写相同的应用程序 那么我需要定义一些接口 显然 由于 Groovy 中的鸭子类型 它们实际上并不是必需的 目前我认为无论如何将它们定义为需要在各种对象中实
  • Rails 中的请求 URI 太大

    我有两个相同 Rails 应用程序的运行环境 一是开发 二是分期 当我尝试在开发环境中运行我的应用程序时 它运行良好 没有任何异常 但是当我尝试在登台上运行相同的应用程序时 它会抛出请求 URI 太大错误的异常 我在开发和登台时都使用 we
  • Git 签出和合并而不触及工作树

    假设我有一个功能分支 我在将更改推回之前将上游更改合并到其中 git branch feature1 edit my code commit git fetch origin master git merge fetch head or r
  • 焦点放在与 Angular 中其他元素冲突的元素上

    I have focusout 事件于element1 and click 事件于element2 什么时候element1由于执行了单击事件而失去焦点element2 只有 focusout 被触发 click 事件没有被触发 这在 jQ
  • iPhone:HTTP 直播,无需任何服务器端处理

    我希望能够将 iPhone 摄像头的帧 视频 实时 流式传输到互联网 我在一个线程中看到过 从 iPhone 传输视频 https stackoverflow com questions 3444791 streaming video fr