Εντοπίστε περιεχόμενο σε πολλές γλώσσες χρησιμοποιώντας τις υπηρεσίες μηχανικής εκμάθησης AWS PlatoBlockchain Data Intelligence. Κάθετη αναζήτηση. Ολα συμπεριλαμβάνονται.

Εντοπίστε περιεχόμενο σε πολλές γλώσσες χρησιμοποιώντας υπηρεσίες μηχανικής εκμάθησης AWS

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

Η τοπική προσαρμογή περιεχομένου περιλαμβάνει κυρίως τη μετάφραση πρωτότυπων φωνών σε νέες γλώσσες και την προσθήκη οπτικών βοηθημάτων, όπως υπότιτλων. Παραδοσιακά, αυτή η διαδικασία είναι απαγορευτική από πλευράς κόστους, χειροκίνητη και απαιτεί πολύ χρόνο, συμπεριλαμβανομένης της συνεργασίας με ειδικούς εντοπισμού. Με τη δύναμη των υπηρεσιών μηχανικής εκμάθησης AWS (ML) όπως π.χ Μεταγραφή Amazon, Amazon Μετάφραση, να Amazon Polly, μπορείτε να δημιουργήσετε μια βιώσιμη και οικονομικά αποδοτική λύση εντοπισμού. Μπορείτε να χρησιμοποιήσετε το Amazon Transcript για να δημιουργήσετε μια μεταγραφή των υπαρχουσών ροών ήχου και βίντεο και, στη συνέχεια, να μεταφράσετε αυτήν τη μεταγραφή σε πολλές γλώσσες χρησιμοποιώντας το Amazon Translate. Στη συνέχεια, μπορείτε να χρησιμοποιήσετε το Amazon Polly, μια υπηρεσία μετατροπής κειμένου σε ομιλία, για να μετατρέψετε το μεταφρασμένο κείμενο σε ανθρώπινη ομιλία με φυσικό ήχο.

Το επόμενο βήμα της τοπικής προσαρμογής είναι να προσθέσετε υπότιτλους στο περιεχόμενο, οι οποίοι μπορούν να βελτιώσουν την προσβασιμότητα και την κατανόηση και να βοηθήσουν τους θεατές να κατανοήσουν καλύτερα τα βίντεο. Η δημιουργία υποτίτλων σε περιεχόμενο βίντεο μπορεί να είναι δύσκολη, επειδή η μεταφρασμένη ομιλία δεν ταιριάζει με τον αρχικό χρόνο ομιλίας. Αυτός ο συγχρονισμός μεταξύ ήχου και υποτίτλων είναι μια κρίσιμη εργασία που πρέπει να λάβετε υπόψη, επειδή μπορεί να αποσυνδέσει το κοινό από το περιεχόμενό σας εάν δεν είναι συγχρονισμένο. Το Amazon Polly προσφέρει μια λύση σε αυτήν την πρόκληση μέσω της ενεργοποίησης σημάδια ομιλίας, το οποίο μπορείτε να χρησιμοποιήσετε για να δημιουργήσετε ένα αρχείο υπότιτλων που μπορεί να συγχρονιστεί με την έξοδο ομιλίας που δημιουργείται.

Σε αυτήν την ανάρτηση, εξετάζουμε μια λύση τοπικής προσαρμογής χρησιμοποιώντας υπηρεσίες AWS ML, όπου χρησιμοποιούμε ένα πρωτότυπο αγγλικό βίντεο και το μετατρέπουμε στα ισπανικά. Εστιάζουμε επίσης στη χρήση σημαδιών ομιλίας για τη δημιουργία ενός συγχρονισμένου αρχείου υπότιτλων στα ισπανικά.

Επισκόπηση λύσεων

Το παρακάτω διάγραμμα απεικονίζει την αρχιτεκτονική λύσεων.

