package Ġcom . vin cent . video compressor Ċ Ċ import Ġandroid . os . AsyncTask Ċ Ċ /** Ċ Ġ* ĠCreated Ġby ĠV in cent ĠW oo Ċ Ġ* ĠDate : Ġ 2 0 1 7 / 8 / 1 6 Ċ Ġ* ĠTime : Ġ 1 5 : 1 5 Ċ Ġ*/ Ċ object ĠVideo Compressor Ġ{ ĊĠĠĠ Ġprivate Ġval ĠTAG Ġ= ĠVideo Compressor :: class . java . simple Name ĊĠĠĠ Ġfun Ġcompress Video High ( ĊĠĠĠĠĠĠĠ Ġsrc Path : ĠString ?, ĊĠĠĠĠĠĠĠ Ġdest Path : ĠString ?, ĊĠĠĠĠĠĠĠ Ġlistener : ĠCompress Listener ? ĊĠĠĠ Ġ): ĠVideo Compress Task Ġ{ ĊĠĠĠĠĠĠĠ Ġval Ġtask Ġ= ĊĠĠĠĠĠĠĠĠĠĠĠ ĠVideo Compress Task ( listener , ĠVideo Controller . COMPRESS _ QUAL ITY _ HIGH ) ĊĠĠĠĠĠĠĠ Ġtask . execute ( src Path , Ġdest Path ) ĊĠĠĠĠĠĠĠ Ġreturn Ġtask ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġfun Ġcompress Video Medium ( ĊĠĠĠĠĠĠĠ Ġsrc Path : ĠString ?, ĊĠĠĠĠĠĠĠ Ġdest Path : ĠString ?, ĊĠĠĠĠĠĠĠ Ġlistener : ĠCompress Listener ? ĊĠĠĠ Ġ): ĠVideo Compress Task Ġ{ ĊĠĠĠĠĠĠĠ Ġval Ġtask Ġ= ĊĠĠĠĠĠĠĠĠĠĠĠ ĠVideo Compress Task ( listener , ĠVideo Controller . COMPRESS _ QUAL ITY _ MEDIUM ) ĊĠĠĠĠĠĠĠ Ġtask . execute ( src Path , Ġdest Path ) ĊĠĠĠĠĠĠĠ Ġreturn Ġtask ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġfun Ġcompress Video Low ( ĊĠĠĠĠĠĠĠ Ġsrc Path : ĠString ?, ĊĠĠĠĠĠĠĠ Ġdest Path : ĠString ?, ĊĠĠĠĠĠĠĠ Ġlistener : ĠCompress Listener ? ĊĠĠĠ Ġ): ĠVideo Compress Task Ġ{ ĊĠĠĠĠĠĠĠ Ġval Ġtask Ġ= ĊĠĠĠĠĠĠĠĠĠĠĠ ĠVideo Compress Task ( listener , ĠVideo Controller . COMPRESS _ QUAL ITY _ LOW ) ĊĠĠĠĠĠĠĠ Ġtask . execute ( src Path , Ġdest Path ) ĊĠĠĠĠĠĠĠ Ġreturn Ġtask ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġclass ĠVideo Compress Task ( ĊĠĠĠĠĠĠĠ Ġprivate Ġval Ġm Listener : ĠCompress Listener ?, ĊĠĠĠĠĠĠĠ Ġprivate Ġval Ġm Quality : ĠInt ĊĠĠĠ Ġ) Ġ: ĊĠĠĠĠĠĠĠ ĠAsync Task < String ?, ĠFloat ?, ĠBoolean >() Ġ{ ĊĠĠĠĠĠĠĠ Ġoverride Ġfun Ġon Pre Execute () Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġsuper . on Pre Execute () ĊĠĠĠĠĠĠĠĠĠĠĠ Ġm Listener ?. onStart () ĊĠĠĠĠĠĠĠ Ġ} ĊĊĠĠĠĠĠĠĠ Ġoverride Ġfun Ġdo In Background ( var arg Ġpaths : ĠString ?): ĠBoolean Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġreturn ĠVideo Controller . getInstance (). convert Video ( ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġpaths [ 0 ], ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġpaths [ 1 ], ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġm Quality ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ) Ġ{ Ġpercent Ġ-> Ġpublish Progress ( percent ) Ġ} ĊĠĠĠĠĠĠĠ Ġ} ĊĊĠĠĠĠĠĠĠ Ġoverride Ġfun Ġon Progress Update ( var arg Ġvalues : ĠFloat ?) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġm Listener ?. on Progress ( values [ 0 ] !! ) ĊĠĠĠĠĠĠĠ Ġ} ĊĊĠĠĠĠĠĠĠ Ġoverride Ġfun Ġon Post Execute ( result : ĠBoolean ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġsuper . on Post Execute ( result ) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġif Ġ( m Listener Ġ!= Ġnull ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġif Ġ( result ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġm Listener . on Success () ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ} Ġelse Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġm Listener . on Fail () ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġinterface ĠCompress Listener Ġ{ ĊĠĠĠĠĠĠĠ Ġfun ĠonStart () ĊĠĠĠĠĠĠĠ Ġfun ĠonSuccess () ĊĠĠĠĠĠĠĠ Ġfun Ġon Fail () ĊĠĠĠĠĠĠĠ Ġfun Ġon Progress ( percent : ĠFloat ) ĊĠĠĠ Ġ} Ċ }