实时音频流容器格式

2024-01-25

当我开始接收实时音频(无线电)流(例如 MP3 或 AAC)时,我认为接收到的数据不是原始比特流(即原始编码器输出),但它们总是被包装成某种容器格式。如果这个假设是正确的,那么我想我无法从流的任意位置开始流式传输,但我必须等待某个同步字节。是对的吗?通常会有一些同步字节吗?同步字节后面是否有任何标头,我可以从中猜测使用的编解码器、通道数、采样率等?

当我连接到实时流时,我会收到从最近的同步字节开始的数据,还是会从实际位置获取数据,并且我必须首先检查同步字节?

像icecast这样的一些流在HTTP响应中使用标头,其中包含与流相关的信息,但我认为我可以跳过它们并直接处理steam格式。

那是对的吗?
问候,
STeN


当您查看 SHOUTcast/Icecast 时,遇到的数据是纯 MPEG Layer III 音频数据,仅此而已。 (前提是您没有请求元数据。)

It can在任意位置被剪切,因此需要同步到流。这通常是通过查找潜在的标头并使用该标头中的数据来查找顺序标头来完成的。一旦找到一些帧头,您就可以安全地假设您已同步到流并开始解码以进行播放。

同样,这些没有“容器格式”。这只是原始数据。

现在,如果您想要元数据,则必须从服务器请求它。然后,数据每隔一段时间就被注入到流中x字节数。看http://www.smackfu.com/stuff/programming/shoutcast.html http://www.smackfu.com/stuff/programming/shoutcast.html.

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