Η λύση παίρνει ως είσοδο ένα αρχείο βίντεο και τις ρυθμίσεις γλώσσας προορισμού και χρησιμοποιεί το Amazon Transcribe για να δημιουργήσει μια μεταγραφή του βίντεο. Στη συνέχεια χρησιμοποιούμε το Amazon Translate για να μεταφράσουμε τη μεταγραφή στη γλώσσα-στόχο. Το μεταφρασμένο κείμενο παρέχεται ως είσοδος στο Amazon Polly για να δημιουργήσει τη ροή ήχου και τα σημάδια ομιλίας στη γλώσσα-στόχο. Η Amazon Polly επιστρέφει Έξοδος σήμανσης ομιλίας σε μια ροή JSON οριοθετημένης γραμμής, η οποία περιέχει τα πεδία όπως ώρα, τύπος, αρχή, τέλος και τιμή. Η τιμή μπορεί να διαφέρει ανάλογα με τον τύπο της ένδειξης ομιλίας που ζητείται στην είσοδο, όπως π.χ SSML, viseme, λέξη ή πρόταση. Για τους σκοπούς του παραδείγματός μας, ζητήσαμε το τύπος ομιλίας as word. Με αυτήν την επιλογή, το Amazon Polly χωρίζει μια πρόταση σε μεμονωμένες λέξεις στην πρόταση και τους χρόνους έναρξης και λήξης στη ροή ήχου. Με αυτά τα μεταδεδομένα, τα σημάδια ομιλίας υποβάλλονται σε επεξεργασία για να δημιουργηθούν οι υπότιτλοι για την αντίστοιχη ροή ήχου που δημιουργείται από το Amazon Polly.

Τέλος, χρησιμοποιούμε AWS Elemental MediaConvert για απόδοση του τελικού βίντεο με τον μεταφρασμένο ήχο και τους αντίστοιχους υπότιτλους.

Το παρακάτω βίντεο δείχνει το τελικό αποτέλεσμα της λύσης:

Ροή εργασιών AWS Step Functions

Χρησιμοποιούμε Λειτουργίες βημάτων AWS να ενορχηστρώσει αυτή τη διαδικασία. Το παρακάτω σχήμα δείχνει μια προβολή υψηλού επιπέδου της ροής εργασιών Step Functions (ορισμένα βήματα παραλείπονται από το διάγραμμα για καλύτερη σαφήνεια).

Εντοπίστε περιεχόμενο σε πολλές γλώσσες χρησιμοποιώντας τις υπηρεσίες μηχανικής εκμάθησης AWS PlatoBlockchain Data Intelligence. Κάθετη αναζήτηση. Ολα συμπεριλαμβάνονται.

Τα βήματα της ροής εργασιών είναι τα εξής:

  1. Ένας χρήστης ανεβάζει το αρχείο προέλευσης βίντεο σε ένα Απλή υπηρεσία αποθήκευσης Amazon (Amazon S3) κάδος.
  2. Η Ειδοποίηση συμβάντος S3 πυροδοτεί το AWS Lambda λειτουργία state_machine.py (δεν φαίνεται στο διάγραμμα), το οποίο καλεί τη μηχανή κατάστασης Βήμα Λειτουργίες.
  3. Το πρώτο βήμα, Μεταγραφή ήχου, καλεί τη συνάρτηση Λάμδα transcribe.py, το οποίο χρησιμοποιεί το Amazon Transcribe για να δημιουργήσει μια μεταγραφή του ήχου από το βίντεο πηγής.

Το ακόλουθο δείγμα κώδικα δείχνει πώς να δημιουργήσετε μια εργασία μεταγραφής χρησιμοποιώντας το Amazon Transcript Boto3 Python SDK:

