2012-07-26 11 views
5

मैंने अपने प्रोजेक्ट नेविगेटर में एक एमपी 4 संसाधन शामिल किया है। मैं इसे एवीप्लेयर में खेलना चाहता हूं। मुझे पता है कि एवीप्लेयर ऑब्जेक्ट को AVPlayer ऑब्जेक्ट के लिए कैसे बनाया जाए, और इसलिए अब मैं अपने एमपी 4 संसाधन को इंगित करने में उचित AVAsset लोड करना चाहता हूं। समस्या यह है कि AVAsset में केवल एक संपत्ति है WithURL: AVAsset बनाने के लिए विधि। मुझे एक संपत्ति चाहिए WithName: विधि, लेकिन वह विधि मौजूद नहीं है। अगर मेरे पास कोई यूआरएल नहीं है तो मैं अपनी एमपी 4 फ़ाइल कैसे चला सकता हूं? यदि नाम संदर्भ के माध्यम से खेलना संभव नहीं है, तो मैं अपनी एमपी 4 फ़ाइल के लिए फ़ाइल यूआरएल कैसे प्राप्त कर सकता हूं?मैं एवीप्लेयर के साथ एमपी 4 संसाधन कैसे चला सकता हूं?

उत्तर

12

URL प्राप्त करने के लिए,

[[NSBundle mainBundle] URLForResource:@"my_video" withExtension:@"mp4"] 
+1

दाहिने हाथ पैनल में "लक्ष्य सदस्यता" का चयन करना न भूलें। इसके बिना यह मेरे लिए काम नहीं किया। –

-1

यह शायद अपने मुख्य बंडल में हो जाएगा, तो आप अपने कोड में साथ

- (NSString*) saveFilePath: (NSString *) add 
{ 
    NSString *filename = [NSURLRequest requestWithURL:[NSURL fileURLWithPath: 
        [[NSBundle mainBundle] pathForResource:add ofType:@"mp4"]isDirectory:NO]]]; 
    return filename; 
} 

इस कॉपी अपने URL प्राप्त और फिर [self saveFilePath:@"Name of your file"] कर URL प्राप्त कर सकते हैं।

पूर्ण कोड:

AVPlayer *player = [[AVPlayer alloc] initWithURL:[self saveFilePath:@"fileName"]; 
[player play]; 
+0

उफ़ मैं याद किया कि आपको आपके दस्तावेज़ में फ़ाइल नहीं पैदा कर रहे थे का उपयोग करें ... मैं तो बस एक रिकॉर्डिंग सवाल का जवाब दिया गया था और मैं उलझन में आया। वैसे भी, मैंने 'saveFilePath' कोड को ठीक किया है, इसलिए इसे अभी काम करना चाहिए। मैं आमतौर पर यह नहीं कहता, लेकिन जो भी नीचे गिर गया धन्यवाद। – Dustin

संबंधित मुद्दे