Media Foundation Encoder MF_E_TRANSCODE_NO_MATCHING_ENCODER - media

I am trying to convert from wmv to mp4.
First of do I need to implement my IMFTransform to do this ?
Do i need to convert the video to MFVideoFormat_I420 ?
As far as I know if you create the topology correctly this should be handled automatically.
So I created my profile showed in the
http://msdn.microsoft.com/en-us/library/windows/desktop/ff819476%28v=vs.85%29.aspx
but i get a MF_E_TRANSCODE_NO_MATCHING_ENCODER.
I have windows 7 so, i should have the encoder.
Also Does anyone know where the source code for that tutorial is. It is not under SDK samples.
Thanks.

You don't show code - noone knows what is wrong.
Take a look at this transcoding sample, which comes with source code and does exactly what you are trying to do: transcoding from ASF into MP4.
http://blogs.msdn.com/b/mf/archive/2009/12/02/mfsimpleencode.aspx
MFSimpleEncode.exe - This is a command line tool that transcodes files
from one media format to another. The source code is provided to use
as a reference if you write your own transcode application. This tool
uses the Media Foundation transcode API, which was introduced in
Windows 7.
Examples:
Transcode ASF to MPEG-4:
MFSimpleencode.exe –i Input.wmv –o output.mp4 –p TranscodeProfileMPEG4.xml

Related

ffmpeg make file configuration options

I am trying to implement a media player plugin in chrome using ffmpeg. This player should support rtsp,h264, MJPEG formats.
My question is, which decoders/encoders need to be enabled in ffmpeg build script?
Regards,
George

Convert FLV to MP4 video files on MAC OSx

I am newbie on Mac OSx. I want to convert videos from one format to another like MP4 to MOV, FLV to MP4, MP4 to 3GP etc. I have already surfed on net. I found cocoa can do something using its QTKit architecture. In this, we can export videos in different formats. but i am not able to check that is it useful for FLV format. I want to convert FLV to MP4. Am I on right way or is there any other way for this conversion of videos.Your any kind of help will really appreciate.
Thanks.
FLV is probably the simplest video container in existence, Just download the spec (Adobe Flash Video File Format Specification Version 10.1), and parse it manually. Then use QTKit, or another third party library to remux to mp4.
This is the easiest way to convert video formats using MacOSX command line (any version). First download this compressed file and unpack it to your Movies Folder:
https://drive.google.com/file/d/0B3NlLwMD4yd9QU0yVGJyU1NiUDA/view?usp=sharing
You will then have a MMedia_Converter directory with two apps: MMedia_Convert and Android_Converter. Those are my own developed MacOSX open source applications, bassed on FFMpeg Group and HandBrake Group France previous work. Both are fully compliant Mac compilled applications and you´ll have have to do nothing but extract them to your Movies Folder.
You also have there, 3 folders: clip_in, clip_out and scripts.
You must put the videos you want to be converted in the clip_in folder.
The converted output videos, will be generated automatically in the clip_out folder.
In addition you have 2 bash scripts, that you must move to your Mac OSX Desktop.
Once these bash are on desktop, edit them with TextEdit, and change my user name by your Mac name.
In my case, I use one script to generate thumbnails and the other to generate thumbnails too, and to automatically convert videos from any formar to wathever I choose.
"Whatever" means, that if you want to convert mpeg to mkv, you will have to declare it in line: DEST_EXT=mkv (or wathever known video format you want).
Hope this will help you all.
Best Regards, Tomás Hernández

How can I stream camera using ffmpeg and send over network using live555

I am making a application for streaming webcam. I would like to use ffmpeg to capture camera, ffmpeg as encoder and live555 as server. I know I must implement DeviceSource.cpp in live555 to encapsulate the encoder to receive frame from ffmpeg.So can anyone provide me some tutorial or example about implementing.Thanks in advanced.
Here is a good example of what you are after here:
https://www.imc-store.com.au/Articles.asp?ID=278
It is a c++ VS2010 project showing how to encode a raw RGB frame using FFMPEG, and then sending that discrete frame onto Live555 to be streamed.
The VS2010 project includes all the library and include files so it should simply be a case of unzipping, running the .sln file in VS2010, compile and run!
Also the VLC source code implements both FFMPEG and Live555, you could take a look at their code for some extra pointers!
Good luck!

Embed Windows media player in flex

I have a mp4 file which is to be used in an application. Currently i am in the stage of figuring out the technology to be used for this job. I am familiar with flex and am hoping that i be able to use it for the application. But i can not figure out a way to play the file in flex. I have been able to play the file only in windows media player and that required the installation of three codecs : Mp4Audio.ax, Mp4Video.ax, Mp4Src.ax.
As i see it, it will be very convenient if i could embed a windows media player plugin in flex or i could specify the audio and video codecs in the flash player.
Else i will have to learn .Net, i guess.
Kindly help me out. Thanks in advance.
If you are creating an air app then you are able to start the windows-media-player using the NativeProcess. Anyway if you have a flex web app then you do not have any options on this. :(
My recommendation: Convert the video file to a valid mp4 file that can be played by flex. I suggest you to check ffmpeg library (and you could use it to convert the file to H264 format)

software which can stream any flv file

I know this is not programming related, but I have a scenario.
Each video streaming site has a flash video plugin and upon viewing the source I can find the link of the flv file it is streaming. Now I wanted to make an application or work on an existing one, where I can copy and paste the url of the flv file and it streams it for me. Something like an application which can stream flash videos for me.
Take an opensource flv player and plug it into your website and put the url of the flv files you want to stream.
Should work in most cases, in cases it won't work, you have the source code, so change it to overcome any issues :).
On the client side you can use this flash application to render the flv (works on any flv file) http://www.longtailvideo.com/players/jw-flv-player/ . Needs a license for commercial use (quite cheap).
On the server side you have to build an application which will stream flv files - but i guess that, if you want to use existing online flv files, you don't need this part.
Use Adobe Flash or the Flex SDK.

Resources