का उपयोग करके वीडियो चलाएं मुझे AVAssetReader
का उपयोग करके वीडियो फ़ाइल से फ्रेम बफर मिल रहा है और फ्रेम पर कुछ ऑपरेशन कर रहा है और फिर AVAssetWritter
का उपयोग करके temp फ़ाइल में नया फ्रेम सहेज रहा है। अब मेरे पास temp फ़ाइल पथ है जहां सभी नए फ्रेम सहेजे जा रहे हैं एक एक करके। फ़्रेम हमेशा temp फ़ाइल में जोड़ते समय वीडियो चलाने का कोई तरीका है ??AVPlayer
ब्लॉक कभी नहीं चलाता अंदर (जहां फ्रेम को लगातार जोड़ रहा है) अस्थायी मार्ग से वीडियो खेलने के लिए
- (void)loadAssetFromFile {
AVURLAsset *asset = [AVURLAsset URLAssetWithURL:[NSURL fileURLWithPath:[(mMediaReader.mCameraRecorder) tempVideoFilePath ]] options:nil];
NSString *tracksKey = @"tracks";
[asset loadValuesAsynchronouslyForKeys:[NSArray arrayWithObject:tracksKey] completionHandler:
^{
// Completion handler block.
dispatch_async(dispatch_get_main_queue(),
^{
NSError *error = nil;
AVKeyValueStatus status = [asset statusOfValueForKey:tracksKey error:&error];
if (status == AVKeyValueStatusLoaded) {
self.mPlayerItem = [AVPlayerItem playerItemWithAsset:asset];
[mPlayerItem addObserver:self forKeyPath:@"status"
options:0 context:&ItemStatusContext];
[[NSNotificationCenter defaultCenter] addObserver:self
selector:@selector(playerItemDidReachEnd:)
name:AVPlayerItemDidPlayToEndTimeNotification
object:mPlayerItem];
self.mPlayer = [AVPlayer playerWithPlayerItem:mPlayerItem];
[mPlayerView setPlayer:mPlayer];
[self play:nil];
}
else {
// You should deal with the error appropriately.
NSLog(@"The asset's tracks were not loaded:\n%@", [error localizedDescription]);
}
});
}];
}
- (IBAction)play:sender {
[mPlayer play];
}
कोड और कोड है।
आपके सुझाव की तलाश में ?? – iOSPawan
अभी भी इस – iOSPawan
के लिए समाधान ढूंढ रहा है ऐसा लगता है कि 'loadValuesAsynchronouslyForKeys: completHandler: '' AVMetaDataItem 'पर एक विधि है, न कि' AVURLASSet' या 'AVAsset'। क्या आप पुष्टि कर सकते हैं कि 'NSURL' ऑब्जेक्ट' शून्य 'नहीं है? – sho