MeiCam SDK For iOS  3.13.5
NvsMediaFileConvertor.h
Go to the documentation of this file.
1 //================================================================================
2 //
3 // (c) Copyright Meishe Co. Ltd, 2019. All rights reserved.
4 //
5 // This code and information is provided "as is" without warranty of any kind,
6 // either expressed or implied, including but not limited to the implied
7 // warranties of merchantability and/or fitness for a particular purpose.
8 //
9 //--------------------------------------------------------------------------------
10 // Birth Date: Apr 20. 2019
11 // Author: Meishe video team
12 //================================================================================
13 #pragma once
14 
15 #import <UIKit/UIImage.h>
16 #import "NvsCommonDef.h"
17 
24 typedef enum {
36 
45 #define NVS_MEDIA_CONVERTOR_CUSTOM_HEIGHT @"custom-video-height"
47 #define NVS_MEDIA_CONVERTOR_CUSTOM_AUDIO_SAMPLE_RATE @"custom-audio-sample-rate"
48 #define NVS_MEDIA_CONVERTOR_NO_VIDEO @"convertor-no-video"
49 #define NVS_MEDIA_CONVERTOR_NO_AUDIO @"convertor-no-audio"
50 #define NVS_MEDIA_CONVERTOR_CUSTOM_AUDIO_CHANNEL @"custom-audio-channel"
51 #define NVS_MEDIA_CONVERTOR_REVERSE_AUDIO_STREAM @"convertor-reverse-audio"
52 #define NVS_MEDIA_CONVERTOR_MAX_CACHE_SIZE_IN_MEMORY @"max_cache_size_in_memory"
53 #define NVS_MEDIA_CONVERTOR_CUSTOM_FRAME_RATE @"custom-video-frame-rate"
54 #define NVS_MEDIA_CONVERTOR_CUSTOM_AUDIO_PCM_FILE @"custom-audio-pcm-file"
55 #define NVS_MEDIA_CONVERTOR_COMPILE_GOP_SIZE @"gopsize"
56 #define NVS_MEDIA_CONVERTOR_COMPILE_BITRATE @"bitrate"
57 #define NVS_MEDIA_CONVERTOR_COMPILE_AUDIO_BITRATE @"audio bitrate"
58 #define NVS_EDIA_CONVERTOR_VIDEO_ENCODEC_NAME @"video encoder name"
59 #define NVS_EDIA_CONVERTOR_AUDIO_ENCODEC_NAME @"audio encoder name"
60 
62 @protocol NvsMediaFileConvertorDelegate<NSObject>
63 
64 - (void)didConvertorProgress:(int64_t)taskId progress:(float)progress;
65 
66 - (void)didConvertorFinish:(int64_t)taskId sourceFile:(NSString*)src outputFile:(NSString*)dst errorCode:(NvsMediaConvertorErrorType)error;
67 
68 - (void)didAudioMuteRage:(int64_t)taskId muteStart:(int64_t)start muteEnd:(int64_t)end;
69 
70 @end
71 
72 
73 NVS_EXPORT @interface NvsMediaFileConvertor : NSObject
74 
75 @property (nonatomic, weak) id<NvsMediaFileConvertorDelegate> delegate;
76 
77 - (instancetype)init;
78 
99 - (int64_t)convertMeidaFile:(NSString *)srcFilePath
100  outputFile:(NSString *)outputFilePath
101  isReverseConvert:(bool)isReverse
102  fromPosition:(int64_t)from
103  toPosition:(int64_t)to
104  options:(NSMutableDictionary *)options;
105 
114 - (void)cancelTask:(int64_t)taskId;
115 
116 @end
117 
-[NvsMediaFileConvertor init]
instancetype init()
keNvsMediaConvertorErrorType_NoError
@ keNvsMediaConvertorErrorType_NoError
no error
Definition: NvsMediaFileConvertor.h:25
keNvsMediaConvertorErrorType_ProcessAudioError
@ keNvsMediaConvertorErrorType_ProcessAudioError
Definition: NvsMediaFileConvertor.h:32
NvsMediaFileConvertor
Definition: NvsMediaFileConvertor.h:74
keNvsMediaConvertorErrorType_ReadFileEof
@ keNvsMediaConvertorErrorType_ReadFileEof
Definition: NvsMediaFileConvertor.h:33
NvsMediaFileConvertor::delegate
id< NvsMediaFileConvertorDelegate > delegate
Definition: NvsMediaFileConvertor.h:75
keNvsMediaConvertorErrorType_HardwareVideoDecoderSetupError
@ keNvsMediaConvertorErrorType_HardwareVideoDecoderSetupError
video decoder setup error
Definition: NvsMediaFileConvertor.h:29
keNvsMediaConvertorErrorType_HardwareVideoDecodingError
@ keNvsMediaConvertorErrorType_HardwareVideoDecodingError
video decode error
Definition: NvsMediaFileConvertor.h:30
keNvsMediaConvertorErrorType_ProcessVideoError
@ keNvsMediaConvertorErrorType_ProcessVideoError
Definition: NvsMediaFileConvertor.h:31
keNvsMediaConvertorErrorType_UnkownError
@ keNvsMediaConvertorErrorType_UnkownError
task has unknown error
Definition: NvsMediaFileConvertor.h:34
NvsMediaConvertorErrorType
NvsMediaConvertorErrorType
Type of convertor error.
Definition: NvsMediaFileConvertor.h:24
keNvsMediaConvertorErrorType_HardwareVideoEncodingError
@ keNvsMediaConvertorErrorType_HardwareVideoEncodingError
video encoder error
Definition: NvsMediaFileConvertor.h:28
keNvsMediaConvertorErrorType_HardwareVideoEncoderSetupError
@ keNvsMediaConvertorErrorType_HardwareVideoEncoderSetupError
video encoder setup error
Definition: NvsMediaFileConvertor.h:27
keNvsMediaConvertorErrorType_Cancled
@ keNvsMediaConvertorErrorType_Cancled
task is canceled
Definition: NvsMediaFileConvertor.h:26
NVS_EXPORT
#define NVS_EXPORT
Definition: NvsCommonDef.h:20
NvsCommonDef.h
NvsMediaFileConvertorDelegate-p
Definition: NvsMediaFileConvertor.h:62