[PYTHON] Transcription de vidéos YouTube à l'aide de Cloud Speech-to-Text de GCP

Je souhaite transcrire une vidéo YouTube. Avec Cloud Speech-to-Text de GCP, vous pouvez transcrire même de longues vidéos.

Bien sûr, vous devriez pouvoir utiliser d'autres fichiers audio ainsi que l'audio YouTube.

Ce que j'ai utilisé

Mise en garde

Il y a des frais. Si vous dépassez le niveau gratuit de 60 minutes, le traitement vocal vous sera facturé toutes les 15 secondes. Veuillez consulter cette page pour le prix.

procédure

Télécharger uniquement l'audio des vidéos YouTube

J'ai pu télécharger uniquement l'audio de la vidéo sur ce site. C'est un site suspect avec des publicités, mais j'ai pu le télécharger correctement.

Appelons le fichier téléchargé «sample_audio.mp3».

Cette fois, Ikeda Hayato, également connu sous le nom de blogueur professionnel Ikehaya, [Explication de la raison] Le petit déjeuner de Buffett, le premier investisseur mondial, est un hamburger Mac. a été choisi.

La raison est comme ça.

--Un haut-parleur

Une vidéo avec plusieurs personnes qui parlent en même temps ou avec du bruit ambiant semble être inexacte, alors commençons par cette vidéo.

Convertir de mp3 en flac

