A podcast transcription service built on Azure that transcribes any new episode of your podcast and displays synchronized transcripts alongside your audio making your podcast more accessible.
MIT License
A podcast transcription service built on Azure that transcribes any new episode of your podcast and displays synchronized transcripts alongside your audio making your podcast more accessible. Read this blog post to learn more.
Please read the contribution guidlines for details on submitting pull requests.
Please read our Code of Conduct as well.
This project is licensed under the MIT License - see the LICENSE.md file for details
These instructions will get you a copy of the project up and running on your local machine for development and testing purposes and also deploying this on Azure.
Login in to Azure Shell and clone the repo.
Run the below commands to deploy required infrastructure on Azure.
cd src/AzPodcastTranscriber.Infra
./deploy.ps1 - SubscriptionName "<Sub Name>" - ResourceGroupName "<RG Name>"
Run the below commands to ignore changes to prevent accidentally committing your config secrets. Read more about the command here.
git update-index --skip-worktree ./src/AzPodcastTranscriber.Functions/local.settings.json
git update-index --skip-worktree ./src/AzPodcastTranscriber.Web/appsettings.json
Copy Relevant settings to local.settings.json
file from Azure.
Set the Azure Functions as startup project and run it locally by pressing F5. Make a HTTP Post request to OnRSSFeedUpdated
function with payload structure as below running on http://localhost:port/api/OnRSSFeedUpdated
{
"title": "Your favourite podcast episode",
"primaryLink": "https://www.my-epidosde-link.mp3",
"publishDate": "2019-05-30T00:00:00"
}
You can check if the audio file is uploaded to storage account.
Testing the transcription webhook is tricky because the localhost
URL is not publicly accessible.
Once a transcription is completed, make a request to the OnTranscriptionCompleted
function running locally on http://localhost:port/api/OnTranscriptionCompleted.
with below payload.
{
"id": "GUID-That-you-can-get-from-transcription-api",
}
appsettings.json
file of the Web Project.AzPodcastTranscriber.Web
project as startup project and run it. You will be able to see completed transcriptions.