Compilation & usage

Compiling Homer

HomerHEVC is composed of a simple example application (homer_app) and the encoder library (homer_lib).

Compile in Windows

Visual C++ 2008. Open the solution inside the “build\vc9\” folder and rebuild. Default project is for 64 bits.
Visual C++ 2012. Open the solution inside the “build\vc11\” folder and rebuild. Default project is for 64 bits.
Cygwin. Open the Cygwin console, go to the “build/Cygwin/” folder and type “make clean all” to execute the makefile.

Compile in Linux

Open a console. Go to the “build/Linux/” folder and type “make clean all” to execute the makefile.

Configuration

Supported configuration parameters:

call:

homer_app [-option] [value]... 

options:


-h: help
-i: input yuv file
-o: output 265 file
-o-raw: output raw frames in yuv format
-widthxheight: default = 1280x720
-frame_rate: default = 25 fps
-cu_size: cu size [16,32 or 64], default = 64 (only 64 supported for inter prediction)
-intra_preriod: default = [0-...], 0=infinite, default = 100
-gop_size: 0:intra profile, 1: IPPP.. profile, default = 1
-num_ref_frame: default = 1 (only 1 reference currently supported)
-qp: qp[0-51], default = 32
-motion_estimation_precision: 0=pel, 1=half_pel, 2=quarter_pel, default = 2
-chroma_qp_offset: chroma_qp_offset[-12,12], default = 2
-n_enc_engines: number of encoder engines encoding frames in parallel, default = 2
-n_wpp_threads: 0:no wpp, >0-number of wpp threads, default = 10
-number of wpp threads, default = 10
-max_pred_depth: [0-4], default = 4
-max_intra_tr_depth: [0-4], default = 2
-max_inter_tr_depth: [0-4], default = 1
-sign_hiding: 0=off, 1=on, default = 1
-bitrate_mode: 0=fixed qp, 1=CBR (Constant bitrate), 2=VBR (Variable bitrate), default = VBR
-bitrate: in kbps when bitrate_mode=CBR, default = 1250
-vbv_size: in kbps when bitrate_mode=CBR, default = 1*bitrate
-vbv_init: in kbps when bitrate_mode=CBR, default = .25*vbv_size
-performance_mode: 0=full computation, 1=fast , 2= ultra fast, default = ufast
-rd: 0=off, 1=full rd (only in intra) , 2= fast rd, default = fast
-n_frames: default = 1000
-skipped_frames: default = 0

Configuration examples:

intra:


homer_app -i /home/juan/Patrones/720p5994_parkrun_ter.yuv -o output0.265 -widthxheight 1280x720 -frame_rate 50 -intra_period 1 -gop_size 0 -max_pred_depth 4 -max_intra_tr_depth 3 -bitrate 25000 -vbv_size 1000 -vbv_init 1000 -n_wpp_threads 10 -performance_mode 1 -rd_mode 2 -n_frames 400

inter:


homer_app -i /home/juan/Patrones/720p5994_parkrun_ter.yuv -o output0.265 -widthxheight 1280x720 -frame_rate 50 -intra_period 100 -gop_size 1 -max_pred_depth 4 -max_intra_tr_depth 3 -max_inter_tr_depth 1 -bitrate 5000 -vbv_size 2500 -vbv_init 750 -n_wpp_threads 10 -performance_mode 1 -rd_mode 2 -n_frames 400

Bugs and other issues

Please report bugs and different issues in:
https://github.com/jcasal-homer/HomerHEVC/issues

Using cookies

This site uses cookies for you to have the best user experience. If you continue to browse you are consenting to the acceptance of the aforementioned cookies and acceptance of our cookie policy, click the link for more information. ACEPTAR