response = transcribe.start_transcription_job(
    TranscriptionJobName = jobName,
    MediaFormat=media_format,
    Media = {"MediaFileUri": "s3://"+bucket+"/"+mediaconvert_video_filename},
    OutputBucketName=bucket,
    OutputKey=outputKey,
    IdentifyLanguage=True
)

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

  1. Η Μετάφραση μεταγραφής Το βήμα καλεί τη συνάρτηση Λάμδα translate.py που χρησιμοποιεί το Amazon Translate για να μεταφράσει τη μεταγραφή στη γλώσσα-στόχο. Εδώ, χρησιμοποιούμε τη σύγχρονη μετάφραση σε πραγματικό χρόνο χρησιμοποιώντας το translate_text λειτουργία:
    # Real-time translation
    response = translate.translate_text(
        Text=transcribe_text,
        SourceLanguageCode=source_language_code,
        TargetLanguageCode=target_language_code,
    )
    

    Η σύγχρονη μετάφραση έχει όρια στο μέγεθος του εγγράφου που μπορεί να μεταφράσει. από τη στιγμή που γράφεται αυτό, έχει οριστεί στα 5,000 byte. Για μεγαλύτερα μεγέθη εγγράφων, εξετάστε το ενδεχόμενο να χρησιμοποιήσετε μια ασύγχρονη διαδρομή δημιουργίας της εργασίας χρησιμοποιώντας start_text_translation_job και έλεγχος της κατάστασης μέσω describe_text_translation_job.

  2. Το επόμενο βήμα είναι οι Λειτουργίες Βήματος Παράλληλο κατάσταση, όπου δημιουργούμε παράλληλους κλάδους στην κρατική μας μηχανή.
    1. Στον πρώτο κλάδο, καλούμε τη συνάρτηση Λάμδα τη συνάρτηση Λάμδα generate_polly_audio.py για να δημιουργήσετε τη ροή ήχου Amazon Polly:
      # Set up the polly and translate services
      client = boto3.client('polly')
      
      # Use the translated text to create the synthesized speech
      response = client.start_speech_synthesis_task(
                   Engine="standard", LanguageCode="es", OutputFormat="mp3",
                   SampleRate="22050", Text=polly_text, VoiceId="Miguel",
                   TextType="text",
                   OutputS3BucketName="S3-bucket-name",
                   OutputS3KeyPrefix="-polly-recording")
      audio_task_id = response['SynthesisTask']['TaskId']

      Εδώ χρησιμοποιούμε το start_speech_synthesis_task μέθοδος του Amazon Polly Python SDK για την ενεργοποίηση της εργασίας σύνθεσης ομιλίας που δημιουργεί τον ήχο Amazon Polly. Ρυθμίσαμε το OutputFormat προς την mp3, το οποίο λέει στο Amazon Polly να δημιουργήσει μια ροή ήχου για αυτήν την κλήση API.

    2. Στον δεύτερο κλάδο, καλούμε τη συνάρτηση Λάμδα generate_speech_marks.py για τη δημιουργία εξόδου σημαδιών ομιλίας:
      ....
      # Use the translated text to create the speech marks
      response = client.start_speech_synthesis_task(
                   Engine="standard", LanguageCode="es", OutputFormat="json",
                   SampleRate="22050", Text=polly_text, VoiceId="Miguel",
                   TextType="text", SpeechMarkTypes=['word'],
                   OutputS3BucketName="S3-bucket-name", 
                   OutputS3KeyPrefix="-polly-speech-marks")
      speechmarks_task_id = response['SynthesisTask']['TaskId']

  • Χρησιμοποιούμε ξανά το start_speech_synthesis_task μέθοδο αλλά διευκρινίστε OutputFormat προς την json, το οποίο λέει στο Amazon Polly να δημιουργήσει σημάδια ομιλίας για αυτήν την κλήση API.

Στο επόμενο βήμα του δεύτερου κλάδου, καλούμε τη συνάρτηση Λάμδα generate_subtitles.py, το οποίο εφαρμόζει τη λογική για τη δημιουργία ενός αρχείου υποτίτλων από την έξοδο σημείων ομιλίας.

Χρησιμοποιεί τη λειτουργική μονάδα Python στο αρχείο webvtt_utils.py. Αυτή η ενότητα έχει πολλαπλές βοηθητικές λειτουργίες για τη δημιουργία του αρχείου υποτίτλων. μια τέτοια μέθοδος get_phrases_from_speechmarks είναι υπεύθυνος για την ανάλυση του αρχείου σημείων ομιλίας. Η δομή JSON σημάτων ομιλίας παρέχει μόνο την ώρα έναρξης για κάθε λέξη ξεχωριστά. Για να δημιουργήσουμε τον χρονισμό των υποτίτλων που απαιτείται για το αρχείο SRT, δημιουργούμε πρώτα φράσεις περίπου n (όπου n=10) λέξεις από τη λίστα λέξεων στο αρχείο σημείων ομιλίας. Στη συνέχεια τα γράφουμε στη μορφή αρχείου SRT, παίρνοντας την ώρα έναρξης από την πρώτη λέξη της φράσης, και για την ώρα λήξης χρησιμοποιούμε την ώρα έναρξης της λέξης (n+1) και την αφαιρούμε κατά 1 για να δημιουργήσουμε την καταχώρηση με ακολουθία . Η ακόλουθη συνάρτηση δημιουργεί τις φράσεις κατά την προετοιμασία για την εγγραφή τους στο αρχείο SRT:

