| |
|
Voir le sujet précédent :: Voir le sujet suivant
|
| Auteur |
Message |
| |
|
Mitirapa WRInaute accro

Inscrit le: 10 Juil 2002 Messages: 1575 Localisation: Brest
|
Posté le : Jeu Oct 19, 2006 17:43 Sujet du message: Conception d'un clone youtube |
|
|
ca fleurit en ce moment du coté des clone youtube et je suis sur que bcp d'entre vous possede une partie video dans leur site...
j'avais aussi ca à l'ancien systeme, cad on encode soit meme les videos et on les rajoute, et vu que j'en avais pas bcp j'ai voulu passé a un systeme youtube qui encode lui meme les videos des internautes (ou de l'admin selon votre script) afin d'avoir plus de videos
(au final j'ai fait ca http://www.surf4all.net/modules.php?name=videos&go=voir&shid=59&voir... )
ATTENTION: merci de pas tester en uploadant vos videos, car je ne veux que du surf... sinon yen a qui vont pourrir mon truc
je ne vais pas mettre tous mes codes sources (car apres c'est chacun sa sauce, mais detailler un peu ce qu'il faut en tout)
donc avant tout il faut:
-avoir un dédié
-connaitre le minimum en serveur linux (je suis un debutant pour ma part)
-connaitre tranquillos sont php/mysql
Premiere étape: avoir un logiciel sur le serveur pour encoder en flv les videos...
il existe pour ca ffmpeg (site officiel: http://ffmpeg.mplayerhq.hu/ )
si on fait directement, vous aurez ptetre des trucs genre codecs qui vont vous bloquer par la suite donc je vous conseille de suivre dans le meme ordre 98% de cette page:
http://www.funix.org/fr/linux/base-video.htm
les 2% restant seront les trucs que vous aurez pas reussi ou jugé pas utile
en tant que newbie, cette page est faisable et dedans vous aurez l'etape pour installer ffmpeg
puis tester en ssh une commande, exemple:
/usr/local/bin/ffmpeg -i mavideo.avi manouvellevideo.flv
(il existe des options comme redimmensionner, etc.., cf le site officiel de ffmpeg)
Seconde etape: Faire votre script d'upload
bon on a deja ffmpeg qui fonctionne, maintenant faut un script pour uploader des gros fichiers sur le serveur, il y a plusieurs solutions:
la mieux serait d'utiliser un script cgi, j'ai trouvé Uber-Uploader qui a l'air vraiment interressant
( http://uber-uploader.sourceforge.net/ )
Sinon perso,j'avais un prbl de cgi sur mon site, donc j'ai cherché autre, et j'utilise du flash+php
pour le flash j'ai trouvé un petit script tout simple, par contre j'ai perdu l'url de l'auteur, donc j'ai mis la le fichier: http://www.surf4all.net/up.zip
(il y a aussi la source .fla dedans)
il faudra aussi dans ce cas malheureusement modifier votre php.ini afin d'augmenter la taille d'envoi des fichiers vers votre serveur, et le timeout
Troisieme étape: faire encoder les fichiers uploadés
donc on upload les videos dans un dossier
on fait un cron qui va verifier par exemple toutes les 20 minutes le dossier, et qui encode en flv dans un autre dossier
mon cron:
| Code: |
#!/bin/sh
# script /home/ff
ls -R /home/web/surf4all.net/videoorigine/* | while read fichier
do
file "$fichier" |grep "video" 1>/dev/null &&
fichier2=${fichier/uploads/flvfinal}
fichier2=${fichier2/avi/flv}
fichier2=${fichier2/mpeg/flv}
fichier2=${fichier2/mpg/flv}
fichier2=${fichier2/wmv/flv}
fichier2=${fichier2/divx/flv}
fichier2=${fichier2/AVI/flv}
fichier2=${fichier2/MPEG/flv}
fichier2=${fichier2/MPG/flv}
fichier2=${fichier2/WMV/flv}
fichier2=${fichier2/DIVX/flv}
if /usr/local/bin/ffmpeg -i "$fichier" -s 320x240 -ar 22050 -b 600k "$fichier2"
rm "$fichier"
then echo "Conversion du fichier $fichier reussi."
else echo "Probleme de conversion du fichier $fichier"
fi
/usr/local/bin/ffmpeg -i "$fichier2" -vcodec mjpeg -vframes 1 -an -f rawvideo -s 160x120 "$fichier2.jpg"
done
|
attention, j'ai une ptite erreur dans mon cron (j'ai jamais codé en sh), cad, qu'il fait pas ma boucle comme il faut mais ca fonctionne qd meme un minimum et surement qu'il est mal fait dirons les codeurs... (donc si vous avez mieux je suis preneur)
(j'ai trouvé comment faire ce cron a partir d'une personne qui le faisait sur http://lea-linux.org/pho/read/7/298584 )
Quatrieme étape: bien penser vos script du debut de l'upload a sa conversion en flv, il faut arriver a trouver si la video est bien uploadé (dans une base de donnée je confirme l'upload), bien converti (en php je teste le fichier encodée si il existe) et faire une vignette (c mon cron qui fait avec ffmpeg si vous regardez bien)
Puis apres ben s'amuser à programmer votre script, et pour le lecteur flash celui la est le mieux que j'ai trouvé: http://www.jeroenwijering.com/?item=Flash_Video_Player
Options: il existe une extension ffmpeg-php pour php ( http://ffmpeg-php.sourceforge.net/ ) qui vous permet de connaitre la durée, et d'autres trucs sur la video, ou de generer une vignette...
pour mon cas, je n'arrivais pas a l'utiliser (segmentation fault dans apache) et c'est pour ca que ma vignette est fait dans le cron avec ffmpeg
et pour votre player, selon le navigateur faut cliquer 2 fois sur le flash pour l'avoir, pour eviter ca, il y a un petit script js sur http://www.tekool.net/javascript/backtothehtml (merci a julien-br pour cette info)
voila pour ceux qui veulent se lancer dedans, j'avais pas trouvé de bonne doc, donc j'ai perdu du tps à chercher un peu et faire plein de tests, mais en suivant a peu pres ca, ca prend 2 jours puis voila, le plus long à faire au final reste votre script php/mysql ...
Dernière édition par Mitirapa le Mer Déc 20, 2006 13:43; édité 1 fois |
|
| |
|
 |
Audiofeeline WRInaute accro

Inscrit le: 20 Oct 2005 Messages: 4265 Localisation: Buzz Inside
|
Posté le : Jeu Oct 19, 2006 20:44 Sujet du message: Conception d'un clone youtube |
|
|
Une remarque peut-être HS mais ça serait cool de pouvoir proposer directement les flv..  |
|
| |
|
 |
hebmaster WRInaute passionné

Inscrit le: 22 Déc 2005 Messages: 710 Localisation: Maroc
|
Posté le : Jeu Oct 19, 2006 22:13 Sujet du message: Conception d'un clone youtube |
|
|
merci beaucoup pour avoir partager l'info , je suis entrain de developper un site de ce genre ...
Je vais essayé tes trucs mais ça me semble hyper compliqué ... |
|
| |
|
 |
yazerty WRInaute accro

Inscrit le: 19 Juin 2005 Messages: 1678
|
Posté le : Jeu Oct 19, 2006 23:12 Sujet du message: Conception d'un clone youtube |
|
|
Si un peu de concurrence se développait je ne dirais pas non. Surout surtout si le code html fourni est compatible avec DotClear 2 ! Très important ça ^^... |
|
| |
|
 |
Mitirapa WRInaute accro

Inscrit le: 10 Juil 2002 Messages: 1575 Localisation: Brest
|
Posté le : Jeu Oct 19, 2006 23:28 Sujet du message: Conception d'un clone youtube |
|
|
| Audiofeeline a écrit: |
Une remarque peut-être HS mais ça serait cool de pouvoir proposer directement les flv..  |
dans ce cas, tu peux proposer directement des flv, tout ce qu'il fera, ca sera de redimensionner tes flv (cf cron, 320x240)
hebmaster> si tu suis la ligne c'est pas si dur, apres c'est seulement de tout mettre en relation qui est un peu chiant (car ma méthode n'est pas la meilleure vu que je ne connais pas trop le cron/sh, il y a bcp mieux mais je ne suis pas apte a donner une soluce, mais mon cas suffit sinon) |
|
| |
|
 |
Audiofeeline WRInaute accro

Inscrit le: 20 Oct 2005 Messages: 4265 Localisation: Buzz Inside
|
Posté le : Ven Oct 20, 2006 5:19 Sujet du message: Conception d'un clone youtube |
|
|
Le plus compliqué, hors aspect technique, c'est la gestion d'un site comme ça.
Il faut modérer les vidéos, faire attention aux droits d'auteurs et surtout le coût que cela peut entrainer! |
|
| |
|
 |
sietjp WRInaute passionné

Inscrit le: 14 Déc 2003 Messages: 610 Localisation: Paris
|
Posté le : Ven Oct 20, 2006 9:11 Sujet du message: Re: Conception d'un clone youtube |
|
|
| Mitirapa a écrit: |
..donc avant tout il faut:
-avoir un dédié
... |
Je dirais plutôt une centaine de dédié. A la première vidéo qui fait un petit carton, ton serveur explose... |
|
| |
|
 |
AW WRInaute accro

Inscrit le: 31 Mai 2005 Messages: 2264
|
Posté le : Ven Oct 20, 2006 10:57 Sujet du message: Conception d'un clone youtube |
|
|
Merci pour le partage d'infos Mitirapa. C'est vrai qu'en cas de forte influence, ça peut exploser ton serveur après sur un domaine bien precis et un nombre raisonnable de video je pense que ça peut passer. Si tu peux nous faire un retour dans quelques temps voir comment ça se passe, ça serait hyper sympa  |
|
| |
|
 |
yborean WRInaute impliqué

Inscrit le: 06 Sep 2006 Messages: 309 Localisation: Paris
|
Posté le : Ven Oct 20, 2006 13:58 Sujet du message: Re: Conception d'un clone youtube |
|
|
| sietjp a écrit: |
| Mitirapa a écrit: |
..donc avant tout il faut:
-avoir un dédié
... |
Je dirais plutôt une centaine de dédié. A la première vidéo qui fait un petit carton, ton serveur explose... |
euh faut pas pousser non plus ^^ , chez le client ou je suis actuellement, ils sont a 5millions de visiteurs uniques par mois, et deux serveurs en load balancing leur suffisent, avec une bande passant qui avoisinne les 100M. |
|
| |
|
 |
sietjp WRInaute passionné

Inscrit le: 14 Déc 2003 Messages: 610 Localisation: Paris
|
Posté le : Ven Oct 20, 2006 23:52 Sujet du message: Conception d'un clone youtube |
|
|
100 serveurs, j'exagère un peu, mais une vidéo, c'est autre chose qu'une page web avec quelques images en termes de débit.
En tout cas, j'aimerais bien savoir combien ils ont de serveurs chez youtube, on doit dépasser allégrement les 100 serveurs sans problème. Je parie plus sur 1000 serveurs que sur 100... |
|
| |
|
 |
yborean WRInaute impliqué

Inscrit le: 06 Sep 2006 Messages: 309 Localisation: Paris
|
Posté le : Sam Oct 21, 2006 0:50 Sujet du message: Conception d'un clone youtube |
|
|
| ben je sais pas, mais a priori une règle de trois permet d'avoir un estimation, en rajoutant effectivement un peu de marge vu que c'est de la vidéo, mais un site qui subit une petite euphorie de clics, n'atteindra jamais le nb de visiteurs de youtube. A moins de lever des fonds, de faire de la communication sur tous les médias dans le monde, etc... donc.. |
|
| |
|
 |
Audiofeeline WRInaute accro

Inscrit le: 20 Oct 2005 Messages: 4265 Localisation: Buzz Inside
|
Posté le : Sam Oct 21, 2006 5:39 Sujet du message: Conception d'un clone youtube |
|
|
Dailymotion a bien du mal à se faire un place et avec le rachat de Youtube par Google, la concurrence est morte et enterrée avant même d'exister...
Ou alors il faut trouver quelque chose de novateur et mettre YT au niveau de ringard... |
|
| |
|
 |
sietjp WRInaute passionné

Inscrit le: 14 Déc 2003 Messages: 610 Localisation: Paris
|
Posté le : Sam Oct 21, 2006 9:43 Sujet du message: Conception d'un clone youtube |
|
|
| C'est vrai mais, Dailymotion devrait s'attaquer au marché non américain (eurpopéen entre autre), c'est à mon avis le créneau qu'ils devraient suivre car c'est le seul laissé un peu vacant (pour combien de temps?) par youtube. Car sur youtube on a beau dire mais quand on ne parle pas anglais et qu'on n'a pas la culture américaine, il y a beaucoup de 'top viewed' et 'top rated' vidéos qui nous échappent complètement. |
|
| |
|
 |
Audiofeeline WRInaute accro

Inscrit le: 20 Oct 2005 Messages: 4265 Localisation: Buzz Inside
|
Posté le : Sam Oct 21, 2006 19:55 Sujet du message: Conception d'un clone youtube |
|
|
| Il manque aussi un "Youtube Audio"... |
|
| |
|
 |
benjiman WRInaute occasionnel

Inscrit le: 09 Oct 2005 Messages: 224
|
Posté le : Dim Oct 22, 2006 10:16 Sujet du message: Conception d'un clone youtube |
|
|
Merci beaucoup pour ce texte...
Depuis quelques temsp déja, je voulais avoir des videos en flv... mais ffmpeg n'arrivait pas à s'installer...
Maintenant, c'est chose faites, et donc, merci beaucoup
Cependant, un probleme persiste:
Lorsque je tape (en ssh) :
/usr/local/bin/ffmpeg -i "monfichiersource.extension1" -s 320x240 "monnouveaufichier.flv" -b 600
Je devrais normalement avoir un bitrate à 600 kb/S ...
Or, quoi que je mette, FFMPEG m'écrit:
Input #0, asf, from '/home/monfichier.wmv':
Duration: 00:00:23.7, start: 1.579000, bitrate: 971 kb/s
Stream #0.0: Audio: wmav2, 44100 Hz, stereo, 160 kb/s
Stream #0.1: Video: wmv3, yuv420p, 720x576, 25.00 fps(r)
Output #0, flv, to '/home/monfichier2.wmv.flv':
Stream #0.0: Video: flv, yuv420p, 720x576, q=2-31, 200 kb/s, 25.00 fps(c)
Stream #0.1: Audio: mp3, 44100 Hz, stereo, 64 kb/s
Stream mapping:
Stream #0.1 -> #0.0
Stream #0.0 -> #0.1
Chose bizarre ... car à la fin de l'enregistrement, je trouve :
bitrate= 671.9kbits/s
Je regarde ma video ...
Qualité, horrible, impossible de la voir en une taille correcte (320x240 max pour que ce soit lisible sans voir de gros pixels)
Avez-vous une idée pour avoir une bonne qualitée d'image en flash?
Peut-etre que je me trompe, que le bitrate ne change pas la qualité d'image ...
Bref, si vous avez plus d'infos, ca serait sympade m'éclairer un peu
Merci beaucoup! |
|
| |
|
 |
| |
|
|
|
|
Autres sujets de discussion :
|
|