Gå til innhold

Fil konvertering i PHP - mpeg4 til 3gp format


Anbefalte innlegg

Hei

 

Har sjekket meste av forumet og finner ingen emner om det jeg lurer på, som er følgende.

Om noen har no form for script for konvertering av filer i PHP, fra f.eks. mpeg4 til 3gp streaming format. Eller ihvertfall pushe meg i riktig retning av noe som kan brukes?

Opplastningsskript har jeg, me sliter litt med å finne ut om konverteringen.

 

Håper noen kan hjelpe meg :) Setter stor pris på det:

 

Hilsen nybegynneren

Lenke til kommentar
Videoannonse
Annonse

Slik konvertering er teknisk sett fult ut mulig i PHP, men det er et ren helvete i praksis. Tviler sterkt på at man finner noe slikt, og det er vel bedre å se etter løsninger skrevet i C, C++, Java e.l. som er språk som er bedre egnet for en slik oppgave.

 

Edit: Kan si litt hvorfor det er et helvete:

  1. Klar begrensning i minnet. MÅ økes utover standardverdi på 8 eller 16MiB (husker ikke i farten hva som er standard nå).
  2. Trenger sannsynligvis eksekveringstid utover 30sek. som er standard.
  3. PHP er et typesvakt språk. Dvs. vi har bare variabler, ikke float, int, char osv. som i andre språk. Det kan skape problemer
  4. Pack/unpack er noe drit
  5. Teorien bak konverteringen er nok ikke akkurat hverdagskost.
  6. PHP er treigt og ineffektivt.

Endret av Ernie
Lenke til kommentar
Om noen har no form for script for konvertering av filer i PHP, fra f.eks. mpeg4 til 3gp streaming format. Eller ihvertfall pushe meg i riktig retning av noe som kan brukes?

 

Hilsen nybegynneren

9581454[/snapback]

Vet ikke om du har tenkt over denne muligheten: Få php til og kalle på ett eksternt program som kan gjøre denne jobben for deg. for bildebehandling i php bruker jeg ImageMagick til og gjøre den faktiske jobben med bildet, mens php bare forteller imagemagick hva den skal gjøre. Har ikke testet video enda, men regner med at det burde fungere like flott som bildebehandling. prøv f.eks ffmpeg. Jeg har brukt dette progammet mye selv for og konvertere filmer, dog ikke via php. for og kalle på dette programmet bruker du bare php kommandoen exec(); og ffmpeg ligger i standard pakkene til ubuntu, og kan lastes ned og installeres med kommandoen: sudo apt-get install ffmpeg

 

Dersom du har en ukomprimert film kan du teste med f.eks:

transcode -i film.avi -o film2.avi -y xvid

 

Om dette funker med 3gp vet jeg ikke, men det er i alle fall ett skritt i -en- retning ;)

Lenke til kommentar

Ettersom jeg har skjønt, er ffmpeg extensionen mest egnet til å ekstrahere metadata fra filmer, samt lage preview thumbnails. Det er ikke noe innebygget støtte for encoding av video der. Man er fortsatt nødt til å kjøre ffmpeg fra kommandolinje for å få til det.

 

Mencoder er også et alternativ (del av mplayer til linux). Den er ikke like effektiv som ffmpeg, men jeg liker den litt bedre, fordi det er enklere å parse kommandolinje output fra den, noe som gjør det enklere å lage et php API til den.

 

Jeg har via jobben brukt On2 Flix Engine som inneholder en del proprietære codecer for bl.a. lage Flash Video med VP6 encoding samt lesing av ulike wmv format. Den har også støtte for å lage 3gp video, men koster 3750$. Det følger med PHP extension som lar deg legge på ulike filter (på både lyd og bilde), ekstrahere metadata, encode, lage preview-bilder og overvåke prosesser. Den er knall på å utnytte flerkjerne systemer også. Har en 2*2-kjerne Xeon server hvor cpu bruken for encoderen ligger på 380% mens decoderen ligger på rundt 10% under encoding :). Prgorammet finnes for både Windows og Linux.

Lenke til kommentar

Opprett en konto eller logg inn for å kommentere

Du må være et medlem for å kunne skrive en kommentar

Opprett konto

Det er enkelt å melde seg inn for å starte en ny konto!

Start en konto

Logg inn

Har du allerede en konto? Logg inn her.

Logg inn nå
  • Hvem er aktive   0 medlemmer

    • Ingen innloggede medlemmer aktive
×
×
  • Opprett ny...