2015-07-14 2 views
1

J'ai trouvé ce question et j'ai réussi à convertir ma vidéo en OGG, mais il n'inclut pas le son.Conversion MP4 à OGG n'inclut pas de son

Voici le code:

//SET FFMPEG PATH 
$ffmpegPath = 'ffmpeg'; 
//CREATE CLASS INSTANCE 
$ffmpegObj = new ffmpeg_movie($video); 
//GET AUDIO BITRATE FROM SOURCE FILE 
$srcAB = intval($ffmpegObj->getAudioBitRate()); 
//GET VIDEO BITRATE FROM SOURCE FILE 
$srcVB = intval($ffmpegObj->getVideoBitRate());     
//SET THE AUDIO CODEC TO LIBVORBIS 
$aCodec = ' -acodec libvorbis'; 
//SET THE VIDEO CODEC TO LIBTHEORA 
$vCodec = ' -vcodec libtheora'; 
//EXECUTE THE CONVERSION 
exec($ffmpegPath." -i ".$video.$vCodec." -vb ".$srcVB." -ab ".$srcAB." ".$ogg_video); 

Qu'est-ce que je fais mal?

+0

Pouvez-vous montrer quelle est votre commande préparée pour exec? –

+0

Je ne suis pas sûr de savoir ce que vous demandez. – iamthestreets

+0

@mim demande la sortie de 'echo $ ffmpegPath." -i ". $ Video. $ VCodec." -vb ". $ SrcVB." -ab ". $ SrcAB." ". $ Ogg_video;'. À l'heure actuelle, tout ce que nous pouvons voir est un grand nombre de variables, et la commande n'est pas claire. S'il vous plaît modifier la sortie de cela dans votre question, merci! – halfer

Répondre

1

Vous n'incluez pas $aCodec dans la ligne de commande n'importe où! Par conséquent, le fichier généré finit probablement par inclure un flux audio avec un codec inapproprié. En outre, copier les débits binaires audio et vidéo du fichier d'entrée à la sortie n'a pas de sens en général. En particulier, il choisira des débits élevés inappropriés pour une entrée audio/vidéo légèrement compressée ou non compressée (par exemple, le mouvement JPEG, l'audio PCM, etc.). Puisque vous forcez un nouveau jeu de codecs sur la vidéo, il est probablement plus approprié de forcer un débit binaire standard unique pour l'audio, et un débit binaire variable basé sur la résolution de la vidéo.

+0

Merci! Pouvez-vous me donner un exemple de comment je devrais faire cela? Je veux que la vidéo convertie soit aussi haute que possible. – iamthestreets