Bonjour,
J'aimerais créer deux version différentes à partir du même fichier dans un répertoire.

Je sais que vous allez me dire d'utiliser ffmpeg, mais le problème est je suis sur un serveur multulisé et non dédié. J'ai pas vraiment accès au lignes de commendes du serveur. Je me suis dit que je vais utilisé les fonction de Copy() et de rename() de PHP.

Le problème qui me dérange c'est que des fonctions écrase le fichier source. Je veux garder le fichier source qui est .wav. Je veux mettre un système de téléchargement et je veux donner la meilleur qualité à ceux qu'ils payent les tunes.

Le l'url du fichier est : files/audios/1/
wav => mp3
wav => ogg

J'ai essayé de changer les extensions .wav en mp3 manuellement et l'ordinateur réussit à les reconnaître.

J'ai commencé mon code :

if (isset($this->data'Track']'audio'])) {
            $dest = 'files'.DS.'audios'.DS.$this->id;
            $file = $dest.DS.$this->id.'.wav';
        }
        copy($file, $this->id.'.wav');

Le résultat :

files/audios/1/1.wav
files/audios/1/1.mp3
files/audios/1/1.ogg

merci de votre aide.

4 réponses


o.O

Mais tu veux changer l'extension seulement ou l'encodage / type de fichier ??

Changer un fichier .wav en .mp3 va juste changer son nom, pas du tout le fichier en lui meme ... un .wav restera un .wav, meme avec une extension .mp3 ...

Ou alors j'ai pas pigé le truc que tu veux faire ?

lakamark
Auteur

J'essayait une tentative sa va être plus complexe mon affaire il faut que je change l'encodage du fichier dynamiquement. Je le sais pas comment. Est-ce que vous avez une alternative ou une piste à me suggéré?

Une breve recherche internet retourne une dizaine de forums qui disent tous qu'une library PHP en stand alone pour convertir de l'audio n'existe pas:
stackoverflow.com/
phpfreaks.com
...

Ceux qui peuvent se tournent donc vers ffmpeg et éventuellement des lib php qui font le lien avec. Si tu ne peux pas, t'es mal ^^

Ce que je te suggère, a la limite, c'est d'outsourcer. Des sites tels que http://api.online-convert.com/ proposent des API pour faire des conversions depuis des serveurs. online-convert a une version gratuite limitée (et une payante évidement, qu'est mieux) qui te permet de convertir jusqu'a 30 fichiers par jour (taille < 100M). Tu envoies une requete XML qui contient un lien pour télécharger ta video, et les spec de la conversion que tu veux, et quand c'est fini tu récupères les nouveaux fichiers.

Dans ton cas je suppose que c'est ce qu'il y a de plus viable, comme solution.

Quant a copier les fichiers initiaux et changer leur extension, je vois pas du tout, du tout, du tout l'intéret.

lakamark
Auteur

Je peut surement demandé à aux admin si il peuvent installer pour mon serveur ffmpeg.

Merci de tes solution. La plus simple est le ffmpeg.

Je voulait faire des essais avec seulement php, mais je me suis rendu compte que cela est impossible.