def get_phrases_from_speechmarks(words, transcript):
.....

    for item in items:
        # if it is a new phrase, then get the start_time of the first item
        if n_phrase:
            phrase["start_time"] = get_time_code(words[c]["start_time"])
            n_phrase = False

        else:
            if c == len(words) - 1:
                phrase["end_time"] = get_time_code(words[c]["start_time"])
            else:
                phrase["end_time"] = get_time_code(words[c + 1]["start_time"] - 1)

        # in either case, append the word to the phrase...
        phrase["words"].append(item)
        x += 1

        # now add the phrase to the phrases, generate a new phrase, etc.
        if x == 10 or c == (len(items) - 1):
            # print c, phrase
            if c == (len(items) - 1):
                if phrase["end_time"] == '':
                    start_time = words[c]["start_time"]
                    end_time = int(start_time) + 500
                    phrase["end_time"] = get_time_code(end_time)

            phrases.append(phrase)
            phrase = new_phrase()
            n_phrase = True
            x = 0

        .....

    return phrases

  1. Το τελευταίο βήμα, Μετατροπή Media, καλεί τη συνάρτηση Λάμδα create_mediaconvert_job.py για να συνδυάσετε τη ροή ήχου από το Amazon Polly και το αρχείο υποτίτλων με το αρχείο προέλευσης βίντεο για να δημιουργήσετε το τελικό αρχείο εξόδου, το οποίο στη συνέχεια αποθηκεύεται σε έναν κάδο S3. Αυτό το βήμα χρησιμοποιεί MediaConvert, μια υπηρεσία διακωδικοποίησης βίντεο που βασίζεται σε αρχεία με δυνατότητες βαθμού εκπομπής. Σας επιτρέπει να δημιουργείτε εύκολα περιεχόμενο βίντεο κατά παραγγελία και συνδυάζει προηγμένες δυνατότητες βίντεο και ήχου με μια απλή διεπαφή ιστού. Εδώ πάλι χρησιμοποιούμε την Python Boto3 SDK για τη δημιουργία ενός MediaConvert δουλειά:
    ……
    job_metadata = {'asset_id': asset_id, 'application': "createMediaConvertJob"}
    mc_client = boto3.client('mediaconvert', region_name=region)
    endpoints = mc_client.describe_endpoints()
    mc_endpoint_url = endpoints['Endpoints'][0]['Url']
    
    mc = boto3.client('mediaconvert', region_name=region, endpoint_url=mc_endpoint_url, verify=True)
    
    mc.create_job(Role=mediaconvert_role_arn, UserMetadata=job_metadata, Settings=mc_data["Settings"])

Προϋποθέσεις

Πριν ξεκινήσετε, πρέπει να έχετε τις ακόλουθες προϋποθέσεις:

Αναπτύξτε τη λύση

Για να αναπτύξετε τη λύση χρησιμοποιώντας το AWS CDK, ολοκληρώστε τα παρακάτω βήματα:

  1. Κλωνοποιήστε το Αποθήκη:
    git clone https://github.com/aws-samples/localize-content-using-aws-ml-services.git 

  2. Για να βεβαιωθείτε ότι το AWS CDK είναι μπότες, εκτελέστε την εντολή cdk bootstrap από τη ρίζα του αποθετηρίου:
    $ cdk bootstrap
    ⏳ Bootstrapping environment aws://<acct#>/<region>...
    Trusted accounts for deployment: (none)
    Trusted accounts for lookup: (none)
    Using default execution policy of 'arn:aws:iam::aws:policy/AdministratorAccess'. Pass '--cloudformation-execution-policies' to customize.
    ✅ Environment aws://<acct#>/<region> bootstrapped (no changes).

  3. Αλλάξτε τον κατάλογο εργασίας στη ρίζα του αποθετηρίου και εκτελέστε την ακόλουθη εντολή:
    cdk deploy

