我用三星Galaxy II录制了全高清视频,当我将其上传到YouTube时,我发现它变成了90度像肖像布局1080x1920而不是1920x1080.我找到了问题的原因:
YouTube正在阅读视频元数据,并在编码前根据Exif方向旋转视频
这是ExifTool报告(请参阅最后一个标签"轮换"):
ExifTool Version Number : 8.61 File Name : video.mp4 Directory : . File Size : 217 MB File Modification Date/Time : 2011:08:11 00:47:23+04:00 File Permissions : rw-rw-rw- File Type : 3GP MIME Type : video/3gpp Major Brand : 3GPP Media (.3GP) Release 4 Minor Version : 0.3.0 Compatible Brands : 3gp4, 3gp6 Movie Data Size : 227471371 Movie Header Version : 0 Create Date : 1900:01:00 00:00:00 Modify Date : 1900:01:00 00:00:00 Time Scale : 1000 …
我正在构建一个成功在onButtonClick上显示MP4视频文件的应用程序.我想预先缓冲或预加载视频的URI(远程网址),以便在点击按钮后不会延迟播放视频.我想让它立即点击播放,因此在应用启动启动画面上预加载或缓冲似乎是一个合适的解决方案.唯一的问题是我不知道如何.我有很多Android书籍,但几乎没有任何书籍可以覆盖缓冲,或者它们只涵盖音频.
任何人都可以让我知道如何缓冲以前活动的视频?
谢谢.
尝试捕获视频并使用本地套接字将其保存为Mp4/3gp格式的SD卡.能够按字节写入sd卡,但视频文件不可播放.我已经经历了很多例子:
https://github.com/fyhertz/spydroid-ipcamera
https://github.com/mconf/sipdroid
还有很多.我注意到有人建议这可能是文件头的问题.我试图从标题跳过那些"mdat"数据:
private void skipHeader() throws IOException {
// Skip all atoms preceding mdat atom
byte[] buffer = new byte[3];
while (true) {
while (mReceiver.getInputStream().read() != 'm');
mReceiver.getInputStream().read(buffer,0,3);
if (buffer[0] == 'd' && buffer[1] == 'a' && buffer[2] == 't') break;
}
}
Run Code Online (Sandbox Code Playgroud)
最后没有什么对我有用.我需要做些什么来使这些视频文件可以使用Local Socket播放
所以我正在尝试播放一个简单的介绍动画视频文件,我已将其拖入XCode中的项目中,因此应该可以从我的mainBundle播放,对吧?
使用此代码:
NSURL *urlString = [NSURL fileURLWithPath:[[NSBundle mainBundle] pathForResource:@"introvideo" ofType:@"mp4"]];
MPMoviePlayerController *player = [[MPMoviePlayerController alloc] initWithContentURL:urlString];
[player play];
Run Code Online (Sandbox Code Playgroud)
我收到此错误消息: *由于未捕获的异常'NSInvalidArgumentException'终止应用程序,原因:'* - [NSURL initFileURLWithPath:]:nil string parameter'
任何帮助都会很棒!
我有一个用Flip相机拍摄的MP4视频.当我停止录音机时相机冻结了,现在视频显示已损坏.我仍然可以从相机下载它,但它不会播放.现在,视频的大小仍然超过2千兆字节,所以我认为数据仍然存在.
所以,我搜索网络寻找解决方案,我找到了声称可以解决这个问题的付费服务和软件.一个诊断服务("Treasured")向我展示了视频中的剧照,证实了我相信那里可能有一些可以挽救的东西.不幸的是,要求修复它的价格不在预算范围内.它需要更多的朴素解决方案.
有谁知道如何修复损坏的MP4?或者是没有太多钱的服务或软件?
我需要从assets文件夹打开一个mp4视频,然后用VideoView播放它.
我尝试了这两个选项,但它们都不起作用....
mVideoView.setVideoPath("file:///android_asset/videos.mp4");
mVideoView.requestFocus();
mVideoView.start();
Run Code Online (Sandbox Code Playgroud)
和...
String uriPath = "file:///android_asset/videos.mp4";
Uri uri = Uri.parse(uriPath);
mVideoView.setVideoURI(uri);
mVideoView.requestFocus();
mVideoView.start();
Run Code Online (Sandbox Code Playgroud)
这些选项不起作用,但是如果我尝试从SDCARD打开视频它运行正常,那么问题是当我尝试从assets文件夹加载视频时.
我做错了什么?
谢谢
好的.其实我主要需要的是mp4格式.但是,如果有可能获得其他类型,那将是不错的.我只需要读取文件的持续时间.我怎么能用C#4.0做到这一点?
所以我需要的是这个视频就像: 13 minutes 12 seconds
我也可以使用3个第三方的前任.就像他们将有关文件的信息保存到文本文件中一样.我可以解析该文本文件.
谢谢.
我搜索了很多但没有解决我的问题.
我有一个video
标签运行如下:
<video
class="ne"
src="{{ page | video_url }}"
muted="true"
volume="0"
controls
width="720"
height="480"
poster="{{ page | video_poster_image_url }}"
type="video/mp4">
</video>
Run Code Online (Sandbox Code Playgroud)
我正在使用Jekyll作为URL.他们工作正常.
该网站现已在switzerlandllc.com上发布.点击FF中的任何视频,它会显示图片和X. Chrome和其他浏览器工作正常.
如果您获取视频源并将其加载到新选项卡中,则可以正常播放.至少它对我有用.
我已经添加了:
AddType video/ogg .ogv
AddType video/mp4 .mp4
AddType video/webm .webm
Run Code Online (Sandbox Code Playgroud)
到我的htaccess
档案.我怀疑我不需要.ogv
或.webm
.
我不明白为什么加载视频网址会播放视频很好但是将视频加载到视频标签中会失败.
有任何想法吗?
我看到很多关于将moov
原子从MP4视频容器的末端重新定位到开头的问题,以使视频"网络优化"或更容易流式传输.似乎大多数工具在首次编码视频时都需要一个明确的选项才能执行此操作(如果它完全可用).
如果将原子置于开头使得流式传输工作更好,并且事后做到这一点成本很高,为什么我最初想要用原子对视频进行编码?有什么好处?
我已经看到了一些关于这个的线索,但是没有答案,所以我想我会在污染的youtube相关页面中添加另一个.
我有一个100MB的mp4视频需要浏览器完全下载,
然而,当它被完全下载时没有发生任何事件,并且Chrome似乎停止缓冲视频,直到当前视频时间几乎达到缓冲区的末尾,然后它会请求更多.
如何让浏览器完全下载视频并将其缓冲100%?
谢谢