Currently, we have to send several transcription requests to the REST Api for each blob file. Is there a way to do it in batch? For example, sending a transcription request for all blobs in a folder? Thanks.
we are working on a new API version that will entail this feature. Unfortunately it is still a few weeks out...
Wolfgang
we are working on a new API version that will entail this feature. Unfortunately it is still a few weeks out...
Wolfgang
@wolfma61 : thanks for your reply. Please keep me updated on this as soon as the API becomes available! :)
I think we have batch transcription in place for that @tuanle07
Guys, how about using this example solution: https://github.com/rlagh2/callcenteranalytics?
BTW: has anyone tried to run this? I got multiple errors when trying to run it.
@harmandeepsinghkalsi : is there any documentation for that? Thanks
only on GitHub; I didn't find anything outside.
@tomaszpe : I don鈥檛 think bulk folder transcription is supported yet thou.
@wolfma61 : Hi Wolfgang, any news on the new API? Thanks
at the earliest next week ...
@tuanle07 - Actually the article at github is kind of mocking the batch scenario by getting all the files at once and then looping over it one by one and doing post call. V2.0 does not support batch transcription yet. I don't know why it was called batch transcription though ?
@tomaszpe I ran that example, it works fine for me. Please let me know what errors are you getting?
it is called 'batch' because you submit the job, and collect the results later...
like in the good old days of punch cards (yes, I'm old)
but we soon will be allow you to submit a bunch (or batch) of files ;)
@harmandeepsinghkalsi - for example, after opening the sln file I have 35 Intellisense errors. When I enter the required info about storage, keys etc - I have the following note:

and the error from build: error CS0234: The type or namespace name 'Storage' does not exist in the namespace 'Microsoft.Azure' (are you missing an assembly reference?)
I'm a novice in development so it's hard to me find out the cause.
If you are able to help I'll be more than grateful :)
Otherwise I don't want you to spend too much time on it.
I also faced the same error @tomaszpe . Did you first clone to local and opened it in VS? If yes , try cloning the project directly from repository in VS . There is an option , to clone from repository when you open VS. Please try this and then check if all the needed packages are installed or not. You can check this ,in tools -> nuget package manager.
@harmandeepsinghkalsi - I did as you suggested: cloned from a repo when I open VS. Cloning was successful:

However, I got still 35 errors and the same message as above and I'm stuck :(
Any ideas are welcome.
@harmandeepsinghkalsi - update;partial success :). I checked packages, installed updates and after that there was only 1 error - screenshot below:

Any hints what to do next?
What is the version of CsvHelper you installed? Install 12.1.2 and check
Hi @harmandeepsinghkalsi - I have 15.0.5. Should I revert back to 12.1.2 and check then? Below is the screen with packages I have

Yes please revert to 12.1.2 and check once. I am hoping it should resolve the error.
@harmandeepsinghkalsi Magic happened, thank you :) I'm step forward. However... it cannot validate subscription. Here's the screen
@harmandeepsinghkalsi once again the screen:

My subs is Active, this is for sure. Did I write something wrong when pasting info about storage , keys etc?
It is good that process started atleast. Error states that there could be multiple reasons for the issue.
If all of the above is fine . Please verify once the subscription Speech_SubscriptionKey only because storage string is fine. You got the count of files.
Need to see what you are providing before giving suggestions.
@harmandeepsinghkalsi here's the screen with what I provide

I also regenerated Speech subscription key. What now?
Configuration looks good to me .
As mentioned in the error, if you regenerated the subscription , you should update it on the subscription page(need to check where to update, I am not sure about that) .
Can you try one thing? Hit the below URL from the postman and try once , if it work for you
POST: https://northeurope.cris.ai/api/speechtotext/v2.0/transcriptions
Request Body:
{
"results": [],
"recordingsUrl": "<Provide the blob SAS URL>",
"models": []
"locale": "en-US",
"name": "Bulk transcription",
"properties": {
"PunctuationMode": "DictatedAndAutomatic",
"ProfanityFilterMode": "Masked",
"AddWordLevelTimestamps": "False",
"AddSentiment": "False",
"TranscriptionResultsContainerUrl": <Provide the container SAS Url>(Optional)
}
}
Please provide the subscription key is the headers.
Ocp-Apim-Subscription-Key: (your subscription key)
Check if it works fine for you or the same error exists.
@harmandeepsinghkalsi Thanks for the code! I only changed Content-Type to "media/wav", not text/plain. The results:

I tried here with both wav and mp3 files - the result was a above
I changed the endpoint to the one I have in my subscription and it seems to work:

When I tried this setup with VS - I got the following message:

Any ideas here?
@tomaszpe Can we have a working session ?
@harmandeepsinghkalsi sure. When are you available? I'm available now, for example. How can we connect? I can send a Teams or Zoom invite if you send me your email.
@tomaszpe : Answering your queries:
Hi @harmandeepsinghkalsi . I did what you said and have the following error:

When I move over the red cros on the left I have the message: Expected < ',' instead of ' " '>
I found the following info on Stackoverflow: https://stackoverflow.com/questions/55512856/how-to-use-batch-transcription-api-through-python but I don't if this has any use here.
I'll appreciate your help.
@tomaszpe after "models": [] , there should be ','(comma)
Also put TranscriptionResultsContainerUrl in ""(double-quotes)
@harmandeepsinghkalsi - I corrected and now there is no error in code it seems. However, I got the same error as in the VS:

My subscription is Active - as below

I really don't know where is the issue.
What was the postman result ?
Also you need Cognitive Services service for this code to run .
@harmandeepsinghkalsi that was the result from Postman:

As for the Cognitive service - yes, I have it up and running (both for S2T and text analytics) for the app in VS.
But even with Postman it didn't work :(. Somewhere I have trouble with subs validation
What are you passing in the headers?
You should take the key from Keys and Endpoints under your S2T service . Take any key (Key 1 or Key2) . You should pass that key in Headers as ocp-apim-subscription-key. Are you giving this key or the subscription key you showed in the screenshot above. Please check once!

@harmandeepsinghkalsi I think I got the reason! I had my subs for Cognitive Services with Pricing Tier "Free" and not "Standard". I changed it for Standard, waited 15 mins and got the result :)

The code executed was the following:

Now I'll clone repo in a clear VS, put appropriate keys/info and we'll see. Keep fingers crossed!
Great! It worked for you .
@harmandeepsinghkalsi it works just fine with VS now! Thank you very much for your time, help and patience :) Consider solved!
Awesome News! Happy Learning !
Closing the issue as a solution was provided.
@pankopon : why was this issued marked as closed?
@wolfma61 : any updates on this feature pls? Thanks.
@tuanle07 I mistook the conclusion above for a usable solution, sorry about that. But the API v3.0 is now available as well, is this what you were looking for?
https://docs.microsoft.com/en-us/azure/cognitive-services/speech-service/batch-transcription
With the new v3.0 API, you have the choice of transcribing one or more audio files, or process a whole storage container.
@pankopon : Thanks. This is what I鈥檓 looking for. One more question, is there a way to transcribe all blobs in a specific folder in a container instead of transcribing the whole container?
Most helpful comment
it is called 'batch' because you submit the job, and collect the results later...
like in the good old days of punch cards (yes, I'm old)
but we soon will be allow you to submit a bunch (or batch) of files ;)