[Libav-user] How can i get just basic info from an input video file by ffmpeg?

Matthew Einhorn moiein2000 at gmail.com
Wed Jul 6 08:38:24 CEST 2011


On Wed, Jul 6, 2011 at 2:16 AM, Amir Rouhi-Rmit <amir.rouhi at rmit.edu.au> wrote:
> I am using DEV  C++ developer under windows. Here i cant find any .lib files
> like old borland c compilers.
> What i have done step by step is:
>
> Open ffmpeg.c file in DEV C++ compiler.
> Set Include directory from tools/compiler options/ directories to
> ffmpeg/libavcodec.
> (There is a another setting place for libraries which i dont know i should
> set it to which directory.)
> Compile the program.
>
> I get some compiler error such as:
> "Line 30 In file include c:\.......libavutil\avutil.h"
> Whats your advice?
>
> On Wed, Jul 6, 2011 at 1:39 PM, Matthew Einhorn <moiein2000 at gmail.com>
> wrote:
>>
>> On Tue, Jul 5, 2011 at 11:15 PM, Amir Rouhi-Rmit <amir.rouhi at rmit.edu.au>
>> wrote:
>> > Please help me, I use DEV c++ compiler in windows platform. I build a
>> > project in this compiler and add utils.c (with al its headers and
>> > functions)
>> > to the project, but when i want to compile the program, it does not
>> > recognise all the header files used in utils.c  such as #include
>> > "avformat.h". It seems that i have a problem in including new library
>> > files
>> > or in linking. Even i add the libavecodec path for new header files
>> > location
>> > but still does not recognise them.
>> >
>> > On Tue, Jul 5, 2011 at 4:37 PM, Clément Bœsch <ubitux at gmail.com> wrote:
>> >>
>> >> On Tue, Jul 05, 2011 at 04:27:16PM +1000, Amir Rouhi-Rmit wrote:
>> >> > I found dump_format() function (not av_dump_format() ) among ffmpeg
>> >> > source
>> >> > codes :  dump_format(ic, 0, is->filename, 0);
>> >>
>> >> You are not up to date then…
>> >>
>> >> > but i would be pleased if you let me know how can i find a tutorial
>> >> > which
>> >> > shows how can i use the function ? and which header should be
>> >> > included?
>> >> >
>> >>
>> >> av_dump_format() is just a printing function. It is defined in
>> >> libavformat/utils.c. You can look into this file how where it finds the
>> >> various information it prints.
>> >>
>> >> If you need some examples on how to use the API, look at the ffmpeg.c,
>> >> ffplay.c and ffprobe.c. Also, doc/examples contains various codes that
>> >> might help you.
>> >>
>> >> Note: please do not top post, it is considered rude.
>> >>
>> >> [...]
>> >>
>> >> --
>> >> Clément B.
>> >>
>> >> _______________________________________________
>> >> Libav-user mailing list
>> >> Libav-user at ffmpeg.org
>> >> http://ffmpeg.org/mailman/listinfo/libav-user
>> >>
>> >
>> >
>> >
>> > --
>> > Amir H. Rouhi
>> > PhD Student/ CSIT RMIT University
>> > Room: 14-09-04
>> > rouhi_amirhossein at student.rmit.edu.au
>> > amir.rouhi at rmit.edu.au
>> >
>> >
>> > _______________________________________________
>> > Libav-user mailing list
>> > Libav-user at ffmpeg.org
>> > http://ffmpeg.org/mailman/listinfo/libav-user
>> >
>> >
>>
>> Please don't top post.
>>
>> A couple of reasons why it might not work is that you have to wrap all
>> the ffmpeg includes in a extern "C"  declaration. Also, assuming that
>> you didn't build ffmpeg yourself, did you link dynamically or
>> statically? And if statically, did you link to the .lib files? You
>> should include some kind of error massage, otherwise it's hard to know
>> what's going wrong.
>>
>> Matt
>> _______________________________________________
>> Libav-user mailing list
>> Libav-user at ffmpeg.org
>> http://ffmpeg.org/mailman/listinfo/libav-user
>
>
>
> --
> Amir H. Rouhi
> PhD Student/ CSIT RMIT University
> Room: 14-09-04
> rouhi_amirhossein at student.rmit.edu.au
> amir.rouhi at rmit.edu.au
>
>
> _______________________________________________
> Libav-user mailing list
> Libav-user at ffmpeg.org
> http://ffmpeg.org/mailman/listinfo/libav-user
>
>

I'm pretty sure that won't work. You cannot compile the files in c++.
You should use one of the precompiled DLL builds (look at the download
link on the ffmpeg page) and link to the required functions in the
dll.This way you can call and incorporate the ffmpeg functions into
your application. I haven't use DEV c++ however, only MSVC++.

For example, the zeranoe builds will include the header files for most
fffmpeg supported function which you could then call once you load the
dll library dynamically, or statically if you link to the included
.lib files (and of course you have to include the headers into your
project).

Matt


More information about the Libav-user mailing list