ffmpeg make file configuration options - ffmpeg

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

Related

Media Foundation Encoder MF_E_TRANSCODE_NO_MATCHING_ENCODER

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

How do VLC and ffmpeg work together?

I compiled VLC from the source code and it works well. When I do ". / Vlc" vlc runs. I also compiled ffmpeg from source and it works well too. When I do "ffmpeg-i-f toto.flv mp3-vn-acodec copy new_toto.mp3", the file named "new_toto.mp3" is generated.
What I cannot understand is how VLC and ffmpeg work together? What part of VLC code uses ffmpeg code?
Is there a ffmpeg command to play (read) a video?
VLC does not embed FFmpeg as a sort of slave binary used internally, as you possibly could suppose. Instead, both FFmpeg and VLC are using libavcodec, a library which implement what ffmpeg exposes through its command line interface. So, FFmpeg supports VLC through supplying its libavcodec library to be one of the essential components on which the VLC is built as a player app.
Is there a ffmpeg command to play (read) a video?
ffplay video.mp4
ffplay is however a very stripped down video viewer, mostly only suitable for debugging video things and not for daily usage.
ffplay may be more accurate than VLC for some quirky formats, for example it can handle very low FPS video where VLC 2.2.4 could not: How to resize a picture using ffmpeg's sws_scale()?
Tested in Ubuntu 16.04, ffmpeg 2.8 with this minimal procedurally generated videos from: How to resize a picture using ffmpeg's sws_scale()?

Using Microsoft DTV-DVD Video Decoder to play H264 video

I am trying to play an H264 video with graphedit on Windows 7 32bit.
Graphedit is unable to render the file.
I tried to mount the graph manually using the Microsoft DTV-DVD Video Decoder (also know as Microsoft MPEG-2 Video Encoder) but I could not connected the filters.
Here is the pipeline I tried :
File Source >> Microsoft DTV-DVD Video Decoder >> Video Renderer (or VMR9)
I also tried this :
File Source >> MPEG-2 Demultiplexer >> Microsoft DTV-DVD Video Decoder >> Video Renderer (or VMR9)
In either case, I could not connect anything to the file source filter.
The H264 video I am trying to play is the Serenity trailer I downloaded from here : http://www.h264info.com/clips.html
Do you have any idea how I could play the h264 video file with graph edit?
Thank you
For starters. That file is an mp4, so you need an mpeg4 demuxer filter, which Microsoft does not provide for DirectShow. MediaFoundation supports it natively, but that functionality is not exposed to DirectShow. There are commercial DirectShow filters available or the open-source "ffdshow" plus "Haali Media Splitter" will do it. If your project can use the open source products, that will also provide a decoder with wide-ranging compatibility.
Assuming you don't want to use ffdshow and instead get a demuxer from elsewhere, it may or may not work with the Microsoft DTV-DVD Video Decoder. I've seen erratic results with it. A lot of content it just doesn't want to play.
One other thing is that you will likely want to use the Enhanced Video Renderer in Win7 instead of VMR9. VMR9 is neutered in Win7 (compared to XP). It's no longer compatible with dxva hardware acceleration, and the scaling is limited to the ugliest mode.
Use the File source but connect it to Geraint Davies' free mpeg4 demux available at http://www.gdcl.co.uk/mpeg4/
If you then render the output pins of the demux, the video decoder will automatically be inserted. I just tried it with the video you mentioned and it works fine.

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