Wrap Raw Speex in OGG Container - ogg

are there any libraries that allow one to pack raw speex into an ogg container?
I know Jspeex, but - as far as I can see - this library only handles Ogg/Speex and PCM.
But I already have a Speex stream and want to wrap this in an Ogg container.
Thanks for your support

For Java, there is Ogg for Java.
For C, you can use libogg or liboggz. Here is an example which uses liboggz to encapsulate an audio stream encoded by libfishsound:
https://github.com/kfish/libfishsound/blob/master/src/examples/fishsound-encode.c

Related

Transfer file from native and receive it in flutter

I have a kotlin app and I need to transfer an image file from native to flutter. I am new to the kotlin side but good with flutter. How should I approach this?
How about transfer image data in base64 string format,
In Kotlin side, encode the image file data into base64 format,
In Flutter side, decode the base64 string to image,
I think it is the normal way to transfer images or other files between different Languages

How to programmatically output fragmented mp4 file using libavformat?

I want to use mp4 file format for live streaming, which is not possible with an unfragmented mp4 file, as the moov atom is generally written at the end of the file. I need to generate a fragmented mp4 file to transfer it over a network for live streaming. I am using libavformat. The problem is, I can write unfragmented mp4 files easily with libavformat, but I don't know how to write a fragmented mp4 file. So, how to write a fragmented mp4 file using libavformat?
I don't think you are looking for fragmented mp4 (FYI a fragmented mp4 is usually called .ismv) ISMV requires a media server and specialized client to stream.
I think what you are looking for is faststart. This simply moves the moov atom to the start of the file. ffmpeg comes with a qt-faststart utility that will do this for you. Check you distrobution.
You can use Bento4 library to do this easily. Download from here http://www.bento4.com/downloads/ and use the binary mp4fragment.
mp4fragment sourcefile destinatiofile

Can I convert images to progressive jpeg with filepicker?

It would be super helpful if the jpeg files produced by filepicker's handy convert API could produce progressive jpegs. Can it be done already?
We don't currently support progressive jpegs. It's a good idea and I've created a feature request ticket. Thanks.

silverstripe upload tiff and convert to jpeg

i´m working on a image database build with silverstripe framework. It needs to be able to upload large tiff files and they should be converted to jpeg. is there a build in function to do that, or do I have to use a library for that?
Regards,
Florian
SilverStripe doesn't have built-in image conversion utilities, just a GD class which mainly handles resizing of existing images (in gif/jpg/png).
ImageMagick supports conversion of TIFFs (see supported formats). I'm sure you can find PHP wrapper libraries for it (doesn't have to be specific to SilverStripe), or use the commandline tool directly via exec().
Other than that, we have the UploadField class to handle uploads. It uses the jQuery fileupload plugin, which supports larger files (although server timeouts and PHP config play a role here as well). You might want to look into chunked uploads.

How to make Red 5 media server stream different formats of files?

I need to stream both audio and video files from the Red 5 server. By default Red 5 only supports flash, but I need to add support for other file types too.
I need to dynamically (on the run time) transcode the media file in one format to desired formats as per client request. Is it possible ? How to go for it ? I have been reading of vlcj project, but dont know how to integrate them.
If audio / video transcoding is not possible in Red 5, is there any other open source alternative I can look forward to ?
Any help will be really appreciated...
Thanks !
Check out the StreamableFileFactory bean inside your red5-common.xml, to see what kind of files can be streamed by default (flv, mp3, mp4, m4a). If you copy any of these files in your red5 service's streaming directory, it will be able to play it.
If the source you need to stream is in different format (like youtube uploads), then the best way for you to go is ffmpeg.
You build it to your server, then
from inside your red5
service check whether there are any
unsupported files in your streaming
directory (should be a scheduled job), and
if so, use ffmpeg with the proper
parameters to convert the new files
to streamable formats.
that's it.