Articles of mp4

Mp4video旋转元数据

我开发了一个android / iosvideo​​共享应用程序,可以录制video并将其上传到amazon s3。 兼容android / ios以mp4格式记录H264 / AAC编解码器。 用户可能拍摄肖像或风景和应用程序,从传感器获取信息,设置文件的旋转(在Android上的mediarecorder.setOrientationHint和iOS上类似的东西) 来自iOS的video在Android上运行良好,反之亦然。 问题是当我想在网络浏览器上播放video时。 支持mp4格式(即chrome)的浏览器显示video但忽略旋转元数据。 当我用linux上的mplayer播放这些video时,会发生同样的事情。 想到的第一个解决方案是 ffmpeg -i in.mp4 -vf transpose= out.mp4 浏览器忽略旋转元数据是否有原因? 这是一个错误吗? 我可以在录制video时做些什么来解决这个问题吗? 这里分别是来自iOS和android的2个示例。 Thansk iosvideo 安卓video

在webview中播放应用本地video(.mp4)

我有一个应用程序,我正在为iOS和Android编写。 我有一个内容页面,我需要在UIWebView / WebView中链接到/播放.mp4video。 该video将包含在应用中,以便可以脱机工作。 在iOS中我只使用了一个video标签(包含项目文件的源代码),然后使用NSNotifications全屏显示video(app通常以纵向模式运行)。 任务完成。 在Android上我遇到了一些问题。 首先,当你使用本地图像作为video海报时,它崩溃了应用程序(显然是一个已知的错误 – 使用远程图像解决了问题 – 虽然对离线模式没有多大帮助)。 其次它没有发挥。 我已经尝试了远程和本地文件(引用文件:///android_asset/html/video.mp4)。 我已经从android浏览器测试了.mp4,它播放没问题,所以我知道video很好。 我尝试了使用video链接的不同方法。 我在以下链接中find了一个示例(必须使用谷歌缓存查看): http ://webcache.googleusercontent.com/search?q = cache: Evz7nwc8718J : www.codelark.com/2010/05/12/android-观看video从-嵌入式网页视图/ + HTTP://www.codelark.com/2010/05/12/android-viewing-video-from-embedded-webview/&cd=1&hl=en&ct=clnk&gl=uk 我的代码如下: webengine = (WebView) findViewById(R.id.webview); webengine.getSettings().setJavaScriptEnabled(true); webengine.getSettings().setPluginsEnabled(true); webengine.getSettings().setAllowFileAccess(true); webengine.setDownloadListener(new DownloadListener() { public void onDownloadStart(String url, String userAgent, String contentDisposition, String mimeType, long size) { Intent viewIntent = new […]

如何使用Android应用程序的意图播放videomp4? 这个有可能?

我需要在我的应用程序中播放mp4video,我希望使用意图。 这可能吗? private void startTrailer(){ Uri contentUri = Uri.parse(“android.resource://” + pkgName + “/” +R.raw.v01_homem_ferro_3); Intent intent = new Intent( Intent.ACTION_VIEW ); intent.setDataAndType( contentUri, “video/mp4” ); context.startActivity( intent ); } 例外:找不到处理Intent的Activity。

Android,如何将元数据设置为MP4文件?

我想将元数据设置为MP4文件。 我通过以下方式创建MP4文件: new MediaMuxer(mPath, MediaMuxer.OutputFormat.MUXER_OUTPUT_MPEG_4) 和文件有元: Title: unknown Artist: unknown Album: unknown Comment: … 类似于: 这里 我发现对于API21 +我可以通过以下方式制作元数据: MediaMetadata.Builder但是如何将元数据保存到创建的MP4文件? 请不要extern图书馆。 谢谢。

Android无法播放H264 / AACvideo

我们正在iOS应用程序中录制video文件,并希望它们在iOS / Android / Web上播放。 所以我们选择了MP4容器中的H264 / AAC。 但是,在不同的设置中,iOS H264video不会在Android设备上播放(LG D335 / Galaxy S4)。 我们如何播放video? 简单的测试方法是从直接链接下载video,然后在Android设备上的下载中打开它。 对于任何iOS H264video,我们收到“无法播放此文件”/“抱歉,此video无法播放” Mediainfo的video文件如下。 想知道, 为什么这些video文件无法在Android上播放,而它是H264 / AAC和Baseline配置文件? 谢谢。 MediaInfo输出 iOS 1280×720: General Complete name : /Users/a/Desktop/ios_1280.mp4 Format : MPEG-4 Format profile : QuickTime Codec ID : qt File size : 6.46 MiB Duration : 1s 220ms Overall bit rate […]

video使用OnAudioFilterRead数据编码错误

我正在尝试使用OnAudioFilterRead函数将Unity游戏音频录制到mp4文件。 function OnAudioFilterRead(var data:float[], var channels:int) 我的解决方案概述。 步骤1。 将从Unity获取的数据样本转换为bytes [] private void Convert2Bytes(float[] samples) { Int16[] intData = new Int16[samples.Length]; //converting in 2 float[] steps to Int16[], //then Int16[] to Byte[] Byte[] bytesData = new Byte[samples.Length * 2]; //bytesData array is twice the size of //dataSource array because a float converted in Int16 is 2 […]

使用Jcodec在Android上创建mp4文件

我在使用MediaRecorder和Jcodec在Android上编写mp4文件时遇到了一些麻烦,这是我的代码 public class SequenceEncoder { private final static String CLASSTAG = SequenceEncoder.class.getSimpleName(); private SeekableByteChannel ch; private byte[] yuv = null; private ArrayList spsList; private ArrayList ppsList; private CompressedTrack outTrack; private int frameNo; private MP4Muxer muxer; ArrayList spsListTmp = new ArrayList(); ArrayList ppsListTmp = new ArrayList(); // Encoder private MediaCodec mediaCodec = null; public SequenceEncoder(File out) […]

如何使用MediaPlayer在列表视图中播放多个video?

我正在尝试使用video作为元素来实现列表视图。 我正在使用此项目在纹理视图上显示video。 它使用下面的MediaPlayer。 在同时加载两个video时失败(大部分时间)。 我得到的错误是: TextureVideoView error. File or network related operation errors. MediaPlayer: error (1, -2147479551) 当从磁盘加载文件时也会发生这种情况 在error handling部分,我尝试重置URL。 然后我大多得到 E/BufferQueueProducer: [unnamed-30578-12] disconnect(P): connected to another API (cur=0 req=3) 错误。 我不清楚的是,从网络设置一些任意video将有效,但重试相同的URL将失败。 所以在OnErrorListener中: textureView.setVideo(item.getUriMp4(),MediaFensterPlayerController.DEFAULT_VIDEO_START); 会失败但是: textureView.setVideo(“http://different.video” … ) 会很有效。 这也不是特定文件的问题,因为滚动不同的video文件将失败。 有时失败的那些将在下次工作等。 我也试过MediaCodec和MediaExtractor组合而不是MediaPlayer方法,但我遇到了,看起来像是设备特定的平台bug 任何提示? 有什么建议么? 谢谢 W上。

使用jcodec SequenceEncoder

我需要从图像创建video,我见过jcodec,我认为这是我需要的: http ://jcodec.org/ 如何将jcodec添加到我的项目中? 我看过有一个Android版本。 如果我错了,请纠正我,但我将jcodec-0.1.5.jar添加到libs文件夹下的项目中。 然后从jcodec-android-0.1.7.zip将SequenceEncoder.java和BitmapUtil.java添加到我的包中,但是当我添加时: public void encodeImage(Bitmap bi) throws IOException { encodeNativeFrame(BitmapUtil.fromBitmap(bi)); } 它给我包com.example.seqtest错误,并要求我配置构建路径。 所以我如何使用它,如何输入图像序列? 你能举个例子吗?

WhatsAppvideo作为Gif在Android上以编程方式共享

我如何将mp4video文件转换为WhatsApp gif文件(它简单显示为应用程序UI内的gif,但内部是一种特定的mp4格式)用于android共享意图,被whatsapp聊天应用程序识别为此类媒体? ?? 我搜索了很多,但我找不到WhatsApp文档的任何信息(他们没有这种文件)或任何与我有相同问题的开发者。 我拥有的: 我发现在whatsapp“gif”mp4文件的开头是一个循环值,如果你在hex编辑器上读取它们,所有文件都有这个。 删除此值使whatsapp作为常规video接收(不作为gif共享)。 如何使用ffmpeg编码添加此值? (用这个值手动编辑我的mp4文件会破坏文件,也许我必须修复一些我还不知道的mp4标题索引…) 以hex表示的第一个80字节(从mp4结构开始的“moov”primefaces开始): 00 00 00 1C 66 74 79 70 6D 70 34 32 00 00 00 01 6D 70 34 31 6D 70 34 32 69 73 6F 6D 00 00 00 18 62 65 61 6D 01 00 00 00 01 00 00 00 00 […]