AVAsset changer le naturalSize

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


 


Réponses

  • CéroceCéroce Membre, Modérateur

    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 ?
  • Fred20Fred20 Membre

    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 ?


  • CéroceCéroce Membre, Modérateur

    Je ne sais pas  :o


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


  • Fred20Fred20 Membre

    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)

Connectez-vous ou Inscrivez-vous pour répondre.