Patrocinado

আইওএস অডিও - AVFoundation

0
4

আইওএস এ অডিও প্লে, রেকর্ড ইত্যাদি করার জন্য দারুণ একটা ফ্রেমওয়ার্ক রয়েছে। তা হচ্ছে AVFoundation. AVFoundation কিভাবে ব্যবহার করা যায়, তাই দেখব। AVFoundation নিয়ে কাজ করার জন্য প্রথমে একটা প্রজেক্ট তৈরি করে নেই। যেমন AVFoundation Demo.

 

AVFoundation ডিফল্ট ভাবে প্রজেক্টে যুক্ত থাকে না। যুক্ত করতে হয়। তার জন্য Build Phases এ গিয়ে Link Binary With Libraries থেকে AVDoundation.framework টা যুক্ত করতে হবে। + বাটনে ক্লিক করলে সব গুলো ফ্রেমওয়ার্কের লিস্ট দেখাবে। সেখান্ত থেকে AVFoundation টা যুক্ত করতে হবে।

 

AvFoundation Framework

 

প্রজেক্টে একটা mp3 বা যে কোন অডিও ফাইল রাখি। আমরা ইচ্ছে করলে একটা ফোল্ডার তৈরি করে তার ভেতর ও রাখতে পারি। তার জন্য Project এর উপর রাইট ক্লিক করে New Group এ ক্লিক করলে আমাদের ফোল্ডার তৈরি করতে দিবে। MP3 টা ঐ ফোল্ডারের ভেতর রাখতে পারি।

 

Create New Group

 

Main Storyboard এ একটা বাটন যুক্ত করি। এ বাটনটা ViewController.swift ফাইলের সাথে একশন হিসেবে যুক্ত করি।

 

ViewController.swift ফাইলে AVFoundation টা ইম্পোর্ট করি। একটা ভ্যারিয়েবল ডিক্লেয়ার করি। যেমন player। এবং আমাদের MP3 এর একটা রেফারেন্স তৈরি করি। এবার বাটনের একশনে player.play() লিখলেই Mp3 প্লে হবে। প্রজেক্টটি রান করি। এবং দেখি Audio Play হয় কিনা।

import UIKit
import AVFoundation

class ViewController: UIViewController {
    
    var player = AVAudioPlayer()
    
    override func viewDidLoad() {
        super.viewDidLoad()
        
         player = try! AVAudioPlayer(contentsOfURL: NSBundle.mainBundle().URLForResource("My Valentine", withExtension: "mp3")!, fileTypeHint: nil)
    }

    override func didReceiveMemoryWarning() {
        super.didReceiveMemoryWarning()
        // Dispose of any resources that can be recreated.
    }

    @IBAction func PlayAudio(sender: AnyObject) {
    
        player.play()
    }
    
   
}


খুব সহজ, তাই না? এবার আরো দুইটা বাটন যুক্ত করি Storyboard এ। একটা Pause এর জন্য। একটা Stop এর জন্য। ViewControler.swift ফাইলে Action হিসেবে যুক্ত করি। Pause করার জন্য আমাদের লিখতে হবে player.pasuse(). স্টপ করার জন্য দুইটা লাইন লিখতে হবে। নিচে সম্পুর্ণ ViewController.swift

import UIKit

import AVFoundation

class ViewController: UIViewController {
    
    var player = AVAudioPlayer()
    
    override func viewDidLoad() {
        super.viewDidLoad()
        
         player = try! AVAudioPlayer(contentsOfURL: NSBundle.mainBundle().URLForResource("My Valentine", withExtension: "mp3")!, fileTypeHint: nil)
    }

    override func didReceiveMemoryWarning() {
        super.didReceiveMemoryWarning()
        // Dispose of any resources that can be recreated.
    }

    @IBAction func PlayAudio(sender: AnyObject) {
    
        player.play()
    }
    
    @IBAction func StopMusic(sender: AnyObject) {
        player.stop()
        player.currentTime = 0
    }
   

    @IBAction func PauseAudio(sender: AnyObject) {
     player.pause()
    }
}


অ্যাপের UI টা নিজের মত করে সাজাই। তৈরি করি নিজের পছন্দের AudioPlayer। এর পরের টিউটোরিয়ালে দেখব কিভাবে Audio Record করা যায়।

Pesquisar
Categorias
Leia Mais
Nulled
S Market v1.0 - Ecommerce Blogger Template
S Market v1.0 – Ecommerce Blogger Template Free Download. S Market is a Modern,...
Por Nettumi 2026-09-17 18:31:55 0 32
Tech
গিট সম্পর্কে ধারণা, গিট ইন্সটল, ব্যবহার এবং গিটহাব এ একটা প্রজেক্ট পুশ করা
গিট গিট হচ্ছে ভার্সন কন্ট্রোল সিস্টেম।  ডেভেলপাররা সাধারণত প্রজেক্টের ভার্সন কন্ট্রোল এবং...
Por Nettumi 2026-09-30 18:43:52 0 3
Tech
ফ্রিল্যান্সিং করার জন্য ইংরেজি জানা কতটা গুরুত্বপূর্ণ? - Banglatech24.com
যাদের মাতৃভাষা ইংরেজি নয়, তাদের ইংরেজি বলা বা লিখাতে কিছুটা হলেও দুর্বলতা থাকবে এটাই স্বাভাবিক।...
Por Nettumi 2026-09-25 10:13:12 0 21
Nulled
iBooking v1.0.8.1 - Laravel Booking System PHP Script
iBooking v1.0.8.1 – Laravel Booking System PHP Script Free Download. iBooking is a Booking...
Por Nettumi 2026-09-18 03:27:17 0 38
Tech
শাওমি আপডেট পাবেনা যেসব ফোন - Banglatech24.com
নিজেদের আরো কিছু স্মার্টফোনের জন্য আর সাপোর্ট প্রদান করবেনা শাওমি। এই এন্ড অফ সাপোর্ট (EOS)...
Por Nettumi 2026-09-25 10:10:05 0 29
‎ ‎ ‎
Nettumi https://nettumi.com