c# - Extracting frames of a .avi file -


i trying write c# code extract each frame of .avi file , save provided directory. know suitable library use such purpose?

note: final release must work on systems regardless of installed codec, or system architecture. must not require presence of program (like matlab) on machine.

thanks in advance. tunc

this not possible, unless add restrictions input avi files or have control on encoder used create them. image have decode first, , need appropriate codec installed or deployed app. , doubt possible account every codec out there or install/deploy them all. no, won't able open just any avi file. can, however, support popular (or common in context) codecs.

the easiest way indeed using ffmpeg, since alredy includes of common codecs (if dont mind 30+mb added app). wrappers, used aforge wrapper in past , liked it, because of how simple work with. here example docs:

// create instance of video reader  videofilereader reader = new videofilereader( ); // open video file reader.open( "test.avi" ); // read 100 video frames out of ( int = 0; < 100; i++ ) {     bitmap videoframe = reader.readvideoframe( );      videoframe.save(i + ".bmp")      // dispose frame when no longer required     videoframe.dispose( ); } reader.close( ); 

there vfw (which included in windows default) wrapper in aforge, if want keep simple without involving external libraries. still need vfw compatible codecs installed tho (some of them included in windows default, not).


Comments

Popular posts from this blog

javascript - DIV "hiding" when changing dropdown value -

Does Firefox offer AppleScript support to get URL of windows? -

android - How to install packaged app on Firefox for mobile? -