Google Flix Engine Linux Reference Manual User Manual

Page 380

Advertising
background image

374

Flix Engine Linux Page Documentation

Options may be set and codecs/filters/muxers may be added prior to Encode()

*/

/*Add the scale filter
Filter filter = new Filter(flix,flix.FE2_FILTER_SCALE);

filter.add();

filter.setParam(flix.FE2_SCALE_WIDTH,240.0);

filter.setParam(flix.FE2_SCALE_HEIGHT,160.0);

*/

/*Add the vp6 codec. Though it is the default, you must add it in order

to modify its settings

Codec codec = new Codec(flix,flix.FE2_CODEC_VP6);

codec.add();

codec.setParam(flix.FE2_VP6_RC_MODE,

FE2_VideoBitrateControls.VBR_1PASSControl.swigValue());

*/

/*Use the FLV muxer (default)
Muxer muxer = new Muxer(flix,flix.FE2_MUXER_FLV);

muxer.add();*/

System.out.println();

flix.Encode();

boolean ier;

do {

ier = flix.IsEncoderRunning();

System.out.print("\rEncoding..." +

flix.encoding_status_PercentComplete() + "%

");

try {Thread.currentThread().sleep(1000);}

catch(InterruptedException e) {}

} while(ier);

System.out.println("Done!");

printEncoderStatus(flix);

flix.Destroy();

} catch (FlixException e) {

System.out.println("Flix call failed: "+e);

e.printStackTrace();

//if e == ON2_NET_ERROR Flix2_Errno will return the specific

//rpc error encountered as flixerrno along with the client lib’s errno value

try {

long[] flixerr = flix.Errno();

System.out.println("\tFlixEngine2.Errno: "+

(e.equals(on2sc.ON2_NET_ERROR)?

"rpcerr":"flixerrno")+": "+flixerr[0]+

" syserrno:"+flixerr[1]);

} catch (FlixException ex) {}

}

}

private static void printEncoderStatus(final FlixEngine2 flix)

{

try {

System.out.println("\nEncoder Status");

System.out.println(" FlixEngine2.GetEncoderState:"+

flix.GetEncoderState());

long[] flixerr = flix.Errno();

System.out.println(" FlixEngine2.Errno: flixerrno:"+

flixerr[0]+" syserrno:"+flixerr[1]);

} catch (FlixException e) {}

}

}

Generated on Tue Jul 20 17:39:03 2010 for Flix Engine Linux by Doxygen

Advertising