मुख्य कंटेंट तक स्किप करें

AI ऑडियो रिकॉर्डिंग

AI ऑडियो रिकॉर्डिंग service session शुरू करें, जुड़े डिवाइस पर रिकॉर्डिंग coordinate करें, live transcription और session events पाएँ तथा अंतिम recording report लें।

इस callback model में साझा AIAudioRecordingEventType lifecycle के लिए AI Session Events देखें।

Animated workflow

AI ऑडियो रिकॉर्डिंग session lifecycle

Device-side audio से पहले AI service शुरू करें, दोनों lifecycles coordinate रखें और service report callback से पूरा करें।

Host app

Session कॉन्फ़िगर करें

Recording scene, language, offline behavior और diarization चुनें।

AI service

AI Service शुरू करें

पहले provider-backed AI ऑडियो recording session बनाएँ।

Host app

Session बनाए रखें

onStartSuccess से मिला session पूरे lifecycle तक सहेजें।

डिवाइस

Device Audio शुरू करें

Service startup सफल होने पर जुड़े डिवाइस से recording audio भेजने को कहें।

AI service → app

Live Results लें

Transcript updates दिखाएँ और session events या runtime errors संभालें।

transcript + events
डिवाइस

Device Audio रोकें

User के session समाप्त करने पर device-side recording रोकें।

AI service

AI Service रोकें

वर्तमान AIBudsAISDK audio recording session रोकें।

अंतिम callback

अंतिम Report पाएँ

onFinish से मिला AIAudioRecordingReportModel लें।

Host app

Session छोड़ें

Retained session हटाएँ और UI को idle state में लौटाएँ।

Startup failures और चल रहे session के errors अलग callbacks से report होते हैं।

आवश्यक शर्तें

  • AIBudsAISDK initialize हो और registered AI सेवा प्रदाता चुना गया हो।
  • आवश्यकता होने पर सेवा प्रदाता का authentication पूरा हो।
  • डिवाइस जुड़ा हो और DeviceAudioRecordingAPI को conform करता हो।
  • चुना गया सेवा प्रदाता AIAudioRecordingServiceAPI support करता हो।

AI की सहायता से लागू करें

AI से बनाएँ

इस वर्कफ़्लो को AI से लागू करें

आधिकारिक “AIBuds AI ऑडियो रिकॉर्डिंग लागू करें” स्किल से वर्कफ़्लो को अपने ऐप के अनुसार लागू करें।

https://docs-aibuds.github.io/hi/skills/implement-aibuds-ai-audio-recording को पढ़ें और निर्देशों का पालन करें। इस स्किल से “AIBuds AI ऑडियो रिकॉर्डिंग लागू करें” को इस iOS प्रोजेक्ट में लागू करें और परिणाम सत्यापित करें।
आधिकारिक स्किल देखें

API संदर्भ

Framework

AIBudsAI.xcframework

Import

Swift
import AIBuds
import AIBudsAI
import AIBudsAIFoundation

Declaration

Swift
/// Starts an AI audio recording session.
/// - Parameters:
///   - config: The session configuration.
///   - onStartSuccess: Called with the started session.
///   - onStartFailure: Called when the session cannot start.
///   - onTranscript: Called when speech is transcribed.
///   - onEvent: Called for session-level events.
///   - onError: Called when the running session encounters an error.
///   - onFinish: Called with the completed session report.
public static func startAIAudioRecording(_ config: AIAudioRecordingSessionConfig = .default,
                                   onStartSuccess: ((_ session: AIAudioRecordingSessionConvertible) -> Void)? = nil,
                                   onStartFailure: ((_ error: Error) -> Void)? = nil,
                                     onTranscript: ((_ transcriptData: StreamSpeechASRModel) -> Void)? = nil,
                                          onEvent: ((_ event: AIAudioRecordingEventModel) -> Void)? = nil,
                                          onError: ((_ error: NSError) -> Void)? = nil,
                                         onFinish: ((_ report: AIAudioRecordingReportModel) -> Void)? = nil) -> Void

/// Stops the current AI audio recording service session.
public static func stopAIAudioRecording()

startAIAudioRecording और stopAIAudioRecording देखें।

कॉन्फ़िगरेशन

AIAudioRecordingSessionConfig ये settings देता है:

प्रॉपर्टीविवरण
recordingScene.onSite जैसी recording scene।
allowRecordingWhileOfflineNetwork उपलब्ध न होने पर service शुरू हो सकती है या नहीं। Default false है।
enableSpeakerDiarizationSpeaker diarization चालू है या नहीं। Default false है।
languageForSpeechInputOptional speech-language identifier। न देने पर SDK app localization की भाषा उपयोग करता है।

उपयोग के उदाहरण

डिवाइस के AI recording audio भेजना शुरू करने से पहले AI service session शुरू होना चाहिए। उपयोगकर्ता रिकॉर्डिंग समाप्त करे या error आए तो दोनों पक्ष रोकें।

Swift
let config = AIAudioRecordingSessionConfig(
    recordingScene: .onSite,
    allowRecordingWhileOffline: true,
    enableSpeakerDiarization: true,
    languageForSpeechInput: "en-US"
)

AIBudsAISDK.startAIAudioRecording(
    config,
    onStartSuccess: { session in
        currentSession = session

        guard let recordingDevice = device as? DeviceAudioRecordingAPI else {
            AIBudsAISDK.stopAIAudioRecording()
            return
        }

        recordingDevice.startAIAudioRecording(.onSite) { success, error in
            if !success {
                print(error?.localizedDescription ?? "Device recording failed")
                AIBudsAISDK.stopAIAudioRecording()
            }
        }
    },
    onStartFailure: { error in
        print("Session start failed: \(error)")
    },
    onTranscript: { transcript in
        print(transcript.transcript ?? "")
    },
    onEvent: { event in
        print(event)
    },
    onError: { error in
        print(error.localizedDescription)
    },
    onFinish: { report in
        currentSession = nil
        print(report)
    }
)

रोकने के लिए जुड़े डिवाइस का stopAIAudioRecording(_:completion:) call करें, retained session हटाएँ और फिर AIBudsAISDK.stopAIAudioRecording() call करें।

ध्यान देने योग्य बातें

  • अंतिम callback local recording file path नहीं, AIAudioRecordingReportModel लौटाता है।
  • onStartSuccess से मिला session operation पूरा होने तक बनाए रखें।
  • onStartFailure startup failures संभालता है; session शुरू होने के बाद के errors onError संभालता है।
  • SDK इस AI service के लिए isRecording() method उपलब्ध नहीं कराता। Retained session को application state में track करें।