实时音频流容器格式 的相关文章

  • MediaElement 是否仅在嵌入 XAML 代码时才播放?

    我有一个声音播放器类 根本没有任何视觉效果 我正在尝试使用MediaElement播放我的声音 在所有的测试项目中 MediaElement嵌入到 XAML 代码中 它工作得很好 但是 在我的纯代码版本中 即使文件已完美加载 我可以在调试器
  • 如何添加持久媒体控件,例如 Apollo 或 Google 音乐

    I would like to add music controls such as play pause next and back as well as show a thumbnail and song title to the bo
  • PyAudio 输入溢出

    我正在尝试用 python 发出实时绘图声音 我需要从我的麦克风中获取数据块 使用 PyAudio 尝试使用 import pyaudio import wave import sys chunk 1024 FORMAT pyaudio p
  • Python 中的跨平台音频播放

    是否有用于音频播放的跨平台 Python 库 我的目标操作系统是 按重要性排序 Windows Linux 和 Mac OSX 需要支持的文件格式是 按重要性排序 MP3 OGG WAV 和 FLAC 这样的事情存在吗 我尝试了一些可用的
  • Vista/Win7 Delphi 音频设备信息

    有没有办法在 Vista 或 Win 7 上使用 delphi D2009 获取所有音频设备名称 我设法获取设备数量 并使用 IMMDevice 获取设备 PropertyStore 但我无法继续 多谢 ask the PropertySt
  • FFT 的窗口大小与数据长度

    我正在尝试对流音频数据进行快速频谱分析以捕获元音 类似于 JLip sync 使用 PyAudio 在短时间内 0 0625 秒 捕获小块 1024 的语音数据 使用 numpy fft 进行分析 并使用 numpy hanning 窗口消
  • 实时录制/将音频数据转换为 WAV

    我在音频信号处理方面是新手 目前 我已将设备连接到我的电脑 该电脑从麦克风 播放轨道向我发送音频数据 我已经使用 Steinberg ASIO SDK 2 3 创建了主机应用程序 该应用程序连接到设备并在重复回调中返回原始数据 信号是 24
  • 实时获取 macOS 输出设备音频缓冲区

    我试图tapmacOS 上当前选择的输出音频设备 因此我基本上有一个直通侦听器 可以监视当前正在输出的音频流而不影响它 我想将这些数据实时复制到环形缓冲区 以便我可以单独对其进行操作 Apple 文档和 过时 SO 答案的结合令人困惑 我是
  • 在流 #1 中找不到编解码器 pcm_alaw 的标签,使用 ffmpeg 连接 2 个文件时容器当前不支持编解码器 [关闭]

    Closed 这个问题不符合堆栈溢出指南 help closed questions 目前不接受答案 我正在尝试连接两个文件 第一个文件包含音频和视频 第二个文件仅包含视频 我用以下ffmpeg命令 ffmpeg command ffmpe
  • 在 IE 中使用 html 音频:MEDIA12899:音频/视频:未知的 MIME 类型

    html如下
  • 如何用C语言播放MP3文件?

    我正在寻找在 C 中播放 MP3 文件的最简单方法 我正在寻找一个库 在其中我可以只调用文件名上的函数 或者一个将运行并退出的可执行文件 请建议 Using FMOD http www fmod org download 跨平台 这应该像这
  • Pydub 按样本切片音频片段

    假设我有两个采样率相同的音频片段 它们是从 Pydub 中的 wav 文件导入的 并且假设我知道哪个更短 现在假设我想将较长的音频文件分成两个片段 以便第一个片段与较短的音频文件具有完全相同的长度 精确到相同的样本数量 并将这两个片段中的每
  • 在 jupyter 中 for 循环播放音频

    我有大量需要注释的训练数据 为了做到这一点 我需要听一堆声音片段并记下我听到的内容 我在笔记本上为此写了一个小脚本 我的主要问题是 IPython 显示不循环显示 举个例子 import numpy import IPython displ
  • Clojure/Java:用于声音频谱分析的 Java 库? [关闭]

    Closed 此问题正在寻求书籍 工具 软件库等的推荐 不满足堆栈溢出指南 help closed questions 目前不接受答案 我正在寻找一个可以接受大量音频数据并返回给定频带内随时间变化的平均幅度的库 我已经在 comp dsp
  • 通过iPhone音频插孔读取数据

    我正在寻找一种方法来读取通过 iPhone 的音频插孔从 Arduino 发送的原始数据 我搜索了很多并发现this https github com sanjibahmad Is Headphone Plugged In tree mas
  • 将每分钟的 MP3 导出为单独的 WAV

    这绝对是一个奇怪的问题 但我正在寻找一种方法 将 60 分钟的 mp3 混合拆分为 60 个单独的 1 分钟长的 wav 文件 以便与 Echonest 等音频指纹识别 API 一起使用 这是否可以在单个 ffmpeg 命令中实现 或者我是
  • 如何在 PhantomJS 中使用 JavaScript 检测网页上的声音?

    我需要检测带有横幅的网页中的所有声音 我怎样才能做到这一点 我查看 PhantomJS 但找不到浏览器声音的 API PhantomJS 1 x 和 2 不支持 Flash
  • 如何阻止诱变剂自动更新 ID3 版本?

    当我尝试在 MP3 中嵌入专辑封面时 诱变剂将 ID3 标签更新为版本 2 4 我不希望这样做 因为在 ID3v2 4 中 我的手机 运行 Windows Phone 8 和我的计算机无法识别标签 显然 只需更改mutagen id3 ve
  • 我应该使用哪种协议来传输音频(非直播)? [关闭]

    就目前情况而言 这个问题不太适合我们的问答形式 我们希望答案得到事实 参考资料或专业知识的支持 但这个问题可能会引发辩论 争论 民意调查或扩展讨论 如果您觉得这个问题可以改进并可能重新开放 访问帮助中心 help reopen questi
  • 检查系统是否有声音 C#

    我们目前正在使用 XNA 开发一款游戏 但我们偶然发现了一个小声音问题 当系统没有插入声音设备 扬声器等 当 Win7 在扬声器图标上显示红十字时 它在尝试播放 加载声音时崩溃 因此 我们想检查系统是否具有输出声音的能力 在C 中可以吗 您

