Audio buffer access to downloaded encrypted HLS audio stream - ios

If I use AVAssetDownloadTask to download an encrypted audio-only HLS stream, is it possible to get access to the raw audio data, for the purposes of integrating with AVAudioEngine, AVAudioPlayerNode, and associated effects? If so, what's the process like for doing that? e.g. could I use an AES library like RNCryptor to decrypt the media?
Thanks!

Related

How to decode DRM protected content (FairPlay, WideVine etc) using Video ToolBox on iOS?

I have a custom player on iOS which can decode a HEVC stream using the HEVC decoder provided by the video toolbox, get the handle to the decoded frame, pass it to Metal and render the frame using Metal. I would like to do the same with DRM encrypted content. I understand that AVPlayer directly supports FairPlay and you can play DRM encrypted content using it (sample). How do I do it with Video ToolBox ? I don't see any APIs to setup DRM session/keys in VTDecompressionSession. Thanks.

Encoding of Twilio call recordings

I'm creating a tool using Twilio where I record upon request bits of the call. I'm using Audacity to check the encoding of the file and if it is a Linear PCM, but in part of Twilio's documentation it is stated that a call is using an 8-bit PCM mono uLaw with a sampling rate of 8Khz.
Can this be configured, because I'd need to have the recording in a given encoding configured by me when launching the recording or when downloading it.
Upon fetching the recording I can only choose mp3 or wav.
Thank you.
The recording format is not a configurable option.
Note that calls traveling across the Public Switch Telephone Network (PSTN) have their audio quality constrained by that transport. See the below article for more details.
You could download the recordings from Twilio and transcode to your required format, and store in your cloud.
Best Practices for Audio Recordings

How to download a encrypted m3u8 in iOS. Even if would able to download I could not able to play the encrypted video in offline mode

In earlier case of my I have played non encrypted .m3u8 video in offline mode
I have download a .m3u8 extension video file which is not encrypted
and I have played that video.
This video is download in the formate of .movpkg extension format.
I have download this video using AVAsset download Session
But in the case of encrypted video
I can download the .m3u8 extension video and this video get saved in extension of .movpkg
The issue rise when the saved video is played without any internet connection I know this reason for this because the decryption key is not available for it. So that video can decrypt and play in player level it self
Is there any possibility to play the saved video file without using internet(offline)
Do I need to use the apple fair play concept to play m3u8 video?
if so how can implement it in server side?
Have anyone used apple fair play concept?
How can implement the fair play concept in the FFmpeg Convertor?
Is there any method to override the key delivery mode in AVPlayer?

How to play streaming AV data in iOS?

I'm trying to play streaming AV data from server (ex. VLC server)
Server send AV file data to client by TCP/IP.
Client get streaming data and queue buffers,
finally play AV in buffer queue.
(Before file download complete. It literally 'streaming')
Is there any APIs in iOS framework to do this?
I have solved it with AudioFileStream & AudioQueue Service.
AudioQueue support vary audio formats.
Please refer to Apple doc.
FYI.

Record audio and convert it to .wav

I need to make an app that sends recorded audio in .wav format to a REST endpoint. I will be using AFNetworking for the POST, but I am not sure where to go with recording the audio and then converting it. I know I should use AVFoundation to record, but I am not sure how to convert. Would CoreAudio help?

Resources