我用三星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 …
我正在尝试在模拟器上录制应用程序演示,并希望使用Quicktime屏幕捕获功能.但是,我想在捕获过程中隐藏鼠标.这可能吗?似乎不是内置功能,所以我假设我需要使用某种插件或黑客.有什么建议?
Mac OS X中是否有任何公共API用于检查连接显示器的高带宽数字内容保护(HDCP)和/或显示端口内容保护(DPCP)合规性,或者要求仅在HDCP上显示应用程序的输出符合DPCP标准的显示器?
我希望我的应用程序能够拒绝播放某些内容,除非在所有相关的连接显示器上确保这些类型的保护.我相信Apple能够为iTunes商店高清内容做到这一点,但我不确定他们是否正在使用私有API.
如何保证我的应用程序输出受HDCP或DPCP保护?
我正在更新一个64位兼容的应用程序,但我的电影录制代码有点困难.我们有一个FireWire相机,它将YUV帧提供给我们的应用程序,我们在MPEG4电影中处理和编码到磁盘.目前,我们使用基于C的QuickTime API来执行此操作(使用图像压缩管理器等),但旧的QuickTime API不支持64位.
我的第一次尝试是使用QTKit的QTMovie并使用编码单个帧-addImage:forDuration:withAttributes:,但这需要为每个帧创建一个NSImage(这在计算上是昂贵的)并且它不进行时间压缩,因此它不会生成最紧凑的文件.
我想使用像QTKit Capture的QTCaptureMovieFileOutput这样的东西,但是我无法弄清楚如何将原始帧提供给与QTCaptureInput无关的原始帧.由于我们需要手动控制增益,曝光等,因此我们无法直接将相机与QTKit Capture配合使用.
在Lion上,我们现在拥有AVFoundation中的AVAssetWriter类,可以让你这样做,但我仍然需要暂时定位Snow Leopard,所以我也想找到一个在那里工作的解决方案.
因此,有没有办法对视频进行非QuickTime逐帧录制,这种录制比QTMovie更高效,-addImage:forDuration:withAttributes:并且生成的文件大小可与旧版QuickTime API相媲美?
我在MacOS 10.7.2(b.11C74)上使用QuickTime API时遇到问题.
这是一段打开电影描述符的openFrameworks代码:
// ofQuickTimePlayer.cpp
bool createMovieFromURL(string urlIn, Movie &movie){
char * url = (char *)urlIn.c_str();
Handle urlDataRef;
OSErr err;
urlDataRef = NewHandle(strlen(url) + 1);
// ...
BlockMoveData(url, *urlDataRef, strlen(url) + 1);
err = NewMovieFromDataRef(
&movie,
newMovieActive,
nil,
urlDataRef,
URLDataHandlerSubType);
// ...
if ( err != noErr ) {
ofLog(OF_LOG_ERROR,"createMovieFromURL: error loading url");
return false;
} else {
return true;
}
}
Run Code Online (Sandbox Code Playgroud)
我只需要打开HLS视频流.
测试Apple HLS流无法加载,但不会呈现视频.这是:http://devimages.apple.com/iphone/samples/bipbop/bipbopall.m3u8
-2048在这种情况下,我的测试HLS流无法加载并且错误等于.
通过HTTP和RTSP协议传输.mp4,一切都很完美.
相同的流在QuickTime Player 10.1(501.5)中完美播放.
我的小研究的细节在这里:https: …
最新的Capybara-webkit抛出弃用警告:
WARNING: The next major version of capybara-webkit will require at least version 5.0 of Qt. You're using version 4.8.7.
Run Code Online (Sandbox Code Playgroud)
所以我:
gem uninstall capybara-webkit
brew uninstall qt
brew install qt5
gem install capybara-webkit
Run Code Online (Sandbox Code Playgroud)
这种贬值现在已经消失,但一切都崩溃了:
$ rspec -p -- spec/features
Randomized with seed 52457
...2015-07-30 16:56:21.731 webkit_server[8416:6381638] Error loading /Library/Internet Plug-Ins/QuickTime Plugin.plugin/Contents/MacOS/QuickTime Plugin: dlopen(/Library/Internet Plug-Ins/QuickTime Plugin.plugin/Contents/MacOS/QuickTime Plugin, 265): no suitable image found. Did find:
/Library/Internet Plug-Ins/QuickTime Plugin.plugin/Contents/MacOS/QuickTime Plugin: mach-o, but wrong architecture
plugin,NP_Initialize start
plugin,NP_Initialize end
plugin,NP_GetEntryPoints start
Private_Initialize
plugin,NP_GetEntryPoints end …Run Code Online (Sandbox Code Playgroud) 我正在寻找一个跨平台的视频捕获库,用于访问网络摄像头.一个包含Linux上的V4L/V4L2,Windows上的DirectShow和Mac上的QuickTime.
C或C++是首选,但如果有更好的库选项,我可以使用Java或Python.
directshow quicktime cross-platform video-capture video4linux
有没有人知道是否有办法从Quicktime .mov文件中提取原始的,仍然压缩的音频和视频样本,使用针对Mac的Apple API/Framework,可以在64位本地编译(IE:QTKit )?我知道这个功能在Apple的QuickTime Framework中可用,它以Mac为目标,但是这个框架只能在32位下编译.
如果有人熟悉这样的框架和任何相关的示例代码,我们将非常感谢您的一些见解.
谢谢,乔希
自Snow Leopard以来,QTKit现在从QTMovies frameImageAtTime:withAttributes:error:等函数返回色彩校正图像数据.给定未压缩的AVI文件,在Snow Leopard vs. Leopard中显示具有更大像素值的相同图像数据.
目前我正在使用frameImageAtTime来获取NSImage,然后请求该图像的tiffRepresentation.执行此操作后,Snow Leopard中的像素值略高.
例如,Leopard中具有以下像素值的文件:
[0 180 0]
Run Code Online (Sandbox Code Playgroud)
现在有一个像素值,如:
[0 192 0]
Run Code Online (Sandbox Code Playgroud)
有没有办法向QTMovie询问没有色彩校正的视频帧?我应该要求CGImageRef,CIImage或CVPixelBufferRef吗?有没有办法在读取视频文件之前完全禁用颜色校正?
我试图通过使用NSCalibratedColroSpace绘制到NSBitmapImageRep来解决这个问题,但这只是我的一部分:
// Create a movie
NSDictionary *dict = [NSDictionary dictionaryWithObjectsAndKeys :
nsFileName, QTMovieFileNameAttribute,
[NSNumber numberWithBool:NO], QTMovieOpenAsyncOKAttribute,
[NSNumber numberWithBool:NO], QTMovieLoopsAttribute,
[NSNumber numberWithBool:NO], QTMovieLoopsBackAndForthAttribute,
(id)nil];
_theMovie = [[QTMovie alloc] initWithAttributes:dict error:&error];
// ....
NSMutableDictionary *imageAttributes = [NSMutableDictionary dictionary];
[imageAttributes setObject:QTMovieFrameImageTypeNSImage forKey:QTMovieFrameImageType];
[imageAttributes setObject:[NSArray arrayWithObject:@"NSBitmapImageRep"] forKey: QTMovieFrameImageRepresentationsType];
[imageAttributes setObject:[NSNumber numberWithBool:YES] forKey:QTMovieFrameImageHighQuality];
NSError* err = nil;
NSImage* image = (NSImage*)[_theMovie frameImageAtTime:frameTime withAttributes:imageAttributes error:&err];
// copy NSImage into …Run Code Online (Sandbox Code Playgroud) 我想在javascript中生成一系列MIDI音符,然后播放它.许多插件支持MIDI,但我不知道任何支持"data:"URL.生成MIDI内容并不是什么大问题 - 但是将这些内容提供给播放器就是.任何人都知道如何做到这一点 - 如果不是一般,那么至少对于像QuickTime这样的特定插件?
quicktime ×10
macos ×4
qtkit ×2
64-bit ×1
c++ ×1
cocoa ×1
data-url ×1
directshow ×1
exif ×1
gamma ×1
hdcp ×1
hide ×1
javascript ×1
midi ×1
mouse ×1
mp4 ×1
objective-c ×1
orientation ×1
qt ×1
qt5 ×1
sample ×1
video ×1
video4linux ×1
youtube ×1