V7.11.0
Mises à jour des fonctionnalités
Correction de plusieurs problèmes connus.
V7.10.0
Mises à jour des fonctionnalités
Correction de plusieurs problèmes connus.
V7.9.1
Mises à jour des fonctionnalités
Correction de plusieurs problèmes connus.
V7.8.0
Mises à jour des fonctionnalités
Correction de plusieurs problèmes connus.
V7.7.0
Mises à jour des fonctionnalités
Correction de plusieurs problèmes connus.
V7.6.0
Mises à jour des fonctionnalités
Correction de plusieurs problèmes connus.
V7.5.0
Mises à jour des fonctionnalités
Correction de plusieurs problèmes connus.
V7.4.0
Mises à jour des fonctionnalités
Correction de plusieurs problèmes connus.
V7.3.0
Mises à jour des fonctionnalités
Correction de plusieurs problèmes connus.
V7.2.0
Mises à jour des fonctionnalités
Correction de plusieurs problèmes connus.
V7.1.0
Mises à jour des fonctionnalités
Correction de plusieurs problèmes connus.
V7.0.0
Mises à jour des fonctionnalités
Le package SDK est désormais unifié et remplace les packages distincts des éditions Basic, Standard et Professionnelle. Les fonctionnalités sont activées selon votre licence.
Correction de plusieurs problèmes connus.
V6.15.0
Mises à jour des fonctionnalités
Prise en charge d'iOS 18.
Correction de plusieurs problèmes connus.
V6.7.0
Mises à jour des fonctionnalités
Correction de plusieurs problèmes connus.
V6.0.0
Mises à jour des fonctionnalités
Le numéro de version correspond désormais à celui du SDK ApsaraVideo MediaBox.
Correction de problèmes connus spécifiques.
V3.36.0
Mises à jour des fonctionnalités
Correction de plusieurs problèmes connus.
V3.35.0
Mises à jour des fonctionnalités
Correction de plusieurs problèmes connus.
V3.34.1
Mises à jour des fonctionnalités
Correction de plusieurs problèmes connus.
V3.34.0
Mises à jour des fonctionnalités
Configuration possible du taux d'échantillonnage audio et du nombre de canaux lors de l'exportation vidéo.
Correction de plusieurs problèmes connus.
V3.33.0
Mises à jour des fonctionnalités
Optimisation du rendu personnalisé dans l'éditeur.
Correction de plusieurs problèmes connus.
V3.32.0
Mises à jour des fonctionnalités
Prise en charge de Bitcode.
Prise en charge de la composition en temps réel pour l'enregistrement en duo.
Prise en charge du téléversement pendant la composition lors de l'exportation vidéo.
Correction de plusieurs problèmes connus.
V3.31.0
Mises à jour des fonctionnalités
Option de rayon de bordure pour les arrière-plans de sous-titres.
Effet miroir ajouté au mode édition.
Optimisation de la logique de vérification de licence.
Optimisation de la persistance des journaux pour faciliter le dépannage lors de l'intégration.
Correction de certains problèmes connus.
V3.30.0
Mises à jour des fonctionnalités
Amélioration de la méthode d'intégration de licence.
Amélioration des performances de recadrage.
Correction de plusieurs problèmes connus.
V3.29.0
Mises à jour des fonctionnalités
Optimisation de la fonctionnalité de recadrage.
Mise à jour du service de licence. Consultation possible des informations de licence.
Correction de problèmes connus spécifiques.
V3.28.0
Corrections de bugs
Correction de plusieurs problèmes connus.
V3.27.0
Mises à jour des fonctionnalités
Prise en charge de l'annulation d'écho, de la réduction du bruit et du mixage musique de fond/audio enregistré lors de l'enregistrement multi-sources.
Ajout de l'effet de filtre LUT (Lookup Table).
Correction de plusieurs problèmes connus.
V3.26.0
Mises à jour des fonctionnalités
Amélioration de la stabilité du SDK.
Correction d'un problème lié à la non-prise en charge de certains formats audio.
V3.25.1
Mises à jour des fonctionnalités
Optimisation de l'utilisation mémoire pour les sous-titres.
Correction d'un problème provoquant la corruption d'images lors du recadrage d'une vidéo HDR précédemment éditée avec l'éditeur intégré de l'iPhone.
Correction d'un problème d'affichage survenant après l'exportation d'une vidéo enregistrée en mode paysage.
Correction de plusieurs problèmes connus.
V3.25.0
Mises à jour des fonctionnalités
Fonctionnalité d'incrustation d'image (PiP) ajoutée à l'éditeur.
Fonctionnalité d'animation de sous-titres et de textes stylisés ajoutée.
Ajout de vignettes personnalisées possible dans la boîte de brouillons.
Correction de plusieurs problèmes connus.
V3.24.0
Mises à jour des fonctionnalités
Optimisation du SDK par suppression de l'encodage logiciel basé sur FFmpeg.
Correction d'un problème empêchant la prise en compte du paramètre de couleur d'arrière-plan lors du recadrage et de l'édition.
Correction de plusieurs problèmes connus.
V3.23.0
Mises à jour des fonctionnalités
Fonctionnalité de boîte de brouillons pour l'exportation des brouillons.
Options de couleur d'arrière-plan et d'alignement pour les sous-titres.
Annulation d'écho pour l'enregistrement en duo.
Remplacement du module de retouche dans la démo par le SDK Queen.
Ajout de six effets de filtre d'écran partagé à la démo.
Suppression automatique des fichiers vidéo temporaires après l'enregistrement.
Prise en charge de l'édition et du recadrage de vidéos HDR.
V3.22.0
Mises à jour des fonctionnalités
Fonctionnalité de texte stylisé ajoutée à l'éditeur.
Fonctionnalité d'enregistrement en duo prenant en charge plusieurs sources d'enregistrement.
Fonctionnalité de capture d'écran partielle.
Ajout de la variable de temps intégrée
BUILTIN_PROGRESSà la classe de shader d'effets personnalisés.Amélioration de la stabilité du SDK.
Modifications de l'API
-
Nouvelle API :
(AliyunStickerManager *)getStickerManager; -
API obsolètes :
(AliyunPasterManager *)getPasterManager;(id<AliyunIPasterRender>)getPasterRender;
V3.21.0
Mises à jour des fonctionnalités
Prise en charge de l'ajustement de la hiérarchie des vues et de la configuration des effets de bordure pour l'enregistrement en duo.
Prise en charge de l'importation et de l'édition de vidéos en miroir.
Optimisation de l'utilisation mémoire lors de l'encodage logiciel.
Correction de problèmes de stabilité du SDK.
V3.20.0
Mises à jour des fonctionnalités
Effets de fondu entrant et sortant pour l'audio dans le module d'édition.
Fonctionnalité de combinaison de sous-titres dans le module d'édition.
Fonctions d'édition de base ajoutées au module d'édition.
Récupération d'une vignette vidéo à partir d'un horodatage spécifique.
Correction d'un problème empêchant la prise en compte du paramètre de fréquence d'images des vidéos exportées dans le module d'édition.
Correction de problèmes de stabilité du SDK.
V3.19.0
Mises à jour des fonctionnalités
Fonctionnalité de réduction du bruit audio dans le module d'édition.
Enregistrement en duo et fusion vidéo, avec prise en charge de la définition d'une image et d'une couleur d'arrière-plan.
Fusion de pistes audio pour l'enregistrement en duo et la fusion vidéo.
Annulation d'écho pour l'enregistrement en duo.
Correction d'un problème modifiant la couleur de certaines images de halo transparentes après application en tant que filigrane ou superposition.
Correction d'un angle de rotation incorrect pour les images statiques ajoutées.
Modifications de l'API
API obsolète
La propriété useAudioSessionModeVideoRecording dans AliyunCamera & AliyunIRecorder est obsolète.
V3.18.1
Corrections de bugs
Correction d'un problème mémoire lié à l'encodage matériel sur certains modèles iOS.
V3.18.0
Mises à jour des fonctionnalités
Spécification possible de la piste audio pour l'enregistrement en duo (options : audio de la vidéo originale, audio enregistré ou muet).
V3.17.1
Mises à jour des fonctionnalités
Prise en charge du redimensionnement d'image sur la caméra frontale.
Correction d'un plantage OpenGL survenant après la composition vidéo sur certains appareils.
V3.17.0
Mises à jour des fonctionnalités
Optimisation de l'effet « voix féminine dynamique » et ajout de nouveaux effets vocaux dialectaux.
Correction d'un écran vert dans le module de recadrage et d'édition lors de l'importation de vidéos depuis la caméra intégrée de l'iPhone 12.
V3.16.2
Corrections de bugs
Correction d'un problème lié aux arrière-plans flous gaussiens.
V3.16.1
Corrections de bugs
Correction d'un échec de composition lorsque la durée d'enregistrement dépassait celle de la vidéo.
V3.16.0
Mises à jour des fonctionnalités
Restauration des principales fonctionnalités d'animation.
Correction d'un plantage occasionnel signalé par les utilisateurs.
Correction d'un problème potentiel de saccades lors de la lecture de longues vidéos.
Correction d'un problème d'orientation du filigrane lors de l'enregistrement en mode paysage.
V3.15.0
Mises à jour des fonctionnalités
Correction d'un problème de saccades lors de la lecture des vidéos composées.
Correction d'un échec de variation de vitesse pour les vidéos multi-segments.
Deux nouvelles séries de transitions et d'effets de filtre basés sur la nouvelle spécification d'effets personnalisés.
Modifications de l'API
API d'ajustement des paramètres d'effets personnalisés en temps réel.
Prise en charge des filtres personnalisés et des effets de transition. Pour les spécifications de création d'effets personnalisés, reportez-vous à la documentation officielle.
V3.14.0
Améliorations
Optimisation du module de recadrage pour éviter la distorsion des couleurs après des recadrages répétés.
Amélioration de la stabilité de l'enregistrement dans des conditions exceptionnelles (passage en arrière-plan de l'application, forte utilisation des ressources matérielles).
Correction de plusieurs fuites mémoire connues et optimisation des performances.
Corrections de bugs
Correction d'un gel occasionnel lorsque l'application passe en arrière-plan pendant l'enregistrement.
Correction d'une exception survenant si les ressources audio étaient occupées pendant l'enregistrement.
Correction d'un problème empêchant la prise en compte des paramètres de couleur d'arrière-plan dans l'éditeur.
Correction sur iOS d'un zoom partiel de la vidéo après changement de vue dans l'éditeur.
Correction de plusieurs fuites mémoire et autres problèmes connus.
Modifications de l'API
Le framework AliyunVideoSDKPro.framework (dynamique) est désormais scindé en AliyunVideoSDKPro.framework (statique) et AliyunVideoCore.framework (dynamique). Cette modification affecte les intégrations manuelles du SDK.
Pour plus d'informations, reportez-vous à Intégrer le SDK vidéo court pour iOS.
V3.13.0
Mises à jour des fonctionnalités
Optimisation complète de la stabilité et des performances du module d'enregistrement.
Fonctionnalités de retouche et de remodelage du visage basées sur RACE dans le module d'enregistrement.
Amélioration de la fluidité de lecture des vidéos H.265 dans le module d'édition.
Modifications de l'API
Les API MV du module d'enregistrement sont obsolètes et la fonctionnalité d'ajout de MV est supprimée.
V3.12.0
Mises à jour des fonctionnalités
-
Fonctionnalité d'analyse des journaux et API
[AliyunVideoSDKInfo setDebugLogLevel:]permettant d'activer ou de désactiver l'analyse. Trois niveaux sont disponibles :AlivcDebugLogClose: Disables log analysis. AlivcDebugLogNormal: Analyzes logs at the WARNING and ERROR levels. This is the recommended level for log analysis. AlivcDebugLogAll: Analyzes all logs. This level is intended only for troubleshooting complex issues and is not recommended for production releases. This feature analyzes only SDK logs. Amélioration des performances du module d'édition.
Corrections de bugs
Correction dans le module d'enregistrement d'un thread ne se terminant pas correctement.
Modifications de l'API
L'API applyRunningDisplayMode du module d'édition est obsolète ; la fonctionnalité de changement dynamique des modes d'affichage est supprimée.
V3.11.0
Améliorations
Amélioration de la vitesse de démarrage/arrêt et de composition pour l'enregistrement de clips, rendant l'enregistrement segmenté plus fluide.
Optimisation de la granularité et de la précision des rappels de progression de l'enregistrement.
Contrôle précis du groupe d'images (GOP) activé pour améliorer la vitesse de transcodage dans certains scénarios.
Réduction du temps de changement de caméra.
Corrections de bugs
Correction d'une analyse incorrecte du nombre d'images des GIF.
Correction de saccades au début de la lecture inversée pour certaines vidéos.
Correction d'une durée inexacte pour les vidéos enregistrées.
Correction d'un problème de synchronisation audio-vidéo dans la sortie des enregistrements multi-segments.
Modifications de l'API
Standardisation de tous les codes d'erreur externes sous la forme
AliyunVideoCoreError.Ajout de la méthode
NSString* AlivcErrorMessage(int code)pour récupérer les descriptions d'erreur.
V3.10.5
Mises à jour des fonctionnalités
Fonctionnalité d'enregistrement en duo (
AliyunMixRecorder).Fusion vidéo multi-pistes (
AliyunMixComposer) pour créer des effets tels que l'incrustation d'image (PiP) et l'écran partagé.
V3.10.0
Mises à jour des fonctionnalités
Effets vocaux « sinister » et « minion » ajoutés à l'éditeur.
Prise en charge du format vidéo MJPEG dans l'éditeur.
Amélioration de la compatibilité de lecture avec les fichiers vidéo partiellement corrompus.
Méthode
drawajoutée à l'éditeur pour forcer le dessin d'une image.
Corrections de bugs
Correction d'une durée inexacte pour les courts clips vidéo enregistrés.
Correction de la disparition d'un filigrane ajouté pendant l'enregistrement après passage de l'application en arrière-plan.
Correction de saccades lors du basculement entre les caméras avant et arrière pendant l'enregistrement.
Correction d'un plantage potentiel survenant si l'application passe en arrière-plan pendant la composition et l'exportation depuis l'éditeur.
V3.9.0
Mises à jour des fonctionnalités
Nouvelle API d'effets vocaux proposant quatre effets : « voix féminine dynamique », « voix masculine rauque », « réverbération » et « écho ».
Amélioration des performances de recherche dans le module d'édition.
Amélioration de la stabilité du SDK.
V3.8.0
Mises à jour des fonctionnalités
Amélioration de la stabilité de l'enregistrement.
Amélioration de la précision de la sélection temporelle lors du recadrage.
Optimisation de la lecture dans l'éditeur pour une lecture fluide et sans saccades.
Optimisation de la vitesse de composition dans l'éditeur.
Correction de plusieurs bugs.
Prise en charge de la reprise de la composition après retour de l'application depuis l'arrière-plan.
Pour garantir la surveillance de la stabilité du SDK et répondre aux futures exigences liées aux données, le SDK vidéo court nécessite désormais la dépendance
AlivcConan.framework. Pour une intégration manuelle, ajoutez ce framework. Pour une intégration CocoaPods, ajoutezpod 'AlivcConan', '0.9.0'à votre Podfile. Pour plus d'informations, consultez la démo.
V3.7.7
Améliorations
Amélioration de la stabilité du SDK.
Amélioration de la clarté des vidéos recadrées et composées.
V3.7.5
Mises à jour des fonctionnalités
Correction d'un bug provoquant des artefacts d'affichage lors de la lecture inversée de vidéos HEVC générées par iOS 12.
Correction d'un plantage potentiel lors de l'utilisation d'une API de rendu tierce pendant l'édition.
Amélioration de la fluidité de lecture pour les effets temporels.
Amélioration de la compatibilité pour l'importation d'images GIF.
Prise en charge de l'importation de vidéos avec des résolutions impaires.
Optimisation de la synchronisation audio-vidéo pour l'enregistrement multi-segments.
Amélioration de la stabilité.
V3.7.0
Mises à jour des fonctionnalités
Effets de transition, y compris des effets courants tels que le fondu entrant/sortant, le polygone et les stores.
API d'animations incluant des animations de base (rotation, translation, mise à l'échelle, alpha) et des effets d'animation personnalisés (balayage linéaire).
Application d'un effet de flou gaussien à un flux spécifié pendant une période donnée.
Définition du mode d'affichage (remplissage ou recadrage) pour un flux spécifié pendant une période donnée.
API de doublage prenant en charge le doublage multi-segments et la variation de vitesse.
Prise en charge de l'application de plusieurs effets temporels de variation de vitesse à une vidéo multi-segments. Les effets de répétition et d'inversion restent limités aux vidéos à segment unique.
Modifications de l'API
Après la fin d'un aperçu de l'éditeur, appelez l'API
replayau lieu deplaypour relire l'aperçu.API
prepareajoutée à l'éditeur pour le préchargement des données. Appelez cette API aprèsstartEdit.Le système de coordonnées de référence pour la position et la taille des filigranes utilise désormais les coordonnées de résolution de sortie.
Pour appliquer un effet de transition, appelez
stopEdit, appliquez la transition, puis appelezstartEdit.Suppression de la propriété
delegatedeAliyunPasterController.Suppression de l'API
destroyAllEffectdeAliyunEditor.Renommage de
QuCore-ThirdParty.frameworkenalivcffmpeg.framework.
V3.6.5.5
Mises à jour des fonctionnalités
Compatibilité avec Xcode 10.x.
V3.6.5.3
Corrections de bugs
Correction d'un plantage occasionnel causé par le verrouillage de l'écran lors de l'ajout d'un MV pendant l'enregistrement.
Correction d'un timing inexact des effets de filtre lors de la lecture inversée.
Correction d'un affichage incorrect de la gamme de couleurs de certaines vidéos.
Prise en charge de l'audio au format AAC SBR.
V3.6.5
Mises à jour des fonctionnalités
Correction d'un plantage occasionnel lors de l'exportation.
Amélioration de la fluidité de la lecture vidéo inversée.
V3.6.0
Mises à jour des fonctionnalités
Taille du package et informations générales
|**Nom du package**
|
**Taille du package (Mo)**
| | --- | --- | |
AliyunVideoSDKPro.framework 3.5.0 release
|
4,9
| |
AliyunVideoSDKPro.framework 3.5.0 debug
|
10,1
| |
AliyunVideoSDKPro.framework 3.6.0 release
|
7,6
| |
AliyunVideoSDKPro.framework 3.6.0 debug
|
15,7
| |
QuCore-ThirdParty.framework 3.5.0 release
|
9,3
| |
QuCore-ThirdParty.framework 3.5.0 debug
|
23,1
| |
QuCore-ThirdParty.framework 3.6.0 release
|
10,2
| |
QuCore-ThirdParty.framework 3.6.0 debug
|
23,2
|
Vous devez remplacer à la fois AliyunVideoSDKPro.framework et QuCore-ThirdParty.framework. Sinon, des problèmes tels que des plantages lors de la composition peuvent survenir.
Modifications de l'API
-
API de filigrane
-(void)setWaterMark: frameest obsolète. Utilisez-(void)setWaterMark:(AliyunEffectImage *)effectImageà la place. Exemple :NSString *watermarkPath = [[NSBundle mainBundle] pathForResource:@"watermark" ofType:@"png"]; AliyunEffectImage *effectImage = [[AliyunEffectImage alloc] init]; effectImage.frame = CGRectMake(10, 10, 28, 20); effectImage.path = watermarkPath; [self.editor setWaterMark:effectImage]; -
API de générique de fin
La version 3.6 prend en charge l'aperçu des filigranes de générique de fin. Pour activer cette fonctionnalité, appelez
-(void)setTailWaterMark. Exemple :NSString *tailWatermarkPath = [[NSBundle mainBundle] pathForResource:@"tail" ofType:@"png"]; AliyunEffectImage *tailWatermark = [[AliyunEffectImage alloc] initWithFile:tailWatermarkPath]; tailWatermark.frame = CGRectMake(CGRectGetMidX(self.movieView.bounds) - 84 / 2, CGRectGetMidY(self.movieView.bounds) - 60 / 2, 84, 60); tailWatermark.endTime = 2; [self.editor setTailWaterMark:tailWatermark]; -
API musicale
-
La version 3.6 prend en charge le mixage de plusieurs flux audio. Si vous souhaitez ajouter un seul flux audio, appelez d'abord l'API
removeMusics. Exemple :AliyunEffectMusic *music = [[AliyunEffectMusic alloc] initWithFile:path]; [self.editor removeMusics]; // Call this if you only need one audio track. [self.editor applyMusic:music]; -
Lors de l'ajout de musique, appelez également
-(void)removeMVMusic. Exemple :[self.editor removeMVMusic]; [self.editor removeMusics]; [self.editor applyMusic:music]; -
La version 3.6 prend en charge la lecture d'une plage temporelle spécifique d'un fichier musical. Exemple :
AliyunEffectMusic *music = [[AliyunEffectMusic alloc] initWithFile:path]; music.startTime = startTime; // Start time within the source music file. music.duration = duration; // Playback duration from the source music file. music.streamStartTime = streamStart; // Start time on the main playback timeline. music.streamDuration = streamDuration; // Playback duration on the main playback timeline.
-
-
Affichage des effets temporels
Consultez l'API
-(void)addTimelineTimeFilterItemdans la démo pour un exemple de code.-
Interaction entre les effets temporels et les autres filtres d'effets spéciaux
Lors de l'ajout d'un filtre à une vidéo ayant un effet temporel appliqué (tel que la variation de vitesse ou l'inversion), assurez-vous que le temps d'affichage est correctement défini. Le code pertinent se trouve dans les trois méthodes suivantes de la démo v3.6 :
(void)didBeganLongPressEffectFilter:(AliyunEffectFilterInfo *)animationFilterInfo; (void)didTouchingProgress; (void)didEndLongPress;Vous pouvez utiliser directement ce code :
AliyunEffectFilter *animationFilter = [[AliyunEffectFilter alloc] initWithFile:[animationFilterInfo localFilterResourcePath]]; float currentSec = [self.player getCurrentTime]; float currentStreamSec = [self.player getCurrentStreamTime]; animationFilter.startTime = currentSec; animationFilter.endTime = [self.player getDuration]; animationFilter.streamStartTime = currentStreamSec; // New property. Must be set if time effects are used. animationFilter.streamEndTime = [self.player getStreamDuration]; // New property. Must be set if time effects are used. [self.editor applyAnimationFilter:animationFilter];Pour assurer la rétrocompatibilité, si aucun effet temporel n'est appliqué, vous pouvez continuer à définir uniquement
startTimeetendTimesans définirstreamStartTimeetstreamEndTime.
-
Nouvelles API d'effets temporels
Aucun problème de compatibilité ne surviendra lors de la mise à niveau depuis la version 3.5. Pour des exemples de code, consultez la démo version 3.6 :
AliyunEffectTimeFilter *timeFilter = [[AliyunEffectTimeFilter alloc] init]; timeFilter.startTime = [_player getCurrentStreamTime]; timeFilter.endTime = timeFilter.startTime + 1; timeFilter.type = TimeFilterTypeSpeed; timeFilter.param = 0.5; [self.editor applyTimeFilter:timeFilter]; -
Ajustements de l'état de lecture et des appels d'API (pour le passage en arrière-plan/premier plan et le changement de page)
La version 3.6 gère désormais en interne le passage en arrière-plan/premier plan et le changement de page :
La méthode
-(void)setActiveest obsolète.Gestion de
viewWillAppearetviewWillDisappear: DansviewWillDisappear, il n'est plus nécessaire d'appelerstopEditpour détruire l'intégralité de l'instanceAliyunEdit. Appelez simplementstoppour arrêter la lecture. De même, dansviewWillAppear, appelez simplementplaypour reprendre la lecture.-
Gestion du basculement arrière-plan/premier plan : Lorsque l'application passe en arrière-plan, le SDK arrête la lecture ou l'exportation. Lorsque l'application revient au premier plan, elle reprend automatiquement la lecture (ou reste en pause).
Gestion des erreurs : Dans la version 3.6, si une erreur se produit lors de la lecture ou de l'exportation, le processus s'arrête et l'erreur est renvoyée via le rappel
playErrorouexportError.Gestion des erreurs :
Dans la version 3.6, une erreur lors de la lecture ou de l'exportation arrête l'opération et renvoie une erreur via
playErrorouexportError. Vous pouvez ensuite gérer l'erreur selon vos besoins.
-
Les trois API suivantes de la classe
AliyunImportersont obsolètes. Elles sont conservées pour assurer la rétrocompatibilité et ne poseront pas de problème si elles sont appelées.(void)addVideoWithPath:(NSString *)videoPath animDuration:(CGFloat)animDuration;(void)addVideoWithPath:(NSString *)videoPath startTime:(CGFloat)startTime duration:(CGFloat)duration animDuration:(CGFloat)animDuration;(NSString *)addImage:(UIImage *)image duration:(CGFloat)duration animDuration:(CGFloat)animDuration;
La nouvelle approche consiste à construire un objet
AliyunClip.
En raison de l'ajout d'effets temporels, il est important de comprendre les concepts suivants liés au lecteur :
-
/** Obtient la durée totale de lecture, en secondes. @return Durée totale */
(double)getDuration -
/** Obtient le temps de lecture actuel, en secondes. */
(double)getCurrentTime -
/ Obtient la durée du flux vidéo original, en secondes. @return La durée totale. /
(double)getStreamDuration -
/** Obtient le temps de lecture actuel du flux vidéo original, en secondes. */
(double)getCurrentStreamTime
Exemples
Pour une vidéo de 15 secondes lue à vitesse 2x :
getDuration()renvoie 7,5 secondes. LorsquegetCurrentTime()est de 3,5 secondes,getStreamDuration()est de 15 secondes etgetCurrentStreamTime()est de 7 secondes.Pour une vidéo de 15 secondes lue à vitesse 0,5x :
getDuration()renvoie 30 secondes. LorsquegetCurrentTime()est de 10 secondes,getStreamDuration()est de 15 secondes etgetCurrentStreamTime()est de 5 secondes.Pour une vidéo de 15 secondes lue en inversion :
getDuration()renvoie 15 secondes. LorsquegetCurrentTime()est de 6 secondes,getStreamDuration()est de 15 secondes etgetCurrentStreamTime()est de 9 secondes.
Les mêmes règles de calcul s'appliquent lorsque des effets temporels (tels que la variation de vitesse ou la répétition) sont appliqués à une partie seulement de la vidéo.
Autres
Notes de version
-
Nouvelles API d'effets temporels
(int)applyTimeFilter:(AliyunEffectTimeFilter *)filter;(int)removeTimeFilter;
-
Les API de la classe
AliyunImportersont ajustées. Les trois API suivantes sont obsolètes :(void)addVideoWithPath:(NSString *)videoPath animDuration:(CGFloat)animDuration;(void)addVideoWithPath:(NSString *)videoPath startTime:(CGFloat)startTime duration:(CGFloat)duration animDuration:(CGFloat)animDuration;-
(NSString *)addImage:(UIImage *)image duration:(CGFloat)duration animDuration:(CGFloat)animDurationLa nouvelle approche consiste à construire un objet
AliyunClip.
-
Ajustements de l'état de lecture et des appels d'API : La version 3.6 gère en interne le passage en arrière-plan/premier plan et le changement de page.
La méthode
(void)setActiveest obsolète.Gestion de
viewWillAppearetviewWillDisappear: LorsqueviewWillDisappearse produit, il n'est plus nécessaire d'appelerstopEditpour détruire l'intégralité de l'instanceAliyunEdit. Appelez simplementstoppour arrêter la lecture. De même, dansviewWillAppear, appelez simplementplaypour reprendre la lecture.Gestion du basculement arrière-plan/premier plan : Lorsque l'application passe en arrière-plan, le SDK arrête la lecture ou l'exportation. Lorsque l'application revient au premier plan, elle reprend automatiquement la lecture (ou reste en pause).
Gestion des erreurs : Dans la version 3.6, si une erreur se produit lors de la lecture ou de l'exportation, le processus s'arrête et l'erreur est renvoyée via le rappel
playErrorouexportError. -
Nouvelles API de lecteur
(double)getStreamDuration;// Obtient la durée du flux vidéo original, en secondes.(double)getCurrentStreamTime;// Obtient le temps de lecture actuel du flux vidéo original, en secondes.
-
Filigranes
L'API
-(void)setWaterMark: frameest obsolète.Utilisez
-(void)setWaterMark:(AliyunEffectImage *)effectImageà la place.L'aperçu des filigranes de générique de fin est désormais possible en appelant l'API
-(void)setTailWaterMark.
-
API musicale
-
Prise en charge de plusieurs flux audio et de la lecture de plages temporelles spécifiques d'un fichier audio. Si vous souhaitez ajouter un seul flux audio, appelez d'abord l'API
removeMusics. Exemple :AliyunEffectMusic *music = [[AliyunEffectMusic alloc] initWithFile:path]; [self.editor removeMusics]; // Call this if you only need one audio track. [self.editor applyMusic:music]; -
Prise en charge de la lecture d'une plage temporelle spécifique d'un fichier musical. Exemple :
AliyunEffectMusic *music = [[AliyunEffectMusic alloc] initWithFile:path]; music.startTime = startTime; // Start time within the source music file. music.duration = duration; // Playback duration from the source music file. music.streamStartTime = streamStart; // Start time on the main playback timeline. music.streamDuration = streamDuration; // Playback duration on the main playback timeline.
-