问题标签 [expo-av]

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 投票
0 回答
172 浏览

react-native - 如何在 Expo-av 中同步播放多个音频文件?

在我的应用程序中,用户通过背景音轨录制自己的歌声,然后同时播放录制的音频和该背景音轨。我将 expo-av 用于我的音频系统。问题是在播放阶段音频经常不同步,因为 expo 只真正支持异步音频。有没有人对如何从高层次解决这个问题有任何建议?

我的一些想法:

  1. 将两个音频文件混合成一个文件进行播放。这几乎可以正常工作,只是录音和背景音轨也不同步。如果我确切地知道它们被抵消了多少,我可以在混合时将这种静音量添加到其中一个文件中。但是,我还没有找到一种方法来准确计算这个偏移量。
  2. 减少开始录制和播放所需的时间,使延迟不明显。我在这里发现的一些帮助是以较低的质量录制并使用较小的音频文件。这里的任何其他提示将不胜感激。
  3. 使用与 expo-av 不同的音频库。有没有想到更好地支持同步音频?理想情况下,Expo 或至少 React Native 也会支持它。
0 投票
1 回答
719 浏览

react-native - Expo av 播放对象的 onPlaybackStatusUpdate 仅在播放/停止时调用,而不是由 progressUpdateIntervalMillis 调用间隔

onPlaybackStatusUpdate 应在每 100 毫秒后返回输出,但仅在播放或停止时返回。我的代码中是否缺少某些内容。(我是 Expo 和 Expo AV 的新手)。请参阅下面用于加载和播放音频文件的代码

0 投票
0 回答
101 浏览

react-native - expo-audio 与异步存储配对,无法播放录制的声音

我正在尝试制作一个简单的 react-native 应用程序,用 expo-audio 录制声音。然后用 expo-async 存储声音。从那里我可以获取文件并再次使用 expo-audio 播放它。

这是录制+存储代码:

这是获取文件+播放代码:

这是我在尝试播放声音时遇到的错误:

0 投票
1 回答
44 浏览

react-native - 反应原生视频结束后显示按钮

我想显示一个按钮(继续),只有当我完成在 React Native 中观看整个视频时我正在观看我上传到 firebase 存储的视频

我是否有可能知道我何时到达视频的结尾?

0 投票
0 回答
151 浏览

react-native - React Native:使用 expo-av 不显示视频,但是当我使用 Inspector 并选择 Touchables 时,我可以看到元素

我已经使用命令创建了一个应用程序npx react-native init AwesomeProject,并且我使用了expo-avnpm 包和背景中的视频(占据整个屏幕)和一些可以使用Touchable Opacity. 我正在尝试使用 iOS。

我将此代码从 expo 迁移到 react-native。当我尝试加载提要时,我看不到视频或其中的任何元素,但是当我打开 Inspector 并选择 Touchables 时,我能够看到屏幕上的所有元素。

我不确定为什么会出现这种行为。

有没有人遇到过类似的问题?

0 投票
0 回答
61 浏览

react-native - React-Native:每次开始新视频时如何设置视频播放器时间

您好,我在 ios 平台上使用 react native,我有 2 个按钮可以更改视频播放器的 URL。两个按钮设置不同的 URL。这些按钮之所以起作用,是因为它们可以更改视频。

我的问题是,当我按下一个按钮(2 中的任何按钮)时,它会播放视频,但它确实从 00:00 开始。它从上一个视频结束的时间开始。

0 投票
0 回答
58 浏览

git - fork 一个 expo 模块以及如何维护它

你可能已经知道 Expo 是 React Native 开发者工具包,它带有一堆模块。

其中一个模块(expo-av)缺少我感兴趣的功能。因此,我想在其中添加一些代码,但我还不愿意贡献它,因为它足够通用。

该模块称为“expo-av”,并以某种方式嵌入到 expo 项目中,是一个链接。

我的目标是修改这个模块,所以我需要分叉它,但问题来了:

  1. “expo-av”如何发布,因为在我的 package.json 中,我可以直接依赖“expo-av”。我想我可以用我的新 git 位置替换它,对吧?
  2. 分叉 expo-av 的最佳做法是什么?我知道 git track remote 等,但这是 git repo 中的一个文件夹,这似乎是一个维护难题
0 投票
1 回答
330 浏览

react-native - 当视频在 expo-video-player 上以 react native 结束时如何提醒某些东西?

带有自定义控件的 expo-video-player 存储库对我非常有帮助(这是我基于的存储库的链接)。我想知道如何制作一个功能,当视频结束时我可以做一些事情(比如警报“视频结束”)。

代码:这是我迄今为止尝试过的:

我也尝试过这些,但它没有做任何事情:

0 投票
0 回答
21 浏览

react-native - 渲染被多次调用并产生问题,因为我正在使用 expo-av 声音

当我第一次调用此组件时,它会多次播放声音,但在第二次或第三次调用这些组件后它会正确播放。我正在使用它同时显示图像和声音,图像和文本显示正确,但声音失败。

这是我的渲染函数,我正在使用 PureComponent 但它不起作用

和 PlaySound.js

任何帮助将不胜感激

0 投票
3 回答
614 浏览

react-native - Expo AV React Native 本地声音文件问题

我正在尝试使用 react native 和 expo av 创建一个音频播放器。我可以很好地播放在线远程文件(通过 uri),而且我的代码运行良好。但是,每当我尝试播放本地文件时,它都会抛出错误:[Unhandled promise rejection: Error: Cannot load an AV asset from a null playback source]. 我现在用于音频处理的大部分代码都是通过 处理的handleAudioPlayPause,它在按下按钮时被调用。我怎样才能让这个程序毫无问题地播放本地文件?谢谢

...