问题标签 [m4a]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
414 浏览

objective-c - 从 m4a 或 wav 解析标题?

如何轻松地从 iOS(objective-c) 上的 wav 或 m4a 文件中解析标题?

感谢您的解决方案。

0 投票
1 回答
1143 浏览

asp.net - 在 ASP.NET 上转换 m4a -> mp3

我目前将 mp3 发布到网站并将其流式传输给用户。但是,我在 m4a 中录制,除非您使用 flash 或一些特殊的 html5 实现,否则它不会流式传输。

我希望能够将 m4as 上传到该站点并将其转换为 mp3。

有一些实现为 .net 包装了 ffmpeg,但很少有任何文档(FFLIB.NET、FFmpeg.NET、FFMpeg-sharp),尤其是非视频格式。

有没有人对解决这个问题有任何想法,或者可能有一些替代方案?我不相信我的主机(Arvixe)在其 ASP.NET 包上支持 Python ......

编辑:我选择了豪尔赫的答案,以评论作为进一步的背景,它主要回答了我的问题。

0 投票
1 回答
1104 浏览

ios - 使用 AudioFileStreamParseBytes 通过读取文件来解析字节不会调用 kAudioFileStreamProperty_ReadyToProducePackets

我试图通过打开一个音频文件(M4A)来解析字节,在循环中读取 2048 个字节并将其传递给 AudioFileStreamParseBytes。这不会使用属性调用回调kAudioFileStreamProperty_ReadyToProducePackets。但是该属性kAudioFileStreamProperty_FileFormat被成功调用。(所以我知道回调机制正在工作。)

问题

  1. 我可以AudioFileStreamParseBytes通过读取本地文件来解析音频数据吗?大多数示例显示如何AudioFileStreamParseBytes通过解析HTTP流数据来使用,而不是从本地文件中读取。
  2. 有没有人尝试过上述操作并成功处理音频文件?

