Pour Xcode 8.2 ou version ultérieure
Vous pouvez prendre des vidéos et des captures d'écran de Simulator en utilisant le xcrun simctl
, un utilitaire de ligne de commande pour contrôler le Simulator
- Exécutez votre application sur le simulateur
- Ouvrez un terminal
Exécutez la commande
Pour prendre une capture d'écran
xcrun simctl io booted screenshot <filename>.<file extension>
Par exemple:
xcrun simctl io booted screenshot myScreenshot.png
Pour prendre une vidéo
xcrun simctl io booted recordVideo <filename>.<file extension>
Par exemple:
xcrun simctl io booted recordVideo appVideo.mov
Appuyez ctrl + c
pour arrêter l'enregistrement de la vidéo.
L'emplacement par défaut du fichier créé est le répertoire actuel.
Xcode 11.2 et versions ultérieures offrent des options supplémentaires.
À partir des notes de mise à jour de Xcode 11.2 Beta
L'enregistrement vidéo simctl produit désormais des fichiers vidéo plus petits, prend en charge la compression HEIC et tire parti de la prise en charge du codage matériel, le cas échéant. De plus, la possibilité d'enregistrer des vidéos sur les appareils iOS 13, tvOS 13 et watchOS 6 a été restaurée.
Vous pouvez utiliser des drapeaux supplémentaires:
xcrun simctl io --help
Set up a device IO operation.
Usage: simctl io <device> <operation> <arguments>
...
recordVideo [--codec=<codec>] [--display=<display>] [--mask=<policy>] [--force] <file or url>
Records the display to a QuickTime movie at the specified file or url.
--codec Specifies the codec type: "h264" or "hevc". Default is "hevc".
--display iOS: supports "internal" or "external". Default is "internal".
tvOS: supports only "external"
watchOS: supports only "internal"
--mask For non-rectangular displays, handle the mask by policy:
ignored: The mask is ignored and the unmasked framebuffer is saved.
alpha: Not supported, but retained for compatibility; the mask is rendered black.
black: The mask is rendered black.
--force Force the output file to be written to, even if the file already exists.
screenshot [--type=<type>] [--display=<display>] [--mask=<policy>] <file or url>
Saves a screenshot as a PNG to the specified file or url(use "-" for stdout).
--type Can be "png", "tiff", "bmp", "gif", "jpeg". Default is png.
--display iOS: supports "internal" or "external". Default is "internal".
tvOS: supports only "external"
watchOS: supports only "internal"
You may also specify a port by UUID
--mask For non-rectangular displays, handle the mask by policy:
ignored: The mask is ignored and the unmasked framebuffer is saved.
alpha: The mask is used as premultiplied alpha.
black: The mask is rendered black.
Vous pouvez maintenant prendre une capture d'écran jpeg
, avec un masque (pour les affichages non rectangulaires) et quelques autres drapeaux:
xcrun simctl io booted screenshot --type=jpeg --mask=black screenshot.jpeg
Tikhonov Alexander
la source
xcrun
?xcrun simctl io booted recordVideo --type=mp4 <PATH TO VIDEO FILE>.mp4
--codec=h264
résolu le problème et s'est traduite par une vidéo fluide.Vous pouvez utiliser
QuickTime Player
pour enregistrer l'écran.QuickTime Player
File
dans le menuNew Screen recording
À partir de la
Screen Recording
fenêtre, cliquez sur le bouton d'enregistrement.Il vous fournira une option pour enregistrer la totalité de l'écran ou une partie sélective de votre écran.
Vous devrez faire une sélection de votre simulateur afin que seule la partie du simulateur soit enregistrée.
la source
Apple recommande de le faire sur un appareil réel et dispose d'un guide sur la façon de le faire à l'aide de QuickTime et iMovie sur iOS et OS X: https://developer.apple.com/app-store/app-previews/imovie/Creating-App -Aperçu-avec-iMovie.pdf
Sommaire:
Capturez des enregistrements d'écran avec QuickTime Player
Créer un aperçu d'application avec iMovie
Importer des enregistrements d'écran
Ensuite, vous importez les fichiers d'enregistrement d'écran que vous avez capturés avec QuickTime Player dans iMovie. Dans iMovie:
Créer un projet d'aperçu d'application
Pour démarrer un nouveau projet d'aperçu d'application, choisissez Fichier> Nouvel aperçu d'application. Une chronologie apparaît où vous pouvez ajouter et organiser des clips pour créer votre aperçu.
la source
Je suis en fait surpris que personne n'ait fourni ma réponse. Voici ce que vous faites (cela fonctionnera si vous avez au moins 1 appareil éligible):
Vous devriez pouvoir obtenir l'aperçu de votre application dans la résolution souhaitée.
la source
ffmpeg -i appPrevw_ipad.mp4 -vf scale=1080:-1,pad=1080:1920:0:200:white appPrevw_iphone.mp4
. 200 est le placement vertical du contenu iPad (plus court). Vous pouvez prendre cela comme base et ajouter plus de choses dans les barres vides.Vous pouvez enregistrer une partie de l'écran avec l'utilitaire de capture d'écran intégré:
Si vous souhaitez visualiser les clics de souris, après l'étape 1, sélectionnez le contrôle Options et activez Afficher les clics de souris .
la source
Vous devez utiliser QuickTime dans Yosemite pour vous connecter et enregistrer l'écran de vos appareils iOS.
Portrait iPhone
Une fois l'enregistrement terminé, vous pouvez utiliser iMovie pour éditer la vidéo. Lorsque vous travaillez sur un aperçu de l'application iPhone Portrait, la résolution doit être,
1080x1920
mais iMovie ne peut exporter qu'en16:9
(1920x1080
).Une solution serait d'importer la vidéo enregistrée avec la résolution
1080x1920
et de la faire pivoter de 90 degrés. Ensuite, exportez le film à1920x1080
et faites pivoter la vidéo exportée de 90 degrés à l'aide de ffmpeg et de la commande suivanteiPad
L'iPad est un peu plus délicat car il nécessite une résolution de
1200x900
(4:3
) mais iMovie exporte uniquement en16:9
.Voici ce que j'ai fait.
1200x900
,4:3
)1920x1080
,16:9
(iPadLandscape16_9-1920x1080.mp4
)Supprimez les barres noires gauche et droite d'une vidéo avec
1440x1080
. La largeur d'une barre est240
Réduire le film à
1220x900
Tiré de ma réponse sur le Forum des développeurs Apple
la source
À partir de la documentation Apple .
la source
h264
,mp4
oufmp4
. Exemple:xcrun simctl io booted recordVideo test-video-recording.mp4
. De plus, pour terminer la vidéo, j'ai dû mettre fin au processus terminal aveccontrol
+c
.Vous pouvez le faire gratuitement avec les outils suivants. Vous aurez besoin d'au moins un appareil réel (j'ai utilisé un iPhone 5)
Capturez la vidéo avec le simple, mais excellent appshow (noter que ceci est un outil très barebones, mais il est très facile à apprendre). Cela sera exporté à la résolution native de l'appareil (640x1136).
Redimensionnez avec ffmpeg. En raison de l'arrondissement, vous pouvez aller directement entre les résolutions, mais vous devez surdimensionner puis recadrer.
Pour iPad, vous pouvez recadrer puis ajouter une boîte aux lettres. Cependant, un recadrage comme celui-ci ne donnera généralement pas une vidéo qui ressemble exactement à celle de votre application sur l'ipad. YMMV.
la source
ffmpeg -i source.mov -filter:v scale=1246:2216 -c:a copy intermediate.mov
etffmpeg -i intermediate.mov -filter:v "crop=1242:2208:0:0" -c:a copy final.mov
-pix_fmt yuv420p
et-vcodec lib264x
sans chance ...ffmpeg version 2.3.3 Copyright (c) 2000-2014 the FFmpeg developers
C'est la façon dont j'ai trouvé le plus simple et vous n'avez besoin que d'un iPhone et d'un iPad:
Écran d'enregistrement de l'appareil avec QuickTime Player:
Ouvrez iMovie
Maintenant, faites-le avec tous vos appareils ou:
Télécharger Handbreak: https://handbrake.fr/downloads.php
Et redimensionnez la vidéo haute résolution:
la source
Le Guide de l'utilisateur du simulateur d'Apple indique dans Prendre une capture d'écran ou enregistrer une vidéo à l'aide du paragraphe de ligne de commande :
Pour enregistrer une vidéo, utilisez l'
recordVideo
opération dans votre terminal:Notez que le fichier sera créé dans le répertoire courant de votre Terminal.
Si vous souhaitez enregistrer le fichier vidéo dans votre dossier Desktop, utilisez la commande suivante:
Pour arrêter l'enregistrement, appuyez sur
Control-C
dans Terminal.la source
À partir de Xcode 9 et plus, vous pouvez prendre une capture d'écran ou enregistrer une vidéo en utilisant le binaire simctl que vous pouvez trouver ici:
Vous pouvez l'utiliser avec xcrun pour commander le simulateur dans la ligne de commande.
Pour prendre une capture d'écran, exécutez ceci en ligne de commande:
Pour enregistrer une vidéo sur le simulateur à l'aide de la ligne de commande:
Remarque: Vous pouvez utiliser cette commande dans n'importe quel répertoire de votre choix. Le fichier sera enregistré dans ce répertoire.
la source
À partir d'aujourd'hui en 2019, Apple a rendu la vie beaucoup plus facile aux développeurs de projets à petit budget ou individuels comme moi. Vous pouvez simplement utiliser la commande de terminal à partir de l'un des messages ci-dessus pour enregistrer des vidéos à partir du simulateur d'appareil souhaité. Et puis utilisez la nouvelle fonction d'aperçu des applications d'iMovie.
iMovie -> Fichier -> Aperçu de la nouvelle application
la source
Voici une solution qui fonctionne et ne coûte pas 300 $ (FinalCut Pro), mais elle nécessite ScreenFlow ( application ScreenFlow dans l'AppStore ) (100 $):
la source
Le meilleur outil que j'ai trouvé est Appshow. Visitez http://www.techsmith.com/techsmith-appshow.html (je ne travaille pas pour eux)
la source
Un conseil pour les utilisateurs qui aiment utiliser les fonctions ZSH. Vous pouvez simplifier un peu les choses en ajoutant une fonction qui fait la même chose que la réponse de @Tikhonov Alexander.
Commencez par taper:
dans votre terminal.
Ajoutez ensuite cette fonction quelque part dans le fichier.
Pour l'utiliser, tapez quelque chose comme:
dans votre fenêtre de terminal. Remarque: le terminal doit être redémarré après l'ajout de la fonction avant de fonctionner.
Cette fonction est adaptée du billet de blog d'Antoine Van Der Lee sur la façon de faire cela en bash, qui peut être trouvé ici.
la source
xcrun
partie de la ligne entre guillemets en"$1"
- puis spécifiez le nom complet du fichier sur la ligne de commande:recsim appPreview.mp4
Vous pouvez utiliser l'enregistrement d'écran QuickTime et les simulateurs iOS pour effectuer vos enregistrements vidéo. La chose délicate ici est d'obtenir la taille correcte afin qu'iMovie puisse détecter la résolution de sortie lorsque vous allez exporter AppPreview. Je n'ai pas trouvé de moyen de sélectionner la résolution de sortie dans iMovie, donc si elle doit être détectée par le format du support que vous utilisez. Cela peut vous prendre plusieurs essais mais c'est faisable. C'est l'un de ceux-ci: ai-je 300 $ pour FinalCut Pro ou ai-je environ une heure de mon temps? Vous n'avez besoin que de trois enregistrements comme mentionné ci-dessus. Je pourrais en faire deux sur des appareils parce que je les ai mais je n'ai pas d'iPhone 6 (pour l'instant ... :)). J'aime aussi les simulateurs parce que vous pouvez utiliser quelque chose comme SimFinger pour simuler des gestes et appuyer sur des boutons.
Bonne chance!
la source
J'avais la meilleure chance de faire des films de démonstration de haute qualité sur l'App Store pour IOS en utilisant ScreenFlow. J'ai mis à niveau vers 5 pour pouvoir enregistrer directement sur l'appareil, et j'ai obtenu un MacBook Air 2. Mais j'ai d'abord pensé que j'essaierais d'utiliser la méthode de capture QuickTime et peut-être d'éditer avec iMove. Il s'avère que le flux d'écran est imbattable si vous voulez montrer le doigt de l'utilisateur se déplaçant à travers la surface et cliquant sur des choses (ils peuvent ajouter du son, des impulsions radar, etc.) Pour mes applications, cela était très important et créer les transitions et l'édition nécessaires pour atteindre ces effets, au lieu d'exécuter l'application dans le simulateur et de laisser ScreenFlow utiliser les mouvements du curseur, étaient infiniment plus de travail et j'ai abandonné rapidement.
J'ai maintenant eu beaucoup de succès avec les applications iPad et iPhone, y compris 6+ applications. J'ai un nouvel iMac 5K, je peux donc tout simuler, mais toutes mes applications iPad que j'exporte à partir du flux d'écran à 1200x900; Je viens de créer des applications iPhone en 1080x1920 et j'ai eu un vrai problème - je n'arrêtais pas de recevoir le message "La prévisualisation vidéo de votre application n'a pas pu être enregistrée. Réessayez. Si le problème persiste, contactez-nous.". J'ai trouvé une excellente explication de cela ici http://blog.eumlab.com/app-video-preview/mais je n'ai pas aimé "utiliser l'encodeur multimédia Adobe Creative Cloud" pour y remédier, même s'il est gratuit. Donc, après avoir lu les messages sur ce fil, j'ai importé mon film Screen Flow 5 mp4 qui semblait répondre aux spécifications exactes requises (rappelez-vous que le magasin ne rejetait pas mon film, il ne pouvait tout simplement pas l'enregistrer); créé un nouveau projet de "film d'aperçu d'application"; j'ai copié mon clip dans le projet "Film de prévisualisation d'application", puis j'ai exporté le "nouveau" film à l'aide des préréglages intégrés et a) mon 29 deuxième fichier mp4 de 5 Mo est devenu un fichier de 28 Mo; mais b) il a importé la première fois et fonctionne très bien. Même résolution, même fréquence d'images, même encodage audio, même encodage vidéo - mais maintenant l'App Store aime le fichier (maintenant gonflé) et j'ai mes effets de curseur. [ Je n'avais jamais utilisé iMovie auparavant.] Vous pouvez voir ces vidéos sur YouTube ou dans la boutique. Voir par exemple la vidéo iPad d'une version française d'une application d'apprentissage de mots sur http://youtu.be/L0nBYeK4Pm4 ; puis une application iPad qui est une multi-coupe de 8 versions différentes de la langue de l'interface utilisateur de l'application (internationalisée pour 8 langues utilisateur L1 différentes) est ici: http://youtu.be/CjXkAvuBXyQ ; et une vidéo iPhone 6+ d'une version iPhone de la même application est ici: http://youtu.be/36kdLztvc_A . J'ajoute des films à mesure que j'ajoute des fichiers audio et d'autres mises à niveau iOS 7/8 à mes applications d'apprentissage de mots (à l'origine pour m'aider à apprendre à lire les mots chinois) - ce qui semble être un excellent moyen pour les gens de savoir ce qu'ils achètent.
Mais bien sûr, si vous n'avez pas besoin de montrer le "doigt" et les "clics", ou si vous avez déjà maîtrisé de tels effets dans iMovie ou autres, respectez ce que vous savez.
la source
J'étais confronté au même problème. Il a une solution très simple qui a fonctionné pour moi. Suivez simplement ces étapes:
1.Faites un aperçu vidéo dans iMovie.
2.Exportez la vidéo en utilisant l'option de partage de fichiers. Choisissez 1920x1080 car il peut être utilisé pour 5S et 6 plus.
3.Téléchargez Appshow pour Mac par techsmith ( https://www.techsmith.com/techsmith-appshow.html .) Il est spécialement conçu pour créer des vidéos d'aperçu d'application. Mais je ne le recommande pas pour faire des vidéos mais juste pour exporter.
4.Choisissez une nouvelle vidéo d'aperçu d'application et personnalisez-la en choisissant moins d'images que vous pourrez ensuite supprimer.
5.Importez votre vidéo iMovie dans ce modèle. Dans le coin supérieur droit, vous pouvez choisir la résolution que vous souhaitez, appshow a toutes les résolutions requises pour l'aperçu de l'application.
6.Enfin, choisissez simplement l'appareil et exportez la vidéo dans la résolution que vous avez sélectionnée.
la source
Dans Paramètres de mon MBP> Affichages> Affichage, je vois un paramètre pour «Résolution: par défaut pour l'affichage / à l'échelle». Je l'ai réglé sur «Plus d'espace», puis j'ai essayé les différents simulateurs, qui semblent tous tenir à 100% sur l'écran agrandi. Je pense que cela ne fonctionnerait pas avec votre écran FullHD ...
Une alternative pourrait être d'essayer d'installer une sorte de solution de serveur VNC sur le simulateur, comme https://github.com/wingify/vnc , et d'enregistrer cela avec un enregistreur VNC - je crois qu'il y a un enregistreur Python VNC là-bas.
la source
Malheureusement, l'application iOS Simulator ne prend pas en charge l'enregistrement de vidéos. La chose la plus simple à faire est d'utiliser Quicktime Player pour faire un enregistrement d'écran. Bien sûr, vous verrez la souris interagir avec elle, ce qui n'est pas ce que vous voulez, mais je n'ai pas de meilleure option pour vous en ce moment.
la source
Vous pouvez combiner QuickTime Player + iMovie (gratuit)
Dans un premier temps, choisissez votre simulateur souhaité dans xcode et enregistrez l'écran à l'aide de QuickTime Player. Après cela, utilisez iMovie pour créer l'aperçu de l'application et enfin télécharger la vidéo avec le navigateur Safari. C'est simple... :)
la source