草庐IT

media_recorder

全部标签

android - 从 Android Media Recorder 流式传输后修复 3GP 文件

我正在尝试通过本地unix套接字从android相机流式传输视频,并将文件从流写入sdcard。一切正常,除了文件不能用任何播放器播放。这是因为Android没有填补文件中的一些空白,因为套接字不可搜索。据我了解,我需要在视频流结束后进行一些修改。我看了好几篇文章here,here和here,但他们都没有帮助我。我正在玩十六进制编辑器以学习如何手动执行此操作,因此之后在Android代码中执行相同操作将变得微不足道。这是从流中保存的示例文件:https://dl.dropbox.com/u/17510473/sample_not_playable.3gp任何人都可以修复它使其可以播放并

android - MediaStore.Images.Media.getBitmap 和内存不足错误

我的代码代码是:publicBitmaploadPhoto(Uriuri){Bitmapscaled=null;try{scalled=Bitmap.createBitmap(MediaStore.Images.Media.getBitmap(getContentResolver(),uri),0,0,90,90);if(scaled==null){returnnull;}}catch(Exceptione){}returnscaled;}在此之后。我在ImageView中显示缩放。每张图片都来自设备相机。每次显示相机中的三张照片后,我都会收到错误消息:内存不足。如何解决?

android - <录音> "Could not get audio input for record source 1"

我在为Android初始化AudioRecord时遇到了这个问题。我在网上搜索了很长时间没有成功。对于手机,我在SDK版本7上使用三星GalaxyS。对于AudioRecord初始化,我使用8000作为采样率,MONO用于channel配置,16位用于音频格式,根据日志,minBufferSize设置为4160。我已将AUDIO_RECORD权限添加到list中。我的初始化代码如下:...privatestaticintSAMPLE_RATE=8000;privatestaticintCHANNEL_CONFIG=AudioFormat.CHANNEL_CONFIGURATION_MO

c++ - Media Foundation 网络摄像头视频 H264 编码/解码在播放时产生伪像

我有一个解决方案,我使用MediaFoundation的h264编码器对来自网络摄像头的视频(YUY2)样本进行编码。然后我通过TCP连接将它发送到另一个应用程序,该应用程序使用MediaFoundation的h264解码器将流解码回YUY2格式。解码后,视频样本/图像使用DirectX呈现在屏幕上。问题在于,在关键帧之间,视频图像会出现越来越多的伪像。收到关键帧时,伪影消失。我将TCP连接排除在范围之外,并在编码后立即进行解码,但仍然有工件困扰着我。这是从网络摄像头接收样本的回调方法://------------------------------------------------

c++ - Ada Variant Record 能否与 C++ union 二进制兼容?

我正在设计一个通信中间件,用于一个应用程序,该应用程序有一个Ada模块和许多C++模块,用于传递传递的参数(标量值)和结构。该应用程序在MSWindowsXP和Windows7中运行,C++部分在MSVC++2008中开发,Ada部分使用GPS/GNAT开发。Ada版本是1995,但我们正在进行编译器迁移(更新版本的GPS/GNAT),有可能使用更新的Ada规范。中间件是用C++编写的,我想使用包含在模块之间传递的所有类型的union类型,这样我就不需要为系统上使用的每种类型指定一个put/get函数。问题是,C++union是否与Ada变体记录二进制兼容?换句话说,如果我将C++un

c++ - 获取 Microsoft Media Foundation 中相机的所有支持的 FPS 值

我想获取我的网络摄像头支持的所有FPS值的列表。在HowtoSettheVideoCaptureFrameRatemsdn文章说我可以查询系统以获取特定相机支持的最大和最小FPS。它还说:Thedevicemightsupportotherframerateswithinthisrange.并且在MF_MT_FRAME_RATE_RANGE_MIN它说:Thedeviceisnotguaranteedtosupporteveryincrementwithinthisrange.所以听起来没有办法获得媒体基础中相机支持的所有FPS值,只有最大值和最小值。我知道在Linux上,v4l2-c

c++ - 使用 Media Foundation 制作视频

我正在尝试将2个视频合成一个(还有音频)并另存为一个文件。比如,在最终视频的左半部分显示一个源视频,在右侧显示另一个源。任何编码都可以。不适用于DirectShow。我怀疑IMFVideoMixerControl可能与此有关,但不幸的是,我对MF还太陌生,无法确定要采取正确的步骤以实现此目的。如果您能给我一些指导或网络上有任何示例,请告诉我。感谢您的帮助。 最佳答案 IMFVideoMixerControl用于渲染视频。查看SourceReader,您走在正确的轨道上。这是我会做的:为每个视频源创建一个IMFSourceReader

.net - 没有 Windows Media Player 10+ 的 WPF 中的媒体支持?

我想知道是否可以在没有Windows媒体播放器10或11的情况下部署WindowsMediaFoundation?这是上下文。我有一个在公司企业环境中运行的WPF应用程序。WPF需要WindowsMediaFoundation来支持富媒体。WindowsMediaFoundation是通过Windows媒体播放器10和11分发的。WMP10/11的企业发布时间表太遥远了,我等不及了。但是因为我不需要整个播放器基础设施,只需要媒体基础,我想知道是否有办法只部署该组件。 最佳答案 MediaFoundation是一种仅限Vista的技术

windows - 如何检测系统上安装的 Windows Media 包

我的应用程序中的一个组件在Windows上失败,因为WindowsK/KN系统没有安装媒体功能包。为了防止这种情况,我考虑在安装时添加一个检查,以查看当前系统上是否安装了MediaFeaturePack。但是,我还没有找到足够的有关MFP的信息来执行此操作。对于大多数版本的Windows,它已经安装,但一些Windows8和8.1安装没有它。我需要一种编程方式来执行此操作。我需要任何一个信息来实现这一点:基于注册码可用于确定是否安装了MediaFeaturePack的注册码是什么?媒体功能包(如.NET框架/VC再分发)是否设置了一些可用于确定这一点的注册码?有没有可以用来检测Medi

c++ - 向后搜索时 libvlc_media_player_set_position 失败

我正在使用libvlc3.0.0(我也试过2.2.0)在Windows7和VisualStudio2012上从h264编码的mp4文件(不包括声音,只有视频帧)捕获帧。我可以播放、暂停、停止和前进没有任何问题。但是当我试图向后寻找时,我遇到了问题:场景:如果我只调用libvlc_media_player_set_position(或libvlc_media_player_set_time),它似乎会到达位置。但是vlc停止发送帧接收回调(换句话说,播放器卡住),直到它到达调用libvlc_media_player_set_position函数之前的相同(或下一个)帧。counter=0