Files
sociology_app/uni_modules/zy-AliyunPlayer/ios/AliyunPlayer.framework/Headers/AVPMediaInfo.h
2024-07-17 14:06:06 +08:00

188 lines
4.4 KiB
Objective-C
Raw Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
//
// AVPMediaInfo.h
// AliPlayerSDK
//
// Created by shiping.csp on 2018/11/16.
// Copyright © 2018 com.alibaba.AliyunPlayer. All rights reserved.
//
#ifndef AVPMediaInfo_h
#define AVPMediaInfo_h
#import <Foundation/Foundation.h>
const static int SELECT_AVPTRACK_TYPE_VIDEO_AUTO = -1;
/**
@brief track type
* AVPTRACK_TYPE_VIDEO: video track
* AVPTRACK_TYPE_AUDIO: audio track
* AVPTRACK_TYPE_SUBTITLE: subtitle track
* AVPTRACK_TYPE_MIXED: have auido and video info in this track
*/
typedef enum AVPTrackType: NSUInteger {
AVPTRACK_TYPE_VIDEO,
AVPTRACK_TYPE_AUDIO,
AVPTRACK_TYPE_SUBTITLE,
AVPTRACK_TYPE_SAAS_VOD,//track from vod
} AVPTrackType;
OBJC_EXPORT
@interface AVPTrackInfo : NSObject
/**
@brief track type @see AVPTrackType
*/
@property (nonatomic, assign) AVPTrackType trackType;
/**
@brief vod format
*/
@property (nonatomic, copy) NSString* vodFormat;
/**
@brief track index
*/
@property (nonatomic, assign) int trackIndex;
/**
@brief track definition, only meaningful if the trackType is AVPTRACK_TYPE_SAAS_VOD
*/
@property (nonatomic, copy) NSString* trackDefinition;
/**
@brief vod file size, only meaningful if the trackType is AVPTRACK_TYPE_SAAS_VOD
*/
@property (nonatomic, assign) int64_t vodFileSize;
/**
@brief vod play URL, only meaningful if the trackType is AVPTRACK_TYPE_SAAS_VOD
*/
@property (nonatomic, copy) NSString* vodPlayUrl;
/**
@brief waterMark URL, only meaningful if the trackType is AVPTRACK_TYPE_SAAS_VOD
*/
@property (nonatomic, copy) NSString* waterMarkUrl;
/**
@brief video width, only meaningful if the trackType is AVPTRACK_TYPE_VIDEO
*/
@property (nonatomic, assign) int videoWidth;
/**
@brief video height, only meaningful if the trackType is AVPTRACK_TYPE_VIDEO
*/
@property (nonatomic, assign) int videoHeight;
/**
@brief bitrate, only meaningful if the trackType is AVPTRACK_TYPE_VIDEO
*/
@property (nonatomic, assign) int trackBitrate;
/**
@brief the number of audio channel, only meaningful if the trackType is AVPTRACK_TYPE_AUDIO
*/
@property (nonatomic, assign) int audioChannels;
/**
@brief audio samplerate, only meaningful if the trackType is AVPTRACK_TYPE_AUDIO
*/
@property (nonatomic, assign) int audioSamplerate;
/**
@brief audio sampleFormat, only meaningful if the trackType is AVPTRACK_TYPE_AUDIO
*/
@property (nonatomic, assign) int audioSampleFormat;
/**
@brief audio Language, only meaningful if the trackType is AVPTRACK_TYPE_AUDIO
*/
@property (nonatomic, copy) NSString* audioLanguage;
/**
@brief subtitle Language, only meaningful if the trackType is AVPTRACK_TYPE_SUBTITLE
*/
@property (nonatomic, copy) NSString* subtitleLanguage;
@end
OBJC_EXPORT
@interface AVPThumbnailInfo : NSObject
/**
@brief thumbnail URL
*/
@property (nonatomic, copy) NSString* URL;
@end
OBJC_EXPORT
@interface AVPMediaInfo : NSObject
/**
@brief media title
*/
@property (nonatomic, copy) NSString* title;
/**
@brief media cover url
*/
@property (nonatomic, copy) NSString* coverURL;
/**
@brief media type
* video audio video|audio
*/
@property (nonatomic, copy) NSString* mediaType;
/**
@brief media status
*/
@property (nonatomic, copy) NSString* status;
/**
@brief media duration
* 单位: 毫秒
*/
/****
@brief media duration
* Unit: millisecond.
*/
@property (nonatomic, assign) int64_t duration;
/**
@brief 文件码率(vod 和多码率时值为0应该使用AVPTrackInfo中的trackBitrate)
*/
/****
@brief Retrievable bit rate (VOD and multi-bit rate values are 0; Should use trackBitrate in AVPTrackInfo)
*/
@property(nonatomic, assign) int64_t totalBitrate;
/**
@brief media transcodeMode
*转码类型取值FastTranscode上传完成即转码且转码完成才能播放NoTranscode上传完成不转码且立即能播放默认取值FastTranscode
*/
/****
@brief media transcodeMode
*Transcoding type. Valid values: FastTranscode and NoTranscode. FastTranscode: Transcode the content immediately after it is uploaded. Only transcoded content can be played. NoTranscode: Do not transcode the content after it is uploaded. Content can be played without transcoding. Default: FastTranscode.
*/
@property (nonatomic, copy) NSString* transcodeMode;
/**
@brief thumbnails in media info
*/
@property (nonatomic, strong) NSArray<AVPThumbnailInfo*>* thumbnails;
/**
@brief tracks in media info
*/
@property (nonatomic, strong) NSArray<AVPTrackInfo*>* tracks;
@end
#endif /* AVPMediaInfo_h */