注意:我不使用AudioFileOpenWithCallbacks打开 m4a 文件的原因是 api 调用在本地下载后无法打开以下文件(http://www.arsenal-music.com/podcast/arsenal-podcast-05. m4a )。此 m4a 文件中嵌入了图像,AudioFileOpenWithCallbacks无法解析该文件。同时,我使用了 Matt GallagherAudioStreamer代码来打开这个文件,解析它并正常播放。所以我倾向于AudioFileStreamerParseBytes通过从本地文件中读取数据来使用。(据我了解,数据是来自 HTTP 流还是来自本地文件应该没有区别。但我可能是错的。)

我在任何 API 调用中都看不到任何错误(以防有人问我这个问题)。如果需要,我可以粘贴代码,但我只想知道从文件读取并将其传递给的方法AudioFileStreamParseBytes是否有效?

0 投票
0 回答
182 浏览

iphone - 将 caf 导出到 iTunes

我有一个创建 caf 文件的程序,我希望能够导出它。我的程序允许您使用 UIActivityViewController 导出,但如果您将其传递给 m4a 或 wav 文件,它只会让您通过电子邮件发送文件。我想将声音添加到用户的 iPod 音乐中。我错过了一些简单的事情吗?我知道苹果有其他的钩子,但想做和语音备忘录一样的工作。

谢谢

卢克

0 投票
0 回答
1325 浏览

vb.net - 以编程方式将 M4A 转换为 MP3

我想创建一个工具,您可以在其中输入大量.m4a文件,然后将它们转换为标签.mp3并按标签排序id3

排序代码已经完成并且运行良好,但我找不到转换.m4a.mp3.

任何人都有一些不错的片段/链接/提示我可以使用?

0 投票
1 回答
968 浏览

actionscript-3 - org.osmf.media.MediaPlayer 抛出错误:当前不支持指定的功能

我有一个后端 sound.php,它可以从 Web 服务器返回 .m4a 声音文件,我可以向 sound.php 发出带有 id 的 Web 请求以返回指定的 .m4a 文件。即sound.php?id=1234

我现在正在尝试使用 org.osmf.media.MediaPlayer 和 AudioElement 和 URLResource

并且它抛出当前不支持指定功能的错误。我已经通过浏览器测试了链接,该链接成功返回了一个 .m4a 文件。

我不明白它是声明请求方法还是返回文件,有人知道吗?谢谢

0 投票
0 回答
591 浏览

c++ - mp3 和 m4a 频率分析

我正在使用 FMOD 的 getSpectrum 函数和 Windows 上的其他实用程序对 mp3 文件进行一些频率分析。它工作得很好,但后来我尝试从 iTunes 加载一个 .m4a 文件,并了解到 FMOD 在 Windows 上不支持该格式(仅限 iOS)。

我正在编写一个几乎可以在 Windows 和 iOS 上运行的 mp3 和 m4a 格式的均衡器。我正在用 C++ 创建它。

是否有我可以使用与 FMOD 具有类似功能的 api 或中间件来执行此操作?我一直在寻找,但没有太多运气。

谢谢

0 投票
1 回答
1421 浏览

ffmpeg - 有没有办法使用带有编解码器 AAC 到 AAC 的 ffmpeg 获得准确的 1 秒剪辑

如果我有一个带有视频流和音频流的 .mp4 文件。如果我执行这个命令:

结果是持续时间:00:00:01.02,开始:0.021179。我想确保开始时间从 0 开始,所以我使用以下方法重新采样:

此命令的结果有 Duration: 00:00:01.02, start: 0.000000。有没有办法让 1 秒作为最终结果,开始值为 0?

我在以前的尝试中使用了标志 -map 0:1 -ab 128k -ar 44100 但它提供了相同的结果。

如果需要,我可以提供 ffmpeg 的完整输出。

谢谢。

0 投票
2 回答
5111 浏览

shell - ffmpeg - 元数据中的多行文本(注释标签)

我使用 ffmpeg 像这样更新元数据标签:

好吧,“艺术家文本”和“评论文本”通常是纯文本,但评论字段允许放置多行文本。每行必须有换行符才能做到这一点。像这样的东西:

但是我使用的所有字符 (\r\n, %nl%, ^N) 都没有结果。

我使用shell_exec()函数从Windows上的PHP脚本运行ffmpeg.exe

请高人帮忙,或者告诉我这真的可能吗?...

0 投票
3 回答
3948 浏览

ios - AudioPlayer iOS 和 m4a

我制作了一个使用 AVAudioPlayer 播放音乐的应用程序。它上传或下载歌曲,将它们写入核心数据,然后在选择时调用它们进行播放。我测试过的所有 15 首歌曲都可以在 iPhone 音乐客户端和我自己的电脑上正常运行。

但是,其中三个没有在应用程序上播放。具体来说,我可以按任意顺序上传这十五首歌曲,清空我的Model.sqlite,重新下载到app里,发现其中三首就是不播放。然而,他们确实有正确的标题和艺术家。

对此进行调查,我注意到不同之处在于非工作文件是 .m4a。如何使用 AVAudioPlayer 播放该格式的文件?

编辑(“什么“召回?”,你用什么 URL 初始化 AVAudioPlayer?”):

有一个服务器,其中包含用户可以通过应用程序访问的歌曲。在选择要检索的子集 S 之后,应用程序会下载 S 并使用 NSManagedObjectContext 将其写入 CoreModel。每首歌曲都存储为具有唯一 ID 和与子集实体(在本例中为 S)的关系的单独实体。

当我使用 AppDelegate “调用”以使用上下文获取正确的歌曲时,数据也会返回。然后我像这样初始化 AVAudioPlayer:

...所以我写了那个然后意识到我实际上并没有检查出错误是什么(愚蠢的我)。我发现它是OSStatus error 1954115647,它作为不支持的文件类型返回。仔细研究一下,我发现了这个iPhone: AVAudioPlayer unsupported file type。那里提出了一种解决方案,即在开始时修剪不良数据或从 URL 的内容进行初始化。是否可以在核心模型中找到数据写入的位置以将其作为 URL 提供?

编辑:(比较文件。它们不同吗?)

对,他们是。我正在从我的服务器上获取一个示例 .m4a 文件,该文件由应用程序上传,并将其与 iTunes 中的文件进行比较。我发现文件在偏移量 229404(共 2906191 个字节)之前被截断,它开始于20680001 A0000E21. 在 iTunes 版本中,0028D83B 6D646174位于这些字节之前。在此之前是一大块零,前面是一大块数据,前面是 iTunes 编码信息。最顶部是更多的编码信息,将文件列为 M4A。