YMDynamicDetailInfoAlbumCellViewModel.m 1.5 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546
  1. //
  2. // YMDynamicDetailInfoAlbumCellViewModel.m
  3. // MSYOUPAI
  4. //
  5. // Created by YoMi on 2024/3/21.
  6. // Copyright © 2024 MS. All rights reserved.
  7. //
  8. #import "YMDynamicDetailInfoAlbumCellViewModel.h"
  9. #import "YMDynamicListModel.h"
  10. @interface YMDynamicDetailInfoAlbumCellViewModel ()
  11. /// 相册Url
  12. @property (nonatomic, copy, readwrite) NSString *albumType;
  13. /// 相册Url
  14. @property (nonatomic, copy, readwrite) NSString *albumUrl;
  15. /// 相册尺寸
  16. @property (nonatomic, assign, readwrite) CGSize albumSize;
  17. @end
  18. @implementation YMDynamicDetailInfoAlbumCellViewModel
  19. - (void)ym_initialize{
  20. [super ym_initialize];
  21. if ([self.params[ParamsModel] isKindOfClass:[YMDynamicImageModel class]]) {
  22. YMDynamicImageModel *model = self.params[ParamsModel];
  23. self.albumType = model.exts;
  24. self.albumUrl = model.url;
  25. if ([model.exts isEqualToString:@"mp4"]) {
  26. AVURLAsset *asset = [AVURLAsset assetWithURL:[LCTools getImageUrlWithAddress:model.url]];
  27. NSArray *array = asset.tracks;
  28. CGSize videoSize = CGSizeZero;
  29. for (AVAssetTrack *track in array) {
  30. if ([track.mediaType isEqualToString:AVMediaTypeVideo]){
  31. videoSize = track.naturalSize;
  32. }
  33. }
  34. self.albumSize = CGSizeMake(videoSize.width*0.8, videoSize.height*0.8);
  35. }else{
  36. self.albumSize = CGSizeMake([model.width floatValue]*0.8, [model.height floatValue]*0.8);
  37. }
  38. }
  39. }
  40. @end