Play a list of wav files using rh.FileReader - redhawksdr

I have multiple wav files I need to transmit through a waveform using rh.Filereader is there a way to have the rh.Filereader component play wave files from a list?

rh.FileReader will attempt to read all files in a directory when the source_uri is set to a directory path. For a directory of wav files, also configure the file_format to WAV. The header of the wav file is used to determine sample rate, so you do not need to configure that property. The list of files that will be read, and the order in which they will be read, is available by querying the file_status property. Note that rh.FileReader does not sort the list of files, so this feature may be of limited use if the files must be read in a certain order.

Related

Easily differentiate video files from image files in Node

I'm building a project where people can upload files, I would like to then display those files in a browser where people can interact with them (vote, comment etc)
However, this means I need to programatically build the html depending on the format of the video or image. Is there a way to feed a file (or filename) into a library, and determine whether I need to display it in a video element or an image element? Even a list of video formats vs image formats would help but I haven't seen anything in regards to that.
No module can reliably determine the file type. The user could either change the extension or even the magic number of the file to obfuscate it. The only reliable way it to try to pass file to some image / video transcoder to let it decide or error out if the format is invalid. This way you know you are working with known formats since all files are transcoded to your specific extensions. That could be mp4 or png. I recommend using handbrake for videos and sharp for images. Leaving the NPM links down below:
https://www.npmjs.com/package/handbrake-js
https://www.npmjs.com/package/sharp

Need a way to write headers on a wav file generated by sox

I'm using sox to convert some mp3 files to wav for a project. The problem is that the software that plays the files does not have the media name for the element it is playing. I can't seem to find a win32 cli tool to read the header of the wav file and write what I need to it.
Sox will read the header but it's not showing the title of the media element that was inserted with the old software I used. I just couldnt automate it or I would have used it instead.
I have determined the info is written in either CART CHUNK section or just to the file headers. I can't figure out to write my own data there.
The way I was able to do this was with this project: https://github.com/JamesHeinrich/getID3

Rebuilding MP4 file from fragmented MP4 "mdat" atom?

I'm trying to rebuild a video file from a Smooth Streaming server. Smooth Streaming serves fMP4 files which are regular MP4 files without neither their FTYP nor their MOOV atoms.
All the informations stored in those atom are placed into a Manifest XML file, which I have.
Is there a way to programmatically rebuild the original MP4 file, either by:
rebuilding a new file straight from H264/AAC content located in MDAT
(and picture format infos); or
rebuilding FTYP and MOOV atoms
Or else, is there a tool which can merge fMP4?
Yes. It is completely possible.
You can do this with FFmpeg. Study the mov.c [MP4 demuxer] from libavformat.
You will need to complete the MP4 in memory with all data that is "missing" in the fMP4. In other words, when you need an atom that doesn't exist in fMP4 [almost all], you will have to input all information hard-coded (such information, most of them come from the manifest).
It's not easy... but for sure it's possible. I've done by myself. Unfortunately the code is not my property.
Good luck! ;-)
UPDATE: the PIFF format specification will be very useful (http://go.microsoft.com/?linkid=9682897) so one can understand what is already in the fMP4 and what is not!
It is simple to rebuild a mp4 file, if there are ism and ismc file which are related to fragmented mp4 files.
It is requested that you should know media type, codec type, codec specific data and time scale of each trak to rebuild a moov and ftyp atom.
these information can be retrieved from ism and ismc file.
you can retrieve a media type of each track from the ism file.
you can retrieve codec type, codec specific data and time scale of each track from the ismc file.
simply speaking, ism/ismc files are meta data for server and client so that you can rebuild meta data(ftyp, moov atom) for a mp4 file.

How to programmatically convert .rm (RealPlayer Media) file to MP3 or another format?

I would like to convert .rm (RealPlayer Media) file to MP3 or another format?
First, I successfully managed that using VLC but the quality was not good. Then I tried the Real Alternative codec with DirectShow, this also worked ok, but then I found that the codec is no longer developed because RealNetworks sued the developer.
Now, I have installed the RealPlayer and I am trying to use it's DirectShow filters to convert .rm to .mp3 but without success:( (Actually after adding RealPlayer Transcode filter and choosing a file the GraphStudio crashes.)
Is there a legal way to programmatically convert .rm file to another format? How to make RealPlayer to programmatically convert files? Do you have any hints or examples, how to use RealPlayer Transcode filter? (I am new to DirectShow.)
UPDATE to make the question more concrete: How can I list implemented interfaces and its members of RealPlayer Transcode filter? I have not found any documentation:( (The GraphStudio says it has 0 pins and just common properties.)
You need to build a DirectShow graph to read and decode .rm, then compress audio into MP3 and write it into a file. This is similar to recompressing an AVI file, described in some detail on MSDN: Recompressing an AVI File. You just have audio without video there, and the container formats are different.
UPDATE: There is no way to reliably list implemented interfaces in COM. Sometimes you can find this out by checking the type library, however a lot of DirectShow filters are coming without it. Typically, you need an SDK header file from the filter vendor to get a definition of implemented so called 'private' interfaces.

How do you get audio into an iPhone app?

How do you display audio files like an imagepicker? I'm using the MPMediaplayer class but I can't get it to work. My requirement is to click on a tableviewcell, and have audio files appear like an imagepicker.
simple get the path of all audio files. and parse the name only from the path. store all the names in array and display in UITableView. just read about how to use nsfilemanager.

Resources