Ο διαχωρισμός ενός iOS καταγραφή ήχου σε πολλαπλά αρχεία

ψήφοι
0

Είμαι εγγραφή ήχου με τη χρήση AVFoundation σε LPCM, στη συνέχεια, χωρίζοντας την σε πολλαπλά κομμάτια με βάση το χρόνο.

Έχω έρθει σε λίγες διαφορετικούς τρόπους για να κάνει τη διάσπαση:

  1. Κατεργαζόμεθα την εγγραφή ως ένα AVAssetκαι στη συνέχεια να χρησιμοποιήσετε AVAssetExportSession, ή αρκετές (βλέπε παρακάτω).

  2. Απλά κομμάτι η πρώτη δυαδική της εγγραφής με βάση τον αριθμό των δειγμάτων, όπως και στην αποδεκτή απάντηση σε αυτό το ερώτημα .

AVAssetExportSessionαισθάνεται λίγο βίντεο προσανατολισμό, και ο τρόπος που το βλέπω, θα χρειαστεί να δημιουργήσετε μια ξεχωριστή συνεδρία εξαγωγής για κάθε κομμάτι. Ανησυχώ γι 'αυτό, και ειλικρινά παίρνει μου βαθιά μέσα επανάκλησης κόλαση.

Αυτό που έχω σήμερα είναι κάτι σαν αυτό το ψευδο-κώδικα:

currentAsset!.loadValuesAsynchronously(forKeys: [exportable]) {
    if status is ok {
        export()
    }
}

func export() {
    for chunk in chunks {
        exportChunk(chunkTime)
    }
}

func exportChunk() {
    if let exporter = AVAssetExportSession(asset: currentAsset!, presetName: AVAssetExportPresetPassthrough) {
        // set exporter parameters
        exporter.exportAsynchronously(completionHandler: {
            // check status, update progress etc.
        }
    }
}

Να κάνει την κατάτμηση με βάση τα δείγματα που θα φαίνεται σαν ένα απλό πράγμα που κάνει. Νομίζω ότι θα μπορούσε εύκολα να διαιρέσει σε ένα σειριακό ουρά ΠΔΠ.

Υπάρχουν ανησυχίες εκεί; Είναι κάτι που είμαι λείπει εκεί; Πώς θα προσεγγίσει αυτό;

Δημοσιεύθηκε 27/11/2018 στις 17:42
πηγή χρήστη
Σε άλλες γλώσσες...                            

Cookies help us deliver our services. By using our services, you agree to our use of cookies. Learn more