I have few mp3 files stored on azure file storage. when try to play them in chrome browser with html audio tag, I see the audio stop playing after few mins. do I need to migrate them to azure blob storage for better streaming?
Yes, you would get better streaming support if you move your audio files to Azure Blob storage, and store them as blobs. Blob storage is designed for supporting streaming content. Read more about it here. Azure File storage is more for supporting migration scenarios, from on-prem to cloud, and to augment or replace file shares and servers.
Related
I am currently on a student plan for azure (gotta stay finessing as a college student lol) and am looking for the best way to upload videos to azure blob storage. Currently, I am using an azure function api to upload the video, but I am encountering a "Javascript heap out of memory" error when I try and multiparts parse big video files.
Ideally, I'd be able to quickly upload 3.5 minute music videos from mobile and desktop to azure blob storage with this method.
Either a better way of uploading videos to blob storage from my front-end or a solution for the javascript heap out of memory error would be amazing help.
Here's the link to that other post, if you are curious: How to fix JavaScript heap out of memory on multipart.Parse() for azure function api
Approaches:
After a workaround based on your issue, I would suggest that you use Azure Media Services.
Media Services can be integrated with Azure CDN. Refer to check Media Services-Managing streaming endpoints.
All supported formats use HTTP to transport data and benefit from HTTP caching. In live streaming, actual video/audio data is separated into fragments, which are cached in CDNs.
To start, I recommend that you use the Azure Storage SDK with Node.JS. The SDK will handle everything for you. Attaching few uploaders below to check accordingly.
Upload a video to Azure Blob examples
Refer MSDoc & SO thread by #Gopi for uploading a video with the .mp4 extension to Azure blob storage using C#.
You can upload a video using Azure functions directly. But to use Azure Functions, you must create a back-end component written in.NET, Java, JavaScript, or Python.
You can use the "Azure Storage Rest API" to upload files/video files using a storage account, like you mentioned. You will be able to get the desired result by using this Azure Storage Rest -API-MSDoc.
I'm creating a xamarin forms app with Azure and I want it to use large images and videos.
I already know how to make it work with images (Blob Storage and Azure functions) but I have no idea with videos.
I mean if an user upload a 4K video into my blob storage, it has to be compressed (probably before being send to the blob storage). I don't know where to start - I've seen Blob storage encoding, Media services and CDN but I don't know if it's the right path. Can someone enlighten me on that matter?
What should I use from Azure for an application where I am uploading videos and I want to process videos to obtain information with my own worker roles but I dont want to stream the videos. Should I use Media service or regular blob storage?
#Devsined, per my experience, my suggestion is that uploading & processing videos to & from blob storage is the better choice to obtain information. Even I think, if having Azure App services consideration, you can upload videos into queue storage first, then to store into blob storage, and using webjobs to handle the vedio from queue and record the obtained inforamtion to Azure Database.
Any concern, please feel free to let me know.
Is it possible to stream on-premises media files through Azure Media Services without storing them in the cloud?
This is not possible. AMS uses blob storage as the source for assets that are being encoded and streamed. From a performance perspective this approach makes sense as well.
Note that the uploaded content is protected using storage protection and access policies.
I have an MVC 4 application that contains a view to show "Videos" from azure blob storage of MP4 format only. Currently I'm using MediaElment.js(or any typical flash player) as the video player. How can I play these videos in a smooth streaming or progressive download(Adaptive streaming) method. What are the configurations that I have to set in Azure to support streaming? Is there anything that I have to do before uploading MP4 file to blob storage?
I have gone through this link
http://msdn.microsoft.com/en-us/spazuretrainingcourse_spblobstorageazure.aspx and as far as I understood, Windows Azure Blobs Uploader is used to upload video files to azure and silverlight as the client. In my case, the video is uploaded from a seperate application so the manipulation of video file is not possible. So is there any way to implement streaming without any change and play it in a video player other than using silverlight ?.
Is it possible to do anything if I can change the media file while uploading?
Thanks.
I have been doing almost exactly this, but without the Adaptive Streaming (I'm dealing with video files of only 25mb or smaller). I am using JWPlayer for the front end in my web page, and the video is in Azure blob storage.
I'm using the pre-built windows binary ffmpeg.exe I uploaded it to Azure (put it in root of Worker Role project), then I use System.Diagnostics.Process in a WorkerRole to massage the video files. You could do the same to create the different quality versions you want.
So, when a user uploads a video my business logic layer plops a message in an Azure message queue, my worker role picks it up, copies the video onto Azure LocalStorage (LocalStorage is physical disk you can configure in your Azure project settings file), runs ffmpeg.exe over the file and then puts it back in blob storage.