public function actionUpload() { $model = new UploadForm(); if (Yii::$app->request->isPost) { $parametros = Yii::$app->request->post(); if ($audiencia = Audiencia::findOne($parametros['idAudiencia'])) { if (!is_dir(Yii::getAlias('@upload') . '/' . $audiencia->id)) { mkdir(Yii::getAlias('@upload') . '/' . $audiencia->id, 0777); } $nomeArquivo = md5(microtime(true)); $caminhoCompleto = Yii::getAlias('@upload') . '/' . $audiencia->id . '/' . $nomeArquivo; $model->audio = UploadedFile::getInstanceByName('audio'); $model->video = UploadedFile::getInstanceByName('video'); $model->audio->saveAs($caminhoCompleto . '.wav'); $model->video->saveAs($caminhoCompleto . '.webm'); //Tranformo o arquivo em um WEBM com audio $cmd = ' -i ' . $caminhoCompleto . '.wav' . ' -i ' . $caminhoCompleto . '.webm' . ' -vcodec copy ' . $caminhoCompleto . '-m.webm'; exec(Yii::getAlias('@ffmpeg') . ' ' . $cmd . ' 2>&1', $out, $ret); $arquivoVideo = new Multimidia(); $arquivoVideo->dsc_arquivo = $nomeArquivo . '-m.webm'; $arquivoVideo->id_audiencia = $parametros['idAudiencia']; $arquivoVideo->dsc_caminho_completo = $caminhoCompleto . '-m.webm'; $arquivoVideo->save(); $filaEnvio = new FilaEnvio(); $filaEnvio->id_registro = $arquivoVideo->id; $filaEnvio->tabela = $arquivoVideo->tableName(); $filaEnvio->save(); //Efetuo a exclusao dos demais arquivos separados unlink($caminhoCompleto . '.wav'); unlink($caminhoCompleto . '.webm'); } } }