{"id":27340,"date":"2022-12-04T14:49:20","date_gmt":"2022-12-04T22:49:20","guid":{"rendered":"https:\/\/www.podfeet.com\/blog\/?p=27340"},"modified":"2022-12-04T14:49:20","modified_gmt":"2022-12-04T22:49:20","slug":"announcing-transcripts","status":"publish","type":"post","link":"https:\/\/www.podfeet.com\/blog\/2022\/12\/announcing-transcripts\/","title":{"rendered":"Announcing Transcripts for All Podfeet Podcasts"},"content":{"rendered":"<h3>Jill is Amazing<\/h3>\n<p>Jill from the Northwoods is a beast at learning new things and implementing the things she learns.  When she met me in real life, she bought one of my older MacBook Pros because she wanted to learn the Mac and potentially move over to macOS leaving Windows behind.<\/p>\n<p>Shortly after that, she decided to start a podcast, and I offered a wee bit of help. I suggested a few apps to her. I suggested <a href=\"https:\/\/hindenburg.com\">Hindenburg<\/a> as a multi-track editor, <a href=\"https:\/\/www.rogueamoeba.com\/audiohijack\/\">Audio Hijack<\/a> for recording different sources, and Auphonic to level my audio and get it to the loudness standards for podcasting.<\/p>\n<p>Approximately 8 minutes later she had abandoned Windows, bought a modern M1 Mac, mastered all of the apps I suggested, and created her podcast <a href=\"https:\/\/smallstepspod.com\" target=\"_blank\" rel=\"noopener\">Start With Small Steps<\/a> with 116 episodes already.<\/p>\n<p>When I say she mastered the apps I suggested, I\u2019m not kidding. She actually watched training videos, read the manuals, and is now regularly helping <em>me<\/em> with these apps when I run into problems.  She also keeps up with what\u2019s new on the apps she uses.  Jill\u2019s diligence in constantly staying up-to-date and knowledgeable will now bring a visible benefit to you.<\/p>\n<h3>Auphonic Adds Automatic Transcript Creation<\/h3>\n<p><a href=\"https:\/\/auphonic.com\" target=\"_blank\" rel=\"noopener\"><\/p>\n<figure style=\"float: right; margin-left: 10px\"><img decoding=\"async\" src=\"https:\/\/www.podfeet.com\/blog\/wp-content\/uploads\/2022\/12\/Auphonic-Logo.png\" alt=\"Auphonic Logo\"  title=\"Auphonic Logo.png\" width=\"150 \" height=\"\"><figcaption style=\"text-align:center\">Auphonic<\/figcaption><\/figure>\n<p><\/a>Jill tipped me off that the web service <a href=\"https:\/\/auphonic.com\" target=\"_blank\" rel=\"noopener\">Auphonic<\/a> that processes our audio files had a new feature.  Georg Holzmann, the developer implemented a speech recognition engine using an open source tool called <a href=\"https:\/\/auphonic.com\/blog\/2022\/11\/08\/auphonic-whisper-asr-beta\/\">Whisper by OpenAI<\/a>. What this means to you is that I think I\u2019m going to be able to provide transcripts of all Podfeet Podcasts.<\/p>\n<p>The alert amongst you are thinking, \u201cWait a minute, doesn\u2019t she script the NosillaCast with full-fledged, beautifully crafted blog posts?\u201d  While that\u2019s true, Chit Chat Across the Pond Lite normally has no text version at all. And even on the NosillaCast, you might find benefit to hearing Bart\u2019s explanations on Security Bits beyond just the articles to which he links in the shownotes. Deep dives are written but there\u2019s a lot more content available.<\/p>\n<p>Not only will this be of benefit for those with hearing impairments, but what if you did hear an episode but wanted to reference something you heard, or quickly refresh your memory? You could search for a word or phrase and find it in the transcripts.<\/p>\n<h3>Auphonic Interface<\/h3>\n<p>The process to create the transcripts is incredibly trivial through Auphonic.  The service works on the concept of presets. I have one for the NosillaCast, one for Programming By Stealth, and one for Chit Chat Across the Pond Lite.  The processing is mostly the same, but the three presets add the correct logo to the file, add the meta data like artist (me!) and the podcast name, and then SFTPs the mp3 file to <a href=\"https:\/\/libsyn.com\">Libsyn<\/a> which is the service that serves all of my audio files.<\/p>\n<p>To produce a show, I select the preset, point it at my audio recording on my computer, and Auphonic does all the rest. When it\u2019s done the mp3 file is ready for you, and I can download a copy for my own archives.<\/p>\n<p>Adding transcription to a preset is just as easy. In addition to the mp3 output file, I can choose three different output file formats: Subtitle (.vtt), Transcript (.html), and Speech (.json).<\/p>\n<figure style=\"float: center; margin: 10px\"><img decoding=\"async\" src=\"https:\/\/www.podfeet.com\/blog\/wp-content\/uploads\/2022\/12\/Auphonic-Output-Format-Options.png\" alt=\"Auphonic Output Format Options\"  title=\"Auphonic Output Format Options.png\" width=\"599 \" height=\"257\"><figcaption style=\"text-align:center\">Auphonic Output Format Options<\/figcaption><\/figure>\n<p>The only output file type I think I\u2019ll be using is the HTML transcript unless someone tells me something nifty I can do with the VTT subtitle or JSON speech files.<\/p>\n<p>Auphonic is fairly quick to transcode the high-quality M4A file into an MP3, but transcription takes quite a bit longer. I haven\u2019t timed it since I\u2019ve only done it once so far, but I think it was over an hour to transcribe a 45-minute show.  I don\u2019t have to wait for the transcription to download the MP3 file and publish the podcast as soon as it\u2019s ready.<\/p>\n<p>I love the download interface of Auphonic because it shows me what the waveform looked like before it leveled the audio. If I\u2019ve been in a conversation with Bart or another guest, it\u2019s astonishing how different the two waveforms look.  I can also play the audio from this interface.<\/p>\n<p>Once the transcription and MP3 files are ready, there\u2019s a download button next to them.<\/p>\n<figure style=\"float: center; margin: 10px\"><img decoding=\"async\" src=\"https:\/\/www.podfeet.com\/blog\/wp-content\/uploads\/2022\/12\/Auphonic-Full-Production-Results-as-Described.png\" alt=\"Auphonic Full Production Results as Described\"  title=\"Auphonic Full Production Results as Described.png\" width=\"517 \" height=\"600\"><figcaption style=\"text-align:center\">Auphonic Full Production Results as Described<\/figcaption><\/figure>\n<h3>Hazel Does the Magic<\/h3>\n<p>I realized as soon as transcription was available that it would be very tedious to deal with these files on my own, so it would be in my best interests to automate what I did with them right from the beginning.<\/p>\n<p>I use <a href=\"https:\/\/www.noodlesoft.com\">Hazel from Noodlesoft<\/a> to automate file management and I knew it would be the perfect tool to help me with the transcriptions.  I was already using Hazel to deal with the MP3 file downloads.  Hazel watches my Downloads folder and if it sees any files starting with <code>NC_<\/code> with an extension of  <code>.mp3<\/code>, it automatically moves them into a dedicated folder I have called <code>NC_AUDIO_2022<\/code>. Hazel also watches <em>that<\/em> folder and when files have been sitting there for two weeks, it moves them over to my Synology for cold storage.<\/p>\n<figure style=\"float: center; margin: 10px\"><img decoding=\"async\" src=\"https:\/\/www.podfeet.com\/blog\/wp-content\/uploads\/2022\/12\/Hazel-Moves-NC-MP3s-to-My-Audio-Folder.png\" alt=\"Hazel Moves NC MP3s to My Audio Folder\"  title=\"Hazel Moves NC MP3s to My Audio Folder.png\" width=\"600 \" height=\"190\"><figcaption style=\"text-align:center\">Hazel Moves NC MP3s to My Audio Folder<\/figcaption><\/figure>\n<p>What I needed for the transcripts was going to be a bit more advanced but not that much harder. I set up Hazel to again watch the Downloads folder and this time to look for files starting with <code>NC_<\/code>  and ending with <code>.html<\/code>, which should uniquely identify the transcripts files. I set up a second rule for Hazel to look for the Chit Chat Across the Pond transcripts.<\/p>\n<p>When Hazel finds a match, I told her to move these files to a folder on my Mac called <code>transcripts-all-shows<\/code>.  Now for the tricky bit. Hazel can also connect to remote servers and use secure file transfer protocol (SFTP) to log in and push the files up to the server.<\/p>\n<p>I created a directory on podfeet.com at the top level called <code>transcripts<\/code> and told Hazel to watch the <code>transcripts-all-shows<\/code> folder on my Mac and push any new files it finds up to podfeet.com\/transcripts.<\/p>\n<p>I created a diagram to try to illustrate all of the automation I just described. Hopefully, it will clarify what I&#8217;m doing.<\/p>\n<figure style=\"float: center; margin: 10px\"><img decoding=\"async\" src=\"https:\/\/www.podfeet.com\/blog\/wp-content\/uploads\/2022\/12\/Diagram-of-Audio-and-Transcripts-Automation.png\" alt=\"Diagram showing audio files going to Auphonic, downloading to a folder, and then Hazel dispatching them including pushing the transcript up to podfeet.com\"  title=\"Diagram of Audio and Transcripts Automation.png\" width=\"800 \" height=\"558\"><figcaption style=\"text-align:center\">Diagram of Audio and Transcripts Automation<\/figcaption><\/figure>\n<h3>TextExpander Automation<\/h3>\n<p>This was only the first part of the automation. You may have noticed that the NosillaCast shownotes are very standardized.  That\u2019s because I use <a href=\"https:\/\/textexpander.com\">TextExpander<\/a> to create them.  It automatically creates the intro (including the date for the show) and creates the sections for the articles, how to support the show, and the outro.<\/p>\n<p>This automation needed to now include the link to the transcript of the show. One of the cool features of TextExpander is that you can embed snippets inside of other snippets.  That allows me to create a standalone snippet that links to the transcript and then use it in different ways for the different shows.<\/p>\n<p>The Chit Chat Across the Pond notes don\u2019t have as much of a rigid structure because they\u2019re often just a short paragraph with a link to play the show, and if it\u2019s for Programming By Stealth it includes a link to <a href=\"https:\/\/pbs.bartificer.net\">Bart\u2019s shownotes<\/a>. With a standalone snippet for the transcripts, I can include it like that in the Chit Chat notes, and also include it in the more complex snippet for the NosillaCast shows.<\/p>\n<figure style=\"float: center; margin: 10px\"><img decoding=\"async\" src=\"https:\/\/www.podfeet.com\/blog\/wp-content\/uploads\/2022\/12\/TextExpander-Transcript-Snippet.png\" alt=\"TextExpander Transcript Snippet\"  title=\"TextExpander Transcript Snippet.png\" width=\"600 \" height=\"466\"><figcaption style=\"text-align:center\">TextExpander Transcript Snippet<\/figcaption><\/figure>\n<figure style=\"float: center; margin: 10px\"><img decoding=\"async\" src=\"https:\/\/www.podfeet.com\/blog\/wp-content\/uploads\/2022\/12\/TextExpander-Snippet-for-NosillaCast-with-Embedded-Transcript-Snippet.png\" alt=\"TextExpander Snippet for NosillaCast with Embedded Transcript Snippet\"  title=\"TextExpander Snippet for NosillaCast with Embedded Transcript Snippet.png\" width=\"592 \" height=\"600\"><figcaption style=\"text-align:center\">TextExpander Snippet for NosillaCast with Embedded Transcript Snippet<\/figcaption><\/figure>\n<figure style=\"float: center; margin: 10px\"><img decoding=\"async\" src=\"https:\/\/www.podfeet.com\/blog\/wp-content\/uploads\/2022\/12\/TextExpander-Snippet-for-Chit-Chat-with-Embedded-Transcript-Snippet.png\" alt=\"TextExpander Snippet for Chit Chat with Embedded Transcript Snippet\"  title=\"TextExpander Snippet for Chit Chat with Embedded Transcript Snippet.png\" width=\"600 \" height=\"458\"><figcaption style=\"text-align:center\">TextExpander Snippet for Chit Chat with Embedded Transcript Snippet<\/figcaption><\/figure>\n<p>TextExpander\u2019s embedded snippets is super powerful and makes automations much easier. In theory, it makes me less error-prone as well.  I say in theory, because much of these podcast-related snippets rely on my executing them on the correct day. The files you download, whether they&#8217;re the audio files for your podcatcher or the transcript, are all date-based.  I\u2019ve instructed TextExpander to automatically create the episode episode names formatted with YYYY_MM_DD.<\/p>\n<p>On rare occasions, I don\u2019t post Chit Chat Across the Pond on the same day I record it, and anarchy ensues as a result. I use the same date format snippet to name the audio files, so the blog post and podcast episode and the transcript will all have the wrong date.<\/p>\n<p>On other rare occasions, I start the NosillaCast show notes before Sunday and I have to manually go in and change all of the date info there too.  Both are surmountable problems for those rare occasions when I do things on an off day.<\/p>\n<h3>Bottom Line<\/h3>\n<p>The bottom line is that the Podfeet Podcasts shows will be now be even more accessible with full transcripts for the hearing-impaired, and these transcripts might benefit others. I have no intention of editing these files, but Auphonic does provide an editor where you can listen and edit at the same time. If a volunteer wanted to take on this task, I might consider that, but for now, you\u2019ll get whatever Whisper by OpenAI gives us.<\/p>\n<p>I may also change slightly where the files end up on my server, but if I do move them, be assured that I\u2019ll have a redirect so you can always go to podfeet.com\/transcripts\/episodename.html.  I\u2019m working on a way that you will be able to look at that top-level directory to scan what\u2019s available but I haven\u2019t gotten that working just yet.<\/p>\n<p>Please let me know if you find value in the transcripts, whether it\u2019s because you aren&#8217;t able to listen, choose only to read, or just want it as a reference to find something you heard on a podcast. Even if only one person gets value from this it\u2019s free for me to create and with my automations by Hazel and TextExpander it won\u2019t be any more work that clicking the download button in Auphonic.<\/p>\n","protected":false},"excerpt":{"rendered":"<p>Jill is Amazing Jill from the Northwoods is a beast at learning new things and implementing the things she learns. When she met me in real life, she bought one of my older MacBook Pros because she wanted to learn the Mac and potentially move over to macOS leaving Windows behind. Shortly after that, she [&hellip;]<\/p>\n","protected":false},"author":1,"featured_media":27339,"comment_status":"open","ping_status":"closed","sticky":false,"template":"","format":"standard","meta":{"jetpack_post_was_ever_published":false,"_jetpack_newsletter_access":"","_jetpack_dont_email_post_to_subs":false,"_jetpack_newsletter_tier_id":0,"_jetpack_memberships_contains_paywalled_content":false,"_jetpack_memberships_contains_paid_content":false,"footnotes":""},"categories":[147],"tags":[2058,885,1899,258,3809,5606],"class_list":["post-27340","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-blog-posts","tag-auphonic","tag-hazel","tag-open-source","tag-textexpander","tag-transcription","tag-transcripts"],"jetpack_featured_media_url":"https:\/\/www.podfeet.com\/blog\/wp-content\/uploads\/2022\/12\/Diagram-of-Audio-and-Transcripts-Automation.png","jetpack_sharing_enabled":true,"_links":{"self":[{"href":"https:\/\/www.podfeet.com\/blog\/wp-json\/wp\/v2\/posts\/27340","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/www.podfeet.com\/blog\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/www.podfeet.com\/blog\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/www.podfeet.com\/blog\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/www.podfeet.com\/blog\/wp-json\/wp\/v2\/comments?post=27340"}],"version-history":[{"count":3,"href":"https:\/\/www.podfeet.com\/blog\/wp-json\/wp\/v2\/posts\/27340\/revisions"}],"predecessor-version":[{"id":27344,"href":"https:\/\/www.podfeet.com\/blog\/wp-json\/wp\/v2\/posts\/27340\/revisions\/27344"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/www.podfeet.com\/blog\/wp-json\/wp\/v2\/media\/27339"}],"wp:attachment":[{"href":"https:\/\/www.podfeet.com\/blog\/wp-json\/wp\/v2\/media?parent=27340"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/www.podfeet.com\/blog\/wp-json\/wp\/v2\/categories?post=27340"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.podfeet.com\/blog\/wp-json\/wp\/v2\/tags?post=27340"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}