好的,我们现在可以在App Store上提交我们应用的视频预览。根据Apple的说法,我们应该使用iOS8设备和 OSX 10.10.
问题是你必须拥有所有不同的设备(4",4.7",5.5&# 34;和iPad)。
有替代方案吗?
我正在考虑捕捉模拟器的视频。问题是当以100%分辨率显示时,设备屏幕比我的 FullHD
显示器大。任何能够以全分辨率直接从模拟器捕获视频的解决方案?
编辑: 由于很多人都在回答问题,我不是要求让我说: - 录制一个设备尺寸并缩放它并不是我所要求的; - 如何记录任何应用预览并不是我所要求的; - 你如何进行预览并不是我所要求的;
我要求如果它不适合屏幕,你能以100%的分辨率录制模拟器中的视频吗?
答案 0 :(得分:531)
您可以使用
xcrun
Xcode拍摄模拟器的视频和屏幕截图 命令行实用程序。
运行命令
xcrun simctl io booted screenshot <filename>.<file extension>
xcrun simctl io booted recordVideo <filename>.<file extension>
。 例如屏幕截图:xcrun simctl io booted screenshot myScreenshot.png
例如视频:xcrun simctl io booted recordVideo appVideo.mov
ctrl + c
停止录制视频。创建文件的默认位置是当前目录。
答案 1 :(得分:162)
您可以使用QuickTime Player
录制屏幕。
QuickTime Player
File
New Screen recording
现在,从Screen Recording
窗口,点击记录按钮。
它将为您提供录制整个屏幕或屏幕选择部分的选项。
您必须选择模拟器,以便仅记录模拟器部分。
答案 2 :(得分:66)
Apple建议在实际设备上执行此操作,并在iOS和OS X上使用QuickTime和iMovie提供有关如何执行此操作的指南: https://developer.apple.com/app-store/app-previews/imovie/Creating-App-Previews-with-iMovie.pdf
摘要:
使用QuickTime播放器捕获屏幕录制
使用iMovie创建应用预览
导入屏幕录制
接下来,将使用QuickTime Player捕获的屏幕录制文件导入iMovie。 在iMovie中:
创建应用预览项目
要启动新的应用预览项目,请选择文件&gt;新的App预览。时间线出现在哪里 您可以添加和排列剪辑以创建预览。
答案 3 :(得分:53)
我真的很惊讶没有人提供我的答案。这就是你所做的(如果你有至少一个合格的设备,这将有效):
您应该能够以所需的分辨率获得应用预览。
答案 4 :(得分:30)
您应该使用QuickTime in Yosemite来连接和录制iOS设备的屏幕。
完成录制后,您可以使用iMovie编辑视频。当您处理iPhone Portrait App预览时,分辨率必须为1080x1920
,但iMovie只能导出16:9
(1920x1080
)。
一种解决方案是以分辨率1080x1920
导入录制的视频并将其旋转90度。然后在1920x1080
导出影片,并使用ffmpeg和以下命令将导出的视频旋转90度
ffmpeg -i Landscape.mp4 -vf "transpose=1" Portrait.mp4
iPad有点棘手,因为它需要1200x900
(4:3
)的分辨率,但iMovie只会导出16:9
。
这就是我所做的。
1200x900
,4:3
)1920x1080
,16:9
(iPadLandscape16_9-1920x1080.mp4
)删除左右黑条到1440x1080
的视频。一个条的宽度为240
ffmpeg -i iPadLandscape16_9-1920x1080.mp4 -filter:v "crop=1440:1080:240:0" -c:a copy iPadLandscape4_3-1440x1080.mp4
将电影缩小为1220x900
ffmpeg -i iPadLandscape4_3-1440x1080.mp4 -filter:v scale=1200:-1 -c:a copy iPadLandscape4_3-1200x900.mp4
答案 5 :(得分:23)
使用新版本的 Xcode 12.5,您可以使用 ⌘ + R 简单地记录模拟器屏幕。详情请访问here。
答案 6 :(得分:23)
使用命令行截取屏幕截图或录制视频
您可以使用
xcrun
命令行实用程序截取屏幕截图或录制模拟器窗口的视频。
在模拟器中启动您的应用。
- 醇>
启动终端(位于
/Applications/Utilities
),并输入相应的命令:
要截取屏幕截图,请使用
screenshot
操作:xcrun simctl io booted screenshot
您可以在命令末尾指定可选文件名。
要录制视频,请使用
recordVideo
操作:xcrun simctl io booted recordVideo <filename>.<extension>
要停止录制,请按终端中的Control-C。
注意:您必须为recordVideo指定文件名。
创建文件的默认位置是当前目录。
有关
simctl
的更多信息,请在终端中运行此命令:xcrun simctl help
有关
io
simctl
子命令的更多信息,请运行以下命令:xcrun simctl io help
答案 7 :(得分:20)
您可以使用以下工具免费执行此操作。您将需要至少一个真实设备(我使用的是iPhone 5)
使用简单但优秀的appshow捕获视频(请注意,这是一个非常简单的工具,但它很容易学习)。这将以本机设备分辨率(640x1136)导出。
使用ffmpeg调整大小。由于四舍五入,你可以直接在分辨率之间,但你必须超大然后裁剪。
ffmpeg -i video.mov -filter:v scale=1084:1924 -c:a copy video_1084.mov
ffmpeg -i video_1084.mov -filter:v "crop=1080:1920:0:0" -c:a copy video_1080.mov
对于ipad,您可以裁剪然后添加信箱。但是,像这样裁剪通常不会产生一个看起来与你的应用程序在ipad上完全一样的视频。 YMMV。
ffmpeg -i video.mov -filter:v "crop=640:960:0:0" -c:a copy video_640_960.mo
ffmpeg -i video_640_960.mov -filter:v "pad=768:1024:64:32" -c:a copy video_768_1024.mov
ffmpeg -i video_768_1024.mov -filter:v scale=900:1200 -c:a copy video_900_1200.mov
答案 8 :(得分:18)
这是我发现最容易的方式,你只需要一部iPhone和iPad:
使用QuickTime Player记录设备屏幕:
打开iMovie
现在对所有设备执行此操作或:
下载Handbreak:https://handbrake.fr/downloads.php
调整高分辨率视频的大小:
答案 9 :(得分:14)
Apple的模拟器用户指南在Taking a Screenshot or Recording a Video Using the Command Line paragraph中说明:
您可以使用
xcrun
命令行实用程序截取屏幕截图或录制模拟器窗口的视频。
要录制视频,请使用终端中的recordVideo
操作:
xcrun simctl io booted recordVideo <filename>.<extension>
请注意,该文件将在终端的当前目录中创建。
如果要将视频文件保存在Desktop文件夹中,请使用以下命令:
xcrun simctl io booted recordVideo ~/Desktop/<filename>.<extension>
要停止录制,请在终端中按Control-C
。
答案 10 :(得分:10)
在macOS Mojave中,您可以通过屏幕截图实用程序记录屏幕的一部分。
如果要可视化鼠标单击,请在步骤1之后选择 Options 控件并启用 Show Mouse Clicks 。
答案 11 :(得分:4)
从Xcode 9开始,您可以拍摄屏幕快照或使用simctl二进制文件录制视频,您可以在此处找到它:
/Applications/Xcode.app/Contents/Developer/usr/bin/simctl
您可以将其与xcrun一起使用,以在命令行中命令模拟器。
要获取屏幕截图,请在命令行中运行此命令:
xcrun simctl io booted screenshot
要使用命令行在模拟器上录制视频:
xcrun simctl io booted recordVideo fileName.videoType(e.g mp4/mov)
注意:可以在您选择的任何目录中使用此命令。该文件将保存在该目录中。
答案 12 :(得分:3)
我找到的最好的工具是Appshow。访问http://www.techsmith.com/techsmith-appshow.html(我不适合他们)
答案 13 :(得分:3)
这是一个有效且不花费300美元(FinalCut Pro)的解决方案,但它确实需要ScreenFlow(ScreenFlow app in AppStore)($ 100):
答案 14 :(得分:2)
给喜欢使用ZSH功能的用户的提示。您可以通过添加一个功能与@Tikhonov Alexander的答案相同的函数来简化一些事情。
首先输入:
edit ~/.zshrc
进入您的终端。
然后在文件的某个位置添加此功能。
function recsim() {
echo -n "Use CTRL+C to stop recording";
xcrun simctl io booted recordVideo --codec=h264 --mask=black "$1.mp4";
}
要使用,请输入以下内容:
recsim appPreview
进入您的终端窗口。注意:添加功能后必须重新启动终端。
此功能改编自Antoine Van Der Lee在bash中如何执行此操作的博客文章,可以在here.
中找到答案 15 :(得分:1)
出于这个原因,我创建了 RocketSim。它带有一个用户界面,用于开始录制并将录制内容转换为应用预览所需的正确格式。
您只需将录音拖到 App Store Connect 中,它就可以正常工作。可以在 here 中找到一个示例。
答案 16 :(得分:1)
截至2019年的今天,对于像我这样的低预算或单人项目开发人员来说,苹果让生活变得更加轻松。 您可以只使用上述任一帖子中的terminal命令从所需的设备模拟器中录制视频。然后使用iMovie的“新应用预览”功能。
xcrun /Applications/Xcode.app/Contents/Developer/usr/bin/simctl io booted recordVideo pro3new.mov
iMovie->文件->新应用预览
答案 17 :(得分:1)
在我的MBP设置&gt;显示&gt;显示,我看到'分辨率:默认显示/缩放'的设置。我把它设置为'更多空间',然后尝试各种模拟器,所有这些模拟器似乎都适合放大屏幕100%。我怀疑这不适用于你的FullHD屏幕......
另一种方法是尝试在模拟器上安装某种VNC服务器解决方案,如https://github.com/wingify/vnc,并用VNC录像机录制 - 我相信那里有一台Python VNC录像机。
答案 18 :(得分:1)
我遇到了同样的问题。它有一个非常简单的解决方案,对我有用。只需按照以下步骤操作:
1.在iMovie中制作预览视频。
2.使用共享文件选项导出视频。选择1920x1080,因为它可以用于5S和6 +。
3.由techsmith(https://www.techsmith.com/techsmith-appshow.html下载适用于Mac的Appshow。)它专门用于制作应用预览视频。但我不推荐它制作视频,而只是出口。
4.选择一个新的App Preview视频并通过选择较少的帧进行自定义,以后可以删除。
5.将iMovie视频导入此模板。在右上角,您可以选择所需的任何分辨率,appshow具有应用预览所需的所有分辨率。
6.最后,只需选择设备并以所选分辨率导出视频。
答案 19 :(得分:1)
我有幸使用ScreenFlow为IOS制作高质量的应用商店演示电影。我升级到5,所以我可以直接录制设备,并获得了MacBook Air 2.但我首先想到的是我尝试使用QuickTime捕获方法,并且可能使用iMove进行编辑。结果屏幕流是无与伦比的,如果你想要显示用户的手指在表面上移动并点击事物(他们可以添加声音,雷达脉冲等)。对于我的应用程序,这非常重要并创建必要的过渡和编辑以实现这些效果,而不是在模拟器中运行应用程序,让ScreenFlow使用光标运动,是无限多的工作,我很快就放弃了。
我现在已经在iPad和iPhone应用程序上取得了巨大成功,包括6个以上的应用程序。我有一个新的5K iMac所以可以模拟一切,但我所有的iPad应用程序我从屏幕流程输出1200x900;我刚刚在1080x1920制作了iPhone应用程序并遇到了一个真正的问题 - 我一直收到消息&#34;您的应用视频预览无法保存。再试一次。如果问题仍然存在,请与我们联系。&#34;。我在http://blog.eumlab.com/app-video-preview/找到了一个很好的解释,但不喜欢&#34;使用adobe创意云媒体编码器&#34 ;解决它,即使是免费的。所以在阅读了这个帖子的帖子后,我导入了我的屏幕流程5 mp4电影,这似乎符合所需的确切规格(记住商店没有拒绝我的电影,它只是永远不能保存它);创建了一个新的应用预览电影&#34;项目;将我的剪辑复制到&#34; app预览电影&#34;项目,然后导出&#34;新&#34;使用内置预设的电影和a)我的29秒5 MB mp4文件成为28 MB文件;但b)它第一次进口并且工作正常。相同的分辨率,相同的帧速率,相同的音频编码,相同的视频编码 - 但现在App Store喜欢(现在臃肿)文件,我有我的光标效果。 [之前我从未使用过iMovie。]您可以在youtube或商店中看到这些视频。例如,查看法语版单词学习应用程序的iPad视频位于http://youtu.be/L0nBYeK4Pm4;然后是一个iPad应用程序,它是该应用程序的8种不同UI语言版本(针对8种不同的用户L1语言进行了国际化)的多重切割:http://youtu.be/CjXkAvuBXyQ;和同一应用程序的iPhone版iPhone 6+视频在这里:http://youtu.be/36kdLztvc_A。我正在添加电影,因为我将声音文件和其他iOS 7/8升级添加到我的单词学习应用程序(最初是为了帮助我学习阅读中文单词) - 这似乎是让人们知道他们正在购买的东西的好方法。
但是,当然,如果你不需要展示&#34;手指&#34;和#34;点击&#34;,或已经在iMovie或其他人中掌握了这些效果,坚持你所知道的。
答案 20 :(得分:1)
您可以使用QuickTime屏幕录制和iOS模拟器进行视频录制。这里的棘手问题是获得正确的大小,以便iMovie可以在您导出AppPreview时检测输出分辨率。我还没有找到在iMovie中选择输出res的方法,所以如果必须通过您正在使用的媒体格式检测到。它可能需要你几次尝试,但它是可行的。它是其中之一:我有300美元的FinalCut Pro或者我有一个小时左右的时间吗?您只需要如上所述的三个录音。我实际上可以在设备上做两个,因为我有它们但我没有iPhone 6(还有...... :))。我也喜欢模拟器,因为你可以使用像SimFinger这样的东西来模拟手势和按下按钮。
祝你好运!答案 21 :(得分:0)
不幸的是,iOS模拟器应用不支持保存视频。最简单的方法是使用Quicktime Player进行屏幕录制。当然,你会看到鼠标与它进行交互并不是你想要的,但我现在没有更好的选择。
答案 22 :(得分:0)
对于 Apple TV Simulator (tvOS,AppleTV),您应该添加--display=external
参数。我用它保存到桌面:
xcrun simctl io booted recordVideo --display=external --codec=h264 --force ~/Desktop/SimulatorVideo.mov
--force
以重写是否存在文件
--codec
以获得更高的帧率
答案 23 :(得分:0)
使用 Xcode 12 只需在模拟器中按 cmd + R 即可录制屏幕。 cmd + S 截图。
答案 24 :(得分:-1)