Από προεπιλογή, οι ρυθμίσεις ήχου προορισμού έχουν οριστεί σε US Spanish (es-US). Εάν σκοπεύετε να το δοκιμάσετε με διαφορετική γλώσσα-στόχο, χρησιμοποιήστε την ακόλουθη εντολή:

cdk deploy --parameters pollyLanguageCode=<pollyLanguageCode> 
           --parameters pollyVoiceId=<pollyVoiceId>
           --parameters pollyEngine=<pollyEngine> 
           --parameters mediaConvertLangShort=<mediaConvertLangShort>
           --parameters mediaConvertLangLong=<mediaConvertLangLong>
           --parameters targetLanguageCode=<targetLanguageCode>

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

Εντοπίστε περιεχόμενο σε πολλές γλώσσες χρησιμοποιώντας τις υπηρεσίες μηχανικής εκμάθησης AWS PlatoBlockchain Data Intelligence. Κάθετη αναζήτηση. Ολα συμπεριλαμβάνονται.

Δοκιμάστε τη λύση

Για να δοκιμάσουμε αυτό το διάλυμα, χρησιμοποιήσαμε ένα μικρό μέρος από τα ακόλουθα Βίντεο AWS re:Invent 2017 από το YouTube, όπου πρωτοπαρουσιάστηκε το Amazon Transcribe. Μπορείτε επίσης να δοκιμάσετε τη λύση με το δικό σας βίντεο. Η αρχική γλώσσα του δοκιμαστικού μας βίντεο είναι τα Αγγλικά. Όταν αναπτύσσετε αυτήν τη λύση, μπορείτε να καθορίσετε τις στοχευόμενες ρυθμίσεις ήχου ή μπορείτε να χρησιμοποιήσετε τις προεπιλεγμένες ρυθμίσεις ήχου στόχου, οι οποίες χρησιμοποιούν ισπανικά για τη δημιουργία ήχου και υπότιτλων. Η λύση δημιουργεί έναν κάδο S3 που μπορεί να χρησιμοποιηθεί για τη μεταφόρτωση του αρχείου βίντεο.

  1. Στην κονσόλα Amazon S3, μεταβείτε στον κάδο PollyBlogBucket.
    Εντοπίστε περιεχόμενο σε πολλές γλώσσες χρησιμοποιώντας τις υπηρεσίες μηχανικής εκμάθησης AWS PlatoBlockchain Data Intelligence. Κάθετη αναζήτηση. Ολα συμπεριλαμβάνονται.
  2. Επιλέξτε τον κάδο, πλοηγηθείτε στο /inputVideo κατάλογο, και ανεβάστε το αρχείο βίντεο (η λύση ελέγχεται με βίντεο τύπου mp4). Σε αυτό το σημείο, μια ειδοποίηση συμβάντος S3 ενεργοποιεί τη λειτουργία Lambda, η οποία εκκινεί το μηχάνημα κατάστασης.
  3. Στην κονσόλα Step Functions, μεταβείτε στο μηχάνημα κατάστασης (ProcessAudioWithSubtitles).
  4. Επιλέξτε μία από τις εκτελέσεις του μηχάνημα κατάστασης για να εντοπίσετε το Επιθεωρητής γραφήματος.

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

Εντοπίστε περιεχόμενο σε πολλές γλώσσες χρησιμοποιώντας τις υπηρεσίες μηχανικής εκμάθησης AWS PlatoBlockchain Data Intelligence. Κάθετη αναζήτηση. Ολα συμπεριλαμβάνονται.

Ελέγξτε την έξοδο

Για να ελέγξετε την έξοδο, ανοίξτε την κονσόλα Amazon S3 και ελέγξτε εάν το αρχείο ήχου (.mp3) και το αρχείο σήμανσης ομιλίας (.marks) είναι αποθηκευμένα στον κάδο S3 κάτω από <ROOT_S3_BUCKET>/<UID>/synthesisOutput/.

Εντοπίστε περιεχόμενο σε πολλές γλώσσες χρησιμοποιώντας τις υπηρεσίες μηχανικής εκμάθησης AWS PlatoBlockchain Data Intelligence. Κάθετη αναζήτηση. Ολα συμπεριλαμβάνονται.

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

