mediaextractor相关内容

Android MediaExtractor 和 mp3 流

我正在尝试使用 MediaExtractor/MediaCodec 播放 mp3 流.由于延迟和长缓冲区大小,MediaPlayer 是不可能的. 我发现的唯一示例代码是:http://dpsm.wordpress.com/category/android/ 代码示例只是局部 (?) 并且使用文件而不是流. 我一直在尝试调整此示例以播放音频流,但我无法理解它应该如何工作.像往常一 ..
发布时间:2021-11-27 19:41:58 移动开发

视频解码期间的采样时间/演示时间不一致

我正在编写一个应用程序,可以通过摄像头输入对视频进行编码,并通过解码-编辑-编码步骤处理视频.对于相机,我使用 Camera 类而不是 Intent 来配置相机的详细信息设置.然后我将相机帧提供给编码器(API 16 中的 MediaCodec)和多路复用器(我使用 ffmpeg 多路复用器,因为我想在 4.1 设备上工作). 我通过系统纳米时间测量相机帧的时间码,并选择帧子集以适合所需的 ..
发布时间:2021-11-27 19:40:13 移动开发

如何处理Android MediaCodec解码器的第一个输出ByteBuffer?

我正在尝试使用Android的MediaCodec套件编写音频重采样器. 我目前正在将MP3立体声音频文件输入到MediaExtractor中,然后由MediaCodec对其进行解码.源音频的采样率为48000. 我不理解的是我从解码器接收到的前四个输出缓冲区: 大小0,时间0 大小0,时间24000 大小4312,时间48000 大小4608,时间72000 大小460 ..
发布时间:2020-05-08 01:17:45 移动开发

Android上的RTSP客户端实现

我已经看到许多与此有关的问题.尽管如此,我认为我的答案仍然没有. 我想使用Android上已经编码的RTSP客户端与MediaCodec一起使用,以便捕获H264中的RTSP流,然后对其进行解码和显示.我使用了众所周知的VideoView和MediaPlayer来支持.setDataSource方法(文件或rtsp/http路径)中的RTSP流(与仅支持文件或http的MediaExtrac ..
发布时间:2020-05-08 01:17:40 移动开发

ExtractMpegFramesTest在Android中以人像模式录制的视频出现问题

我正在关注 ExtractMpegFramesTest 帖子,以从视频中提取PNG帧. 这适用于以横向模式录制的视频,但不适用于以纵向模式录制的视频. 有人知道如何使用上述链接中提供的解决方案从人像视频生成PNG帧吗? 我已经用720p和1080p视频进行了测试. 我观察到的事物是 MediaExtractor给出720p视频的宽度和高度1280和720,而与方向无关.横向 ..
发布时间:2020-05-08 01:17:10 移动开发

Android MediaCodec向后搜索

我正在尝试使用MediaCodec和MediaExtractor对视频进行精确搜索.通过遵循Grafika的 MoviePlayer ,我已成功实施了前瞻性搜索.但是,我仍然在向后搜索中遇到问题.相关的代码位在这里: public void seekBackward(long position){ final int TIMEOUT_USEC = 10000; int inp ..
发布时间:2020-05-08 01:16:51 移动开发

Android MediaCodec如何准确地修剪音频帧

我正在构建在Android上精确地修剪视频文件的功能.使用MediaExtractor,MediaCodec和MediaMuxer实现代码转换.我需要帮助截断任意音频帧以匹配其视频帧. 我相信音频帧必须在解码器输出缓冲区中进行修整,这是可以将未压缩的音频数据进行编辑的逻辑位置. 对于进/出修剪,我正在计算原始音频缓冲区的必要偏移量和大小调整,以将其刺入可用的端盖帧中,并使用以下代码提交 ..
发布时间:2020-05-08 01:16:26 移动开发

Android精确搜索视频

我正在努力使用MediaExtractor的seekTo()进行精确查找.虽然我可以尝试无问题地同步帧,但我想尝试特定的时间. 这个问题使我想到了一些实现方法,但是我不确定它们是否有效.基本上,我将必须先寻找最接近的上一个同步帧,然后再提取advance()直到达到目标时间.该过程中的每个帧将被馈送到解码器,即第一个I帧和其余的P帧.这是相关的代码段(基于 google/grafika 的Movi ..
发布时间:2020-05-08 01:15:21 移动开发

使用MediaCodec和MediaExtractor解码和编码视频

我需要将视频解码为位图序列,以便能够对其进行修改,然后将其压缩回android中的视频文件. 我计划通过使用getFrameAtTime并将其保存到图像序列中来对其进行管理.然后,我可以按顺序修改图像并将其编码回电影中.但是我有两个问题: 首先,在我阅读本文时,getFrameAtTime用于创建缩略图,并且不能保证返回正确的帧.这使视频变得迟钝. 第二,保存图像并读回它需要很长时间 ..
发布时间:2020-05-08 01:15:16 移动开发

在我的android上,使用opengl曲面将一个H.264视频重新编码为另一个视频非常慢

我正在开发将视频转换为另一视频并为每个帧添加其他效果的功能.我决定使用opengl-es在每个帧上应用效果.我的输入和输出视频是使用H.264编解码器的MP4. 我使用MediaCodec API(Android API 18+)将H.264解码为opengl纹理,然后使用此纹理与着色器在表面上绘制. 我认为将MediaCodec与H.264结合使用会在android上进行硬件解码,而且速度很快. ..
发布时间:2020-05-08 01:14:55 移动开发

使用MediaDrm在Android中解密widevine DRM保护的视频

我正在使用Android的MediaDrm API解密widevine DRm保护的媒体文件。 但是使用UUId(DRM-scheme)实例化MediaDrm。 Android开发人员网站说 “App通常从内容中的元数据访问DRM方案识别UUID,并使用此UUID构建MediaDrm对象的实例,能够支持内容所要求的DRM方案“。 (www.developer.android.com/re ..
发布时间:2017-08-18 01:47:03 移动开发