随机推荐

  • Selenium - 如何获取窗口中打开的选项卡数量?

    我的测试用例 打开浏览器并访问 URL 单击主页上的链接 gt 这将打开一个新窗口 新选项卡 返回主页 单击另一个链接 确保步骤 2 中先前打开的子窗口 子选项卡上显示新内容 我可以通过获取窗口句柄的计数来检查打开的窗口数量 并断言它等于
  • Java中如何模拟文件IO?

    我怎样才能创建一个类MockFile模仿java io Filew r t 文件读写 我到处都用我自己的方法而不是new FileInputStream and new FileOutputStream 所以这部分没有问题 我总是委托给适当
  • 获取参数的调用变量名

    关于这个问题从调用方法中获取参数名称 https stackoverflow com questions 15205457 get the name of parameters from a calling method and 在 C 中
  • R 中没有重复的 Left_Join

    我想做一种vlookup 正如您所知 Excel vlookup 函数从数据中获取第一个值 另一方面 left join 函数的工作原理类似 但是 当第一个数据在查找值上不唯一时 left join 函数会重复 de 值 我想对 Excel
  • gradle 将外部插件的 jar 存储在哪里?

    我正在使用一个名为 jsonschema2pojo 的外部 gradle 插件 为此 我在 build gradle 文件中添加了以下代码 我可以成功使用该插件 但我找不到必须下载并存储在某处的 jar 在哪里可以找到为外部插件下载的 ja
  • 如何仅在 bash 中存在脚本时才执行该脚本?

    我想知道是否有一种更简单的方法可以仅在该脚本存在时才在 bash 中执行该脚本 我想要的相当于 if x name then name fi or x name name 我正在寻找的是类似的东西 exec if exist name 这消
  • Python-如何使用 re 来匹配整个字符串[重复]

    这个问题在这里已经有答案了 我正在验证用户输入的文本 以便它只接受字母而不接受数字 到目前为止 当我输入数字 例如 56 时 我的代码工作正常 它警告我应该只输入字母 而当我输入字母时 它不会返回任何内容 就像它应该做的那样 我的问题是 当
  • 使用YouTube Data API时如何避免视频信息获取的遗漏?

    假设 我想要实现的目标 我想使用YouTube Data API V3来无遗漏地获取视频ID 并找出问题的原因是在代码中还是在YouTube API端 的视频设置中 Problem 以下代码用于从YouTube Data API获取视频信息
  • “尝试向 Flutter 发送平台消息,但 FlutterJNI 与原生 C++ 分离。”启动后台服务并关闭应用程序后

    我正在尝试构建一个使用某些包作为位置的应用程序 https pub dev packages location https pub dev packages location 和指南针 https pub dev packages flut
  • 为什么采用一种定义规则,而不是一种声明规则?

    我已阅读以下材料 https www wikiwand com en One Definition Rule https www wikiwand com en One Definition Rule http en cppreferenc
  • 如何自动启用网络位置提供程序

    我正在通过网络获取纬度和经度 它给了我纬度和经度 但是如果我的NETWORK LOCATION PROVIDER未选中 它永远不会向我提供当前位置的纬度和经度 我想要的是 我怎样才能启用NETWORK LOCATION PROVIDER在不
  • Hibernate Spatial - “遇到无效的字节序标志值”异常

    我正在尝试在 PostgreSQL 9 3 上的 Hibernate Spatial 4 0 中运行一个简单的查询 我的表中有许多带有纬度 经度值的对象 并且我正在尝试查询位于特定纬度 经度的给定半径内的对象 几何值似乎没有任何问题地被持久
  • 如何在pygame中检测两个矩形物体或图像之间的碰撞

    我正在制作一款游戏 玩家必须使用碗来接住掉落的物品 我有一些列表中的项目图像和一个用于接住项目的碗的图像 物品会继续下落 如果到达边界 下边缘 就会重置到屏幕顶部 我完成了这个逻辑 允许物品掉落 但我不知道如何检测碗和物品之间何时发生碰撞
  • 在 PyAudio 模块中安装时出现错误

    经过无数次尝试后 我仍然无法安装 PyAudio 而不会出现此错误 我尝试过使用许多方法 包括 pipwin 但它没有被识别为真正的函数 如何安装 PyAudio ERROR Command errored out with exit st
  • 检查提交消息中的特定字符串 - SVN Precommit Hook

    我期望 svn 提交消息中出现以下格式 描述 更改的一些描述 实体 变更请求编号 如果提交时的注释不遵循上述格式 则应抛出错误消息 这个想法是检查提交消息中的关键字符串 Description 和 Entity 我还在检查消息中是否存在评论
  • 为每个页面添加固定的页眉/页脚 jsPDF

    我在用jsPDF https github com MrRio jsPDF从我的网络应用程序的动态 HTML 内容生成 PDF 现在我正在尝试为这些 PDF 提供独特的布局 我想为 PDF 的每一页添加 页眉 和 页脚 jsPDF 会自动生
  • 为面向文档的数据库设计记录键 - 最佳实践

    我们的团队已经开始开发由 Couchbase DB 支持的应用程序 对于我们每个人来说 这都是第一次使用非 SQL 数据库 我们已经开始定义我们的实体 并采用 Couchbase 手册建议的使用 类型 前缀的做法 Entity A key
  • iOS - RestKit 并清除所有数据?

    我使用 RestKit 进行 Web 服务调用 缓存和 etag 我实现了自己的 coredata 模型和 ManagedObjects 用户退出后 我需要清除数据库中的所有数据 我能够成功删除 sqlite 文件并重新创建它 但我找不到清
  • SQLite查询进度条

    我在用sqlite来自 C 我想实现一个进度条 通知用户搜索的进度 Using sqlite3 progress handler http www sqlite org sessions c3ref progress handler htm
  • 实时音频流容器格式

    当我开始接收实时音频 无线电 流 例如 MP3 或 AAC 时 我认为接收到的数据不是原始比特流 即原始编码器输出 但它们总是被包装成某种容器格式 如果这个假设是正确的 那么我想我无法从流的任意位置开始流式传输 但我必须等待某个同步字节 是