mediamuxer相关内容

无法停止复用器

我遇到了媒体复用器的问题。为什么我的应用程序崩溃了?解决方案是什么? java.lang.IllegalStateException: Failed to stop the muxer at android.media.MediaMuxer.nativeStop(Native Method) at android.media.MediaMuxer.stop(MediaMuxe ..
发布时间:2022-07-21 18:53:36 移动开发

在android中的视频上添加水印位图:4.3's MediaMuxer or ffmpeg

这是我的场景: 从网上下载 avi 电影 打开位图资源 将此位图覆盖在电影底部的所有背景帧上 将视频保存在外部存储设备上 视频长度通常为 15 秒 这可以使用 MediaMuxer 实现吗?很高兴收到有关此事的任何信息 我一直在寻找 http://bigflake.com/mediacodec/#DecodeEditEncodeTest(谢谢@fadden),上面写着: ..
发布时间:2021-12-26 18:46:03 移动开发

android - 如何复用音频文件和视频文件?

我有一个从麦克风录制的 3gp 文件和一个 mp4 视频文件.我想将音频文件和视频文件混合到一个 mp4 文件中并保存.我搜索了很多,但没有发现任何对使用 android 的 MediaMuxer api 有帮助的东西.MediaMuxer api 更新:这是我多路复用两个文件的方法,我有一个异常.原因是目标 mp4 文件没有任何曲目!有人可以帮我将音频和视频轨道添加到多路复用器吗?? ..
发布时间:2021-12-21 14:16:31 移动开发

Android 提取解码编码多路复用音频

我正在尝试修改 ExtractDecodeEditEncodeMuxTest.java 以便从通过 Cordova 的 device.capture.captureVideo 录制的 mp4 中提取音频和视频、解码音频、编辑解码的音频样本、编码音频和复用将音频与视频一起返回并再次保存为 mp4. 我的第一次尝试只是提取、解码、编码和多路复用音频,而不尝试编辑任何音频样本——如果我能做到这一点 ..

如何使用 MediaCodec 修剪视频

我正在尝试使用 MediaProjection API 录制屏幕.我想修剪媒体投影录制的视频.有没有办法在不使用任何 3rd 方依赖的情况下做到这一点? 解决方案 经过大量挖掘,我找到了这个片段 /*** @param srcPath 源视频文件的路径.* @param dstPath 目标视频文件的路径.* @param startMs 开始时间以毫秒为单位进行修剪.设置* 如果从头开 ..

MediaMuxer 视频文件大小减少(重新压缩,降低分辨率)

我正在寻找有效的方法来减少一些视频的重量(作为 File,用于上传)并且显而易见的答案是:让我们降低分辨率!(不需要全高清或 4K,简单的高清对我来说就足够了)我尝试了很多方法,这些方法应该可以通过很多 API(需要 10 个)工作,最好的方法是使用 android-ffmpeg-java,但是......在我几乎当前的旗舰设备上,整个过程持续大约 length_of_video*4 秒,还有这个 ..

如何混合(合并)视频和音频,以便在持续时间过短的情况下音频会在输出视频中循环播放?

背景 我需要将视频文件和音频文件合并为一个视频文件,以便: 输出视频文件的持续时间与输入视频文件的持续时间 输出文件中的音频将仅是输入音频文件中的音频.如果太短,它将循环到结尾(如果需要,可以在结尾停止).这意味着一旦音频完成播放而视频没有播放完,我应该一次又一次地播放,直到视频结束(音频连接)为止. 如我所读,此合并操作的技术术语称为“混合". 作为示例,假设我们有一个 ..
发布时间:2021-04-12 19:37:29 移动开发

使用mediacodec和mediamuxer同步音频和视频

您好,如何同时提供音频数据和视频数据发送到MediaMux ,它说,要同步音频和视频,您必须“计算每个视频帧应播放的音频样本的数量",公式将如何?你能给我一些例子吗?如果我从视频汲取编码器功能上的AudioRecord读取音频数据怎么办?谢谢 解决方案 我找到了答案. 这取决于采样率和帧频: 24fps和48000Hz时每帧很长(48000hz/24fps)= 2000个样本 ..
发布时间:2021-04-04 20:12:13 移动开发

Android Mediamuxer Moov原子

我正在使用Mediacodec和Mediamuxer api记录设备屏幕,一切都很好. 现在,我想在记录时流式传输此文件,但是直到muxer停止并且在文件末尾写入moov atom之前,我无法这样做. 所以我的问题是什至有可能使用Mediamuxer吗?如果不是,那还有什么替代方法? 解决方案 否,这不可能. 要在写入文件时发送MP4文件,您需要写入碎片化的MP4,而Me ..
发布时间:2020-08-27 20:04:20 移动开发

为什么"MediaCodec CodecException"在"queueInputBuffer"中只在Android API 29上发生?

基本信息 targetSdkVersion 28 目标:该课程的目的是在将视频发送到我的服务器之前调整其大小. 问题:无论是在实际设备上还是在使用AVD时,该应用程序仅在API 29上崩溃.例如,该代码可以在 Pixel 2 API 28 上正常运行,而不能在 Pixel 2 API 29 上正常运行 源代码:我主要使用 错误消息(有关详细日志,请参见下文): E/An ..

从Lottie JSON文件制作视频并使用FFMPEG将其与原始视频覆盖时出现问题

关于使用FFMPEG视频处理库和MediaCodec处理Lottie动画,存在一些独特的概念.在这种情况下,我想用Lottie动画制作视频,然后将该视频叠加到其他原始视频上. 但是问题是我无法从Lottie动画制作具有透明背景的视频.因此,我使用MediaCodec和MediaMuxer从Lottie动画制作了简单的视频,它从Lottie Drawable中抽出一帧并将其附加到视频(Lott ..
发布时间:2020-08-27 20:01:42 移动开发

如何修剪Uri中的视频,包括`mp4parser`库可以处理的文件,而是改用Android的框架?

背景 在过去的几天中,我致力于制作可定制的,更新版本的视频修整库,问题 在大多数情况下,我已经成功实现了它的可定制性,甚至将所有文件都转换为Kotlin,但是修剪本身存在一个主要问题. 它假定输入始终是一个文件,因此,如果用户从返回Uri的应用选择器中选择一个项目,则会崩溃.这样做的原因不仅在于UI本身,还在于它用于修整的库( mp4parser )假定仅输入文件(或文件路径), ..
发布时间:2020-07-13 21:19:51 移动开发

在使用MediaCodec和InputSurface录制时如何丢帧?

在我的Android应用中,我想录制带延时的视频.我有一个InputSurface-> MediaCodec(编码器)-> MediaMuxer. 但是,如果我想加快视频播放速度(例如:x3),则可以得到具有很高帧频的视频.例如:以正常速度,我得到30fps的视频.如果我加快速度(x3),我将获得90fps的视频. 由于视频的帧率很高,所以我手机的视频播放器无法正常播放视频(计算机的视 ..
发布时间:2020-05-08 01:18:20 移动开发

MediaCodec signalEndOfInputStream()错误

我正在尝试使用示例代码Grafika中的Live Camera Recording(With Opengl).在Moto G上一切正常,但我在其他设备(带有Cyanogendmod 11的Galaxy Tab 2)上尝试运行,似乎该方法:signalEndofInputStream()无法正常工作,并且编码器永不停止. 有没有其他方法可以将信号发送到MediaCodec? 对不起,英语不好. ..
发布时间:2020-05-08 01:17:54 移动开发

使用MediaCodec编辑帧和编码

我能够解码mp4视频.如果使用Surface配置解码器,则可以在屏幕上看到视频.现在,我要编辑帧(添加黄线甚至更好地重叠小图像)并将视频编码为新视频.不必显示视频,现在我也不在乎性能.(如果在编辑时显示帧,如果编辑功能花费很多时间,我可能会有空隙),那么,您对此有何建议?我是否仍然使用GlSurface配置解码器并使用OpenGl(GLES),或者将其配置为null并以某种方式将Bytebuffe ..
发布时间:2020-05-08 01:17:38 移动开发

如何使用MediaCodec和MediaMuxer录制视频和音频

我能够在MediaCodec和MediaMuxer的帮助下录制(编码)视频.接下来,我需要在MediaCodec和MediaMuxer的帮助下处理音频部分和将视频与音频多路复用. 我面临两个问题: 如何使用MediaCodec编码音频.我需要编码音频和 视频在单独的线程中? 如何将音频和视频数据传递给MediaMuxer(如 writeSampleData()方法一次只获取一种类 ..
发布时间:2020-05-08 01:17:26 移动开发