Aller au contenu


Photo

AVAsset changer le naturalSize


  • Please log in to reply
4 réponses à ce sujet

#1 Fred20

Fred20

    Ecabosseur en fèves

  • Membre
  • PipPipPipPip
  • 304 messages

Posté 30 mai 2017 - 09:51

Bonjour à tous

 

Je cherche à modifier le natural size d'un AVAsset mais j'ai beau regarder sur internet, je ne vois pas de chose explicite. En fait, j'ai bien compris que asset.naturalSize est en readonly mais comment lui affecter une nouvelle valeur ?

Merci d'avance

 



#2 Céroce

Céroce

    Mouleur de chocolats

  • Contrôleur d'arômes
  • 5 325 messages
  • LocationSaint-Leu-d'Esserent / France

Posté 30 mai 2017 - 10:06

Je cherche à modifier le natural size d'un AVAsset mais j'ai beau regarder sur internet, je ne vois pas de chose explicite. En fait, j'ai bien compris que asset.naturalSize est en readonly mais comment lui affecter une nouvelle valeur ?

Il faut probablement créer un nouvel AVAsset. C'est assez logique. Si ta vidéo fait 800 x 600, tu peux réduire sa taille à 400 x 300, mais ce sera une nouvelle vidéo.

Par contre AVAsset n'a pas de propriété naturalSize, tu dois parler d'AVAssetTrack, non ?
RenaudPradenc.com Je suis développeur iOS & Mac indépendant.

#3 Fred20

Fred20

    Ecabosseur en fèves

  • Membre
  • PipPipPipPip
  • 304 messages

Posté 30 mai 2017 - 10:53

Bonjour Céroce

 

En fait, j'ai utilisé un AVMutableComposition qui a un naturalSize.

 

...Et du coup, comment créer un nouvel assit avec ces nouvelles dimensions ?



#4 Céroce

Céroce

    Mouleur de chocolats

  • Contrôleur d'arômes
  • 5 325 messages
  • LocationSaint-Leu-d'Esserent / France

Posté 30 mai 2017 - 13:59

Je ne sais pas  :baby:

Mais j'ai bien peur que tu doives traiter image par image et recompresser.


RenaudPradenc.com Je suis développeur iOS & Mac indépendant.

#5 Fred20

Fred20

    Ecabosseur en fèves

  • Membre
  • PipPipPipPip
  • 304 messages

Posté 30 mai 2017 - 17:02

Aîe !!!!

 

En effet, j'ai vu des choses avec notamment AVMutableComposition et  [myAsset setNaturalSize: CGSizeMake(100, 100)]; mais cela ne m'affiche qu'une zone de la vidéo (100 x 100)

 

ou alors 

        NSDictionary *videoSettings = [NSDictionary dictionaryWithObjectsAndKeys:
                                       [NSNumber numberWithInt: 100], AVVideoWidthKey,
                                       [NSNumber numberWithInt:100], AVVideoHeightKey,
                                       nil];
        
           AVURLAsset *firstAsset = [[AVURLAsset alloc]initWithURL:monUrl options: videoSettings];// création de l'Asset
 

...mais ne fonctionne pas

 

ou encore avec un AVMutableVideoComposition et renderSize mais j'ai le même résultat que pour setNaturalSize

 

...Des idées ?

D'autant qu'on pouvait le faire sous QTKit (qui ne fonctionne plus maintenant et c'est pourquoi je dois passer sous AVFoundation)






0 utilisateur(s) li(sen)t ce sujet

0 membre(s), 0 invité(s), 0 utilisateur(s) anonyme(s)