Cloud Speech-to-Text ne semble pas prendre en charge le mp3 à partir de novembre 2019, comme vous pouvez le voir sur cette page (https://cloud.google.com/speech-to-text/docs/encoding) Vous devez donc le convertir en flac.

Vous pouvez facilement convertir en utilisant ffmpeg.

ffmpeg -i sample_audio.mp3 -ar 16000 -ac 1 sample_audio.flac

«-ar» est la fréquence d'échantillonnage. Réglez sur 16 000 Hz selon cet exemple de démarrage rapide. «-ac» est le nombre de canaux. Une erreur s'est produite s'il n'était pas réglé sur monophonique (= 1).

L'exécution de la commande créera un fichier appelé sample_audio.flac.

Télécharger vers le stockage cloud

Il semble qu'il puisse être transcrit localement, mais cette fois, nous ciblerons les fichiers sur le stockage Cloud. Créez un bucket approprié et importez-le avec la commande suivante si le SDK Cloud est installé.

gsutil cp sample_audio.flac gs://[YOUR BACKET]

Si le fichier est petit, vous pouvez le télécharger depuis votre navigateur.

Transcription

C'est presque la même fonction dans la documentation officielle.

transcribe.py


def transcribe_gcs(gcs_uri):
    print(f'Processing {gcs_uri}')
    client = speech.SpeechClient()

    audio = types.RecognitionAudio(uri=gcs_uri)
    config = types.RecognitionConfig(
        encoding=enums.RecognitionConfig.AudioEncoding.FLAC,
        sample_rate_hertz=16000,
        language_code='ja-JP')

    operation = client.long_running_recognize(config, audio)
    print('Waiting for operation to complete...')
    response = operation.result()
    text = ''.join([result.alternatives[0].transcript for result in response.results])
    return text

Le texte intégral sera transcrit et renvoyé, veuillez donc l'utiliser comme un fichier texte ou un fichier csv.

résultat

La transcription est terminée immédiatement pour quelques minutes de vidéo. La vidéo précédente de M. Ikehaya durait 4 minutes 08 secondes, mais elle a été terminée en environ 2 minutes. Cliquez ici pour le texte intégral de la transcription. (C'est long donc c'est plié)

Texte intégral du résultat de la transcription

Oui, aujourd'hui c'est IKEA Today, le pamphlet du millionnaire dit qu'il ira chez McDonald's.Je voudrais vous dire que j'ai été capable de manipuler 1000 mm, donc je vis maintenant assez tranquillement. 183 Depuis que j'ai dépassé les 100 millions de yens à une date, je suis dans une situation où je n'ai pas à travailler dur, c'est vrai, je suis allé à Kaiten Sushi l'autre jour, alors je l'ai téléchargé sur Twitter. Comme d'habitude, le riz de merde est arrivé. Quel genre de putain de riz est que Neko dit qu'aller au sushi en rotation est absolument amour et mentir même si elle a 100 millions de yens. Aujourd'hui, j'ai fait une promesse comme un rire cool avec des lunettes pour enfants. Je l'ai reçu d'environ lycéens. Je vais aller aux sushis avec le sentiment que c'est génial. Je vais manger des sushis avec des sushis. Je vais jouer avec. C'est normal. Je vais jouer avec. C'est vrai, c'est vrai, je suis vraiment désolé de dire que ce n'est pas si délicieux, et même si ma maman fait de son mieux, ce n'est pas comme si j'étais si douée pour les larmes, mais je suis rassasié et j'y vais avec mes enfants C'est une très belle installation, n'est-ce pas? Pourquoi allez-vous à des sushis en rotation? Je veux retourner au comptoir des sushis. Une personne dit que vous devriez aller avec votre femme qui est d'un bon rapport qualité-prix pour les sushis pour environ 20 000 yens. C'est très célèbre, mais c'est une situation où c'est vraiment un rêve si vous sentez qu'il est difficile d'entrer un enfant, mais ce n'est pas grave, ce n'est pas grave. C’est le malheur du top. Connaissez-vous le petit-déjeuner de cette personne? Cela a été repris dans le documentaire de Buffett et est devenu un sujet brûlant dans le monde entier. C’est McDonald. C’est incroyable. Mais pour qui le petit déjeuner est Mac, c'est incroyable, on dirait que c'est Mac le matin, c'est incroyable, j'ai été surpris que le côté gauche ait environ 8 à 9 billions de yens, donc le couple a 8 à 9 billions de yens Mais Mac est incroyable, n'est-ce pas? C'est assez percutant et je pense que c'est intéressant, n'est-ce pas? Pourquoi ce levier est-il tellement d'argent que je me dirige vers lui? Il est rationnel de le manger. Si vous ne le faites pas, pourquoi ne pas manger ça? Je suis sûr que ça a du sens pour lui. Je me demande s'il y a beaucoup de gens qui pensent que le chat Mac est mauvais pour la santé, pensai-je, mais que Bucket avait 88 ans quand j'ai vérifié l'âge C'est un devoir actif croquant, n'est-ce pas? La maison est également saine. Même si Mac est mauvais pour ma santé, je pense toujours que ce n'est pas grave si je peux devenir actif jusqu'à 88 ans. Après tout, manger Mac est probablement cette personne. Je pense que ça fait une semaine, n'est-ce pas que le dojo est perdu pour le petit-déjeuner? Mauchimo, j'ai des enfants, donc je dis toujours le même petit-déjeuner, alors je pense au petit-déjeuner. Je pense faire du pain aujourd'hui, mais c'est assez compliqué, n'est-ce pas? Je pense que c'est stupide, n'est-ce pas? C'est amusant, mais c'est amusant, mais c'est difficile. Je me demande s'il est important d'en prendre un autre pour ne pas te perdre dans un tel endroit. Je ne prends pas de petit-déjeuner. Enfin, après tout, c'est le petit-déjeuner. Peut-être que Buffett le pense et passe du noir absolu au monde. Vous pouvez le manger n'importe où au milieu. N'hésitez pas. Même si vous le dites sur un Mac, je pense que c'est la meilleure chose que vous avez apportée lorsque vous l'avez commandé. C'est la même chose avec Steve Jobs. On dit que Steve Jobs portait les mêmes vêtements tous les jours, et il reste en fait des photos. Les photos lumineuses portent le même col roulé tout le temps, donc je ne me perds pas. Je ne sais pas quels vêtements porter aujourd'hui, même si je ne me perds pas. Je déteste le Japon et moi, donc je porte toujours les mêmes vêtements. Je me demande quels vêtements porter aujourd'hui. C'est vraiment une perte de temps de le porter, j'en ai fait une personne qui déteste les vêtements, j'ai l'impression de détester ça, c'est très important de prendre une telle habitude Je pense que c'est pour cela que vous pouvez apporter 8 à 9 billions de yens avec Buffett 3 Pourquoi pensez-vous qu'il est vraiment douteux de manger du Mac? Ce genre d'endroit est sûrement une semaine pour lui Je mange un Mac comme ça pour ne pas utiliser ce genre de volonté supplémentaire, et je m'attends, même s'il est blanc, je l'utilise pour diverses décisions, donc je vais être millionnaire J'espère que je peux comprendre le sentiment que c'est devenu Je pense que l'influence est comme ça. Ça commence avec Max Rice. La rotation des sushis va. J'ai commencé par l'histoire que la rotation des sushis se passe normalement, et j'ai essayé de laisser tomber l'histoire de M. Buffett. J'aimerais vous raconter une histoire amusante. Merci de me donner un poti de type 6000. Merci pour votre attention.

L'ouverture ** «Oui, aujourd'hui c'est IKEA» ** est soudainement décevante, mais des paroles telles que «Ah» sont également soulevées. C'est assez précis, mais la nomenclature appropriée est encore faible après cela. C'est inévitable.

Cependant, je suis très reconnaissant pour cela seul car ce serait pénible de taper toute la phrase tout en écoutant moi-même la voix. Parce que les phrases de ce niveau se créent automatiquement en 2 minutes! ??

ensuite

Après cela, j'ai essayé de transcrire une vidéo d'une heure et 40 minutes. Cela a pris environ 20 minutes, mais toute la phrase a été correctement transcrite. C'est assez excellent. Il peut être possible de transcrire la vidéo d'une personne spécifique sur YouTube et de l'utiliser comme source de données pour le traitement du langage naturel.

c'est tout

Les références

Merci pour les informations utiles.

Recommended Posts

Transcription de vidéos YouTube à l'aide de Cloud Speech-to-Text de GCP
Mettre en ligne des vidéos à l'aide de l'API YouTube
Procédure de transcription vocale à l'aide de l'API Google Cloud Speech
Transcription d'images avec l'API Vision de GCP
Identifiez la chaîne YouTube de la vidéo Hikakin à partir d'images miniatures à l'aide de CNN
Comment télécharger des vidéos YouTube à l'aide de pytube3
Procédure de transcription vocale à l'aide de Python et de l'API Google Cloud Speech