我希望用户只能上传一个视频,然后写这本分割成视频用户定义的段代码,然后将这些片段转换为.flv和.mp4视频.
有什么方法可以做到吗?
我正在尝试使用ffmpeg从mp4文件创建一个1s剪辑到mpeg,但是我收到一个错误:
ffmpeg -i /tmp/myfile.mp4 -y -ss 00:00:01 -t 00:00:01.000 /tmp/myfilesplit.1.mpg
ffmpeg version N-31716-g318fd9d, Copyright (c) 2000-2011 the FFmpeg developers
built on Aug 1 2011 16:10:33 with gcc 4.4.5
configuration: --enable-gpl --enable-libfaac --enable-libmp3lame --enable-libopencore-amrnb --enable-libopencore-amrwb --enable-libtheora --enable-libvorbis --enable-libx264 --enable-libxvid --enable-nonfree --enable-postproc --enable-version3 --enable-x11grab --enable-libvpx
libavutil 51. 11. 1 / 51. 11. 1
libavcodec 53. 9. 0 / 53. 9. 0
libavformat 53. 6. 0 / 53. 6. 0
libavdevice 53. 2. 0 / 53. 2. 0
libavfilter 2. 27. 5 / …Run Code Online (Sandbox Code Playgroud) 我知道object标签将对象嵌入到html中,对于播放视频/音频非常有用.当我们使用type ="video/mpeg"指定对象时,这会使用设备中的默认播放器
我在播放mp4文件时遇到问题.当我使用对象标签.它可以播放mpeg-2传输流.
设备播放器规格也表示它们支持mp4.
我在这里遗漏了什么.
如何找到mp4视频文件的基线/配置文件?
unix工具file只说ISO Media,MPEG v4系统,版本2但是mp4之间存在差异.
NSString *path = [[NSBundle mainBundle] pathForResource:@"test" ofType:@"mp4"];
NSLog(@"Path: %@", path);
NSURL *url = [NSURL URLWithString:path];
NSLog(@"URL: %@", url);
NSData *data = [NSData dataWithContentsOfURL:url];
NSLog(@"Data exists? %@", data ? @"yes" : @"no");
Run Code Online (Sandbox Code Playgroud)
test.mp4在我的包中,但这始终是输出
2013-03-13 11:50:29.444 videoAppPrototype[28625:907] Path: /var/mobile/Applications/D66DD820-4DE1-4E45-9495-9BACF130E368/videoAppPrototype.app/test.mp4
2013-03-13 11:50:29.446 videoAppPrototype[28625:907] URL: /var/mobile/Applications/D66DD820-4DE1-4E45-9495-9BACF130E368/videoAppPrototype.app/test.mp4
2013-03-13 11:50:29.448 videoAppPrototype[28625:907] Data exists? no
Run Code Online (Sandbox Code Playgroud)
我不知道为什么,但数据从未存在过.
我已经查看了以前的主题,但无法找到CompressedTrack类.我已经能够从视频中抓取帧.有什么方法可以使用BufferedImages创建一个mp4视频文件(截图).
谢谢你的帮助!
所以我一直试图在相当长的一段时间内完成这项工作,但不幸的是,堆栈上发布的解决方案或我试图自己编写的解决方案似乎都没有.我正在构建一个允许用户拍摄照片和视频的应用程序,以及其他用户将其保存下来.我正在使用AWS服务来保存内容.虽然返回的URL使用NSLog,但在将其复制/粘贴到浏览器时向我显示视频,它拒绝保存到相机胶卷.保存图片但工作正常.
到目前为止我尝试了以下内容:
-(void) imagePickerController:(UIImagePickerController *)picker didFinishPickingMediaWithInfo:(NSDictionary *)info {
if([mediaType isEqualToString:(NSString *)kUTTypeMovie]) {
NSURL *movieUrl = [info objectForKey:UIImagePickerControllerMediaURL];
ALAssetsLibrary *library = [[ALAssetsLibrary alloc] init];
[library writeVideoAtPathToSavedPhotosAlbum:movieUrl completionBlock:^(NSURL *assetURL, NSError *error){
if(error) {
NSLog(@"CameraViewController: Error on saving movie : %@ {imagePickerController}", error);
} else {
NSLog(@"URL: %@", assetURL);
}
}];
}
}
Run Code Online (Sandbox Code Playgroud)
并且:
if (UIVideoAtPathIsCompatibleWithSavedPhotosAlbum(self.post.mediaUrl)) {
UISaveVideoAtPathToSavedPhotosAlbum(self.post.mediaUrl, self, @selector(video:finishedSavingWithError:contextInfo:),@selector(video:finishedSavingWithError:contextInfo:));
} else {
NSLog(@"Incompatible File apparently");
}
Run Code Online (Sandbox Code Playgroud)
有什么建议?谢谢!
将.wmv文件转换为.mp4时,我使用了以下命令:
exec("ffmpeg -i file.wmv -vcodec mpeg4 -acodec libfaac -b 1200 -r 15 -s 320x240 -pix_fmt yuv420p file.mp4");
声音很好但我没有图像(使用html5时没有下载到电脑上).这是输出:
FFmpeg version 0.6.5, Copyright (c) 2000-2010 the FFmpeg developers
built on Jan 29 2012 17:52:15 with gcc 4.4.5 20110214 (Red Hat 4.4.5-6)
configuration: --prefix=/usr --libdir=/usr/lib64 --shlibdir=/usr/lib64 --mandir=/usr/share/man --incdir=/usr/include --disable-avisynth --extra-cflags='-O2 -g -pipe -Wall -Wp,-D_FORTIFY_SOURCE=2 -fexceptions -fstack-protector --param=ssp-buffer-size=4 -m64 -mtune=generic -fPIC' --enable-avfilter --enable-avfilter-lavf --enable-libdc1394 --enable-libdirac --enable-libfaac --enable-libfaad --enable-libfaadbin --enable-libgsm --enable-libmp3lame --enable-libopencore-amrnb --enable-libopencore-amrwb --enable-librtmp --enable-libschroedinger --enable-libspeex --enable-libtheora --enable-libx264 --enable-gpl --enable-nonfree --enable-postproc --enable-pthreads --enable-shared --enable-swscale …Run Code Online (Sandbox Code Playgroud) 我希望能够添加一个我创建的视频,当它在屏幕上显示时自动开始播放,到目前为止我的代码如下所示:
VideoView videoview = (VideoView) findViewById(R.id.button10);
Uri uri = Uri.parse("android.resource://"+getPackageName()+"/"+R.raw.group_project);
videoview.setVideoURI(uri);
videoview.start();
Run Code Online (Sandbox Code Playgroud)
目前,当我点击并进入该屏幕时,没有任何反应.当我使用媒体播放器时播放声音,但我真的想添加此视频.任何帮助将非常感激.