{"time":6,"type":"word","start":2,"end":6,"value":"Qué"}
{"time":109,"type":"word","start":7,"end":10,"value":"tal"}
{"time":347,"type":"word","start":11,"end":13,"value":"el"}
{"time":453,"type":"word","start":14,"end":20,"value":"idioma"}
{"time":1351,"type":"word","start":22,"end":24,"value":"Ya"}
{"time":1517,"type":"word","start":25,"end":30,"value":"sabes"}
{"time":2240,"type":"word","start":32,"end":38,"value":"hablé"}
{"time":2495,"type":"word","start":39,"end":44,"value":"antes"}
{"time":2832,"type":"word","start":45,"end":50,"value":"sobre"}
{"time":3125,"type":"word","start":51,"end":53,"value":"el"}
{"time":3227,"type":"word","start":54,"end":59,"value":"hecho"}
{"time":3464,"type":"word","start":60,"end":62,"value":"de"}

Σε αυτήν την έξοδο, κάθε μέρος του κειμένου αναλύεται ως προς τα σημάδια ομιλίας:

  • ώρα – Η χρονική σήμανση σε χιλιοστά του δευτερολέπτου από την αρχή της αντίστοιχης ροής ήχου
  • τύπος – Ο τύπος του λόγου (πρόταση, λέξη, viseme ή SSML)
  • Εκκίνηση – Η μετατόπιση σε byte (όχι χαρακτήρες) της αρχής του αντικειμένου στο κείμενο εισαγωγής (χωρίς τα σημάδια viseme)
  • τέλος – Η μετατόπιση σε byte (όχι χαρακτήρες) του τέλους του αντικειμένου στο κείμενο εισαγωγής (χωρίς τα σημάδια viseme)
  • αξία – Επιμέρους λέξεις στην πρόταση

Το αρχείο υποτίτλων που δημιουργείται γράφεται πίσω στον κάδο S3. Μπορείτε να βρείτε το αρχείο κάτω από <ROOT_S3_BUCKET>/<UID>/subtitlesOutput/. Επιθεωρήστε το αρχείο υποτίτλων. το περιεχόμενο θα πρέπει να είναι παρόμοιο με το ακόλουθο κείμενο:

1
00:00:00,006 --> 00:00:03,226
¿Qué tal el idioma? Ya sabes, hablé antes sobre el

2
00:00:03,227 --> 00:00:06,065
hecho de que el año pasado lanzamos Polly y Lex,

3
00:00:06,066 --> 00:00:09,263
pero hay muchas otras cosas que los constructores quieren hacer

4
00:00:09,264 --> 00:00:11,642
con el lenguaje. Y una de las cosas que ha

5
00:00:11,643 --> 00:00:14,549
sido interesante es que ahora hay tantos datos que están

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

Όταν ολοκληρωθεί η εργασία MediaConvert, δημιουργείται το τελικό αρχείο βίντεο και αποθηκεύεται πίσω στον κάδο S3, ο οποίος βρίσκεται στο <ROOT_S3_BUCKET>/<UID>/convertedAV/.

Ως μέρος αυτής της ανάπτυξης, το τελικό βίντεο διανέμεται μέσω ενός Amazon CloudFront (CDN) και εμφανίζεται στο τερματικό ή στο AWS CloudFormation κονσόλα.

Ανοίξτε τη διεύθυνση URL σε ένα πρόγραμμα περιήγησης για να προβάλετε το αρχικό βίντεο με πρόσθετες επιλογές για ήχο και υπότιτλους. Μπορείτε να επαληθεύσετε ότι ο μεταφρασμένος ήχος και οι υπότιτλοι είναι συγχρονισμένοι.

Συμπέρασμα

Σε αυτήν την ανάρτηση, συζητήσαμε πώς να δημιουργήσετε νέες γλωσσικές εκδόσεις αρχείων βίντεο χωρίς την ανάγκη χειροκίνητης παρέμβασης. Οι δημιουργοί περιεχομένου μπορούν να χρησιμοποιήσουν αυτήν τη διαδικασία για να συγχρονίσουν τον ήχο και τους υπότιτλους των βίντεό τους και να προσεγγίσουν ένα παγκόσμιο κοινό.

Μπορείτε εύκολα να ενσωματώσετε αυτή την προσέγγιση στους δικούς σας αγωγούς παραγωγής για να χειριστείτε μεγάλους όγκους και κλίμακα ανάλογα με τις ανάγκες σας. χρησιμοποιεί το Amazon Polly Νευρικό TTS (NTTS) να παράγουν φυσικές και ανθρώπινες φωνές μετατροπής κειμένου σε ομιλία. Υποστηρίζει επίσης δημιουργία ομιλίας από SSML, το οποίο σας δίνει πρόσθετο έλεγχο στον τρόπο με τον οποίο το Amazon Polly δημιουργεί ομιλία από το παρεχόμενο κείμενο. Η Amazon Polly παρέχει επίσης α ποικιλία διαφορετικών φωνών σε πολλές γλώσσες για να υποστηρίξετε τις ανάγκες σας.

Ξεκινήστε με τις υπηρεσίες μηχανικής εκμάθησης AWS μεταβαίνοντας στο σελίδα του προϊόντος, ή ανατρέξτε στο Εργαστήριο Amazon Machine Learning Solutions σελίδα όπου μπορείτε να συνεργαστείτε με ειδικούς για να φέρετε λύσεις μηχανικής εκμάθησης στον οργανισμό σας.

Επιπρόσθετο υλικό

Για περισσότερες πληροφορίες σχετικά με τις υπηρεσίες που χρησιμοποιούνται σε αυτήν τη λύση, ανατρέξτε στα ακόλουθα:


Σχετικά με τους συγγραφείς

Εντοπίστε περιεχόμενο σε πολλές γλώσσες χρησιμοποιώντας τις υπηρεσίες μηχανικής εκμάθησης AWS PlatoBlockchain Data Intelligence. Κάθετη αναζήτηση. Ολα συμπεριλαμβάνονται. Ρέιγκαν Ροζάριο εργάζεται ως αρχιτέκτονας λύσεων στην AWS με επίκεντρο τις εταιρείες τεχνολογίας εκπαίδευσης. Του αρέσει να βοηθά τους πελάτες να δημιουργήσουν επεκτάσιμες, εξαιρετικά διαθέσιμες και ασφαλείς λύσεις στο AWS Cloud. Έχει πάνω από μια δεκαετία εμπειρίας σε διάφορους ρόλους τεχνολογίας, με έμφαση στη μηχανική λογισμικού και την αρχιτεκτονική.

Εντοπίστε περιεχόμενο σε πολλές γλώσσες χρησιμοποιώντας τις υπηρεσίες μηχανικής εκμάθησης AWS PlatoBlockchain Data Intelligence. Κάθετη αναζήτηση. Ολα συμπεριλαμβάνονται.Ανίλ Κόνταλι είναι αρχιτέκτονας λύσεων με τις υπηρεσίες Web της Amazon. Συνεργάζεται με πελάτες της AWS EdTech, καθοδηγώντας τους με βέλτιστες αρχιτεκτονικές πρακτικές για τη μετεγκατάσταση υφιστάμενων φόρτων εργασίας στο cloud και σχεδιάζοντας νέους φόρτους εργασίας με μια προσέγγιση που βασίζεται στο cloud. Πριν ενταχθεί στην AWS, συνεργάστηκε με μεγάλους λιανοπωλητές για να τους βοηθήσει με τις μετακινήσεις τους στο cloud.

Εντοπίστε περιεχόμενο σε πολλές γλώσσες χρησιμοποιώντας τις υπηρεσίες μηχανικής εκμάθησης AWS PlatoBlockchain Data Intelligence. Κάθετη αναζήτηση. Ολα συμπεριλαμβάνονται.Prasanna Saraswathi Krishnan είναι αρχιτέκτονας λύσεων με τις υπηρεσίες Web της Amazon που εργάζεται με πελάτες της EdTech. Τους βοηθά να οδηγήσουν την αρχιτεκτονική cloud και τη στρατηγική δεδομένων τους χρησιμοποιώντας βέλτιστες πρακτικές. Το υπόβαθρό του είναι στους κατανεμημένους υπολογιστές, στην ανάλυση μεγάλων δεδομένων και στη μηχανική δεδομένων. Είναι παθιασμένος με τη μηχανική μάθηση και την επεξεργασία φυσικής γλώσσας.

Σφραγίδα ώρας:

Περισσότερα από Μηχανική εκμάθηση AWS