webForumDet fria alternativet

FFmpeg

15 svar · 1 070 visningar · startad av Inferis

InferisMedlem sedan sep. 2000670 inlägg
#1

Är det någon som känner till hur man kan konvertera filer till FLV med hjälp av ffmpeg?

Får det inte att fungera:

Dim objShell
Set objShell = CreateObject("WScript.Shell") 
objShell.run "c:\ffmpeg.exe -i c:\inetpub\wwwroot\clock.avi -ar 22050 -ab 32 -f flv -s 320x240 -aspect 4:3 -y movie.flv"
Set objShell = Nothing

Har testat att ge IUSR fulla rättigheter. Rättigheter att exekvera program med.

InferisMedlem sedan sep. 2000670 inlägg
#2

Någon som vet ett annat sätt?
Det behöver inte vara något gratisalternativ.

Det som ska göras är att filer ska laddas upp, dessa ska konverteras till FLV.

colioneMedlem sedan juni 20014 421 inlägg
#3

Här har du ett liknande problem som löste sig:

http://www.webforum.nu/showthread.php?t=73292&page=1&pp=25&highlight=ffmpeg

InferisMedlem sedan sep. 2000670 inlägg
#4

colione skrev:

Här har du ett liknande problem som löste sig:

http://www.webforum.nu/showthread.php?t=73292&page=1&pp=25&highlight=ffmpeg

Jo, kollade på den lösningen.
Problemet är att ASPExec inte går att få tag på.

Sidan med dynuexec var inte tillgänglig igår. (Nu är den dock det ser jag)

Men han löste sitt problem med:

EDIT: Det har löst sig! =)
Det visade sig till slut att jag fick exekvera genom cmd.exe och sen köra på en extern mapp så gick det bra. Rättigheter mao. Stort tack till alla som engagerat sig och hjälpt mig!

Jag vet inte hur man kör ffmpeg genom cmd.exe? Då kanske han inte ens använde komponenten dynuexec?

SnakesMedlem sedan okt. 2004392 inlägg
#5

Vad händer, får du ett felmeddelande?

Vad exakt är det inte som funkar, är det något problem med rättigheterna?
I så fall använd cmd för att ändra rättigheterna på filen(?)/programmet(?).

Glöm inte att ge IUSR_dittdatornamn fulla rättigheter. Du behöver inte alltid ha det så, men bara för att testa om det är felet.

Innan du gör något med ASP testa att göra det med cmd skriv ditt kommando där:
"c:\ffmpeg.exe -i c:\inetpub\wwwroot\clock.avi -ar 22050 -ab 32 -f flv -s 320x240 -aspect 4:3 -y movie.flv" i själva Kommandotolken (cmd) alltså. Om det funkar så betyder det att det är nåt fel med ASP.

EDIT:

Så här kör du den med cmd i ASP (såg precis att du sa att du inte visste hur):

Dim objShell
Set objShell = CreateObject("WScript.Shell") 
objShell.run "cmd.exe ffmpeg.exe -i c:\inetpub\wwwroot\clock.avi -ar 22050 -ab 32 -f flv -s 320x240 -aspect 4:3 -y movie.flv"
Set objShell = Nothing

Ej testat koden, men härifrån ser det bra ut.

Så nu har du massor att exprimentera med.

InferisMedlem sedan sep. 2000670 inlägg
#6

Tack!
Ska kolla igenom vad som händer.
Det som hände innan var just ingenting. Inget felmeddelande heller.

InferisMedlem sedan sep. 2000670 inlägg
#7

Testade att köra från cmd.exe. Då fungerade det. Men inte över asp.
Vilka rättigheter ska sättas vart?
Mappen på målfilen?
cmd.exe?
Mappen där flv-filen ska hamna?

InferisMedlem sedan sep. 2000670 inlägg
#8

Testar denna koden och inget händer. Inget felmeddelande eller någonting.

Dim objShell
Set objShell = CreateObject("WScript.Shell") 
objShell.run "cmd.exe ffmpeg.exe -i c:\upload\goldfish.avi -ar 22050 -ab 32 -f flv -s 320x240 -aspect 4:3 -y C:\konverterat\goldfish.flv"
Set objShell = Nothing
colioneMedlem sedan juni 20014 421 inlägg
#9

IUSR kontot måste ha skrivrättigheter på målmappe och läs rättigheter i upload.
Om du har tillgång till servern kan du ju läga till ett /k efter cmd.exe för att få den att stanna kvar efter utfört uppdrag och se om det dycker upp nåt fel.

Du kan även lägga till >output.txt efter hela kommandot, då sparas svaret i filen output.txt

InferisMedlem sedan sep. 2000670 inlägg
#10

Jag har gett IUSR fulla rättigheter på:
cmd.exe
C:\upload
C:\konverterat

Har tillgång till servern via Remote Desktop Connection.

Funkade inte heller:

Set objShell = CreateObject("WScript.Shell") 
objShell.run "cmd.exe \k c:\ffmpeg.exe -i c:\upload\test.avi -ar 22050 -ab 32 -f flv -s 320x240 -aspect 4:3 -y C:\konverterat\test.flv C:\konverterat\output.txt"
Set objShell = Nothing

Skapas ingen textfil, ser ingen cmd.exe igång.

Ska man ange c:\ffmpeg.exe eller bara ffmpeg.exe?

colioneMedlem sedan juni 20014 421 inlägg
#11

du måste lägga till > innan textfilen

InferisMedlem sedan sep. 2000670 inlägg
#12

Händer ingenting med >output.txt heller

SnakesMedlem sedan okt. 2004392 inlägg
#13

Kopiera det du skrev i cmd.exe (då det funkade) och klistra in det (exakt som det är) istället för texten jag markerade med rött

Set objShell = CreateObject("WScript.Shell") 
objShell.run "cmd.exe [red]Skriv det här[/red]"
Set objShell = Nothing

Kom ihåg att du måste ge IUSR_dittdatornamn (inte bara IUSR) fulla rättigheter. Du kan ta reda på vad ditt datornamn är genom att:
högerklicka på den här datorn > egenskaper > Datornnamn (med XP)
högerklicka på den här datorn > egenskaper > och så står den där (med Vista)

En till sak varför skrev du /k före programmet som ska köras? Jag är inte en cmd expert, men jag undrar vad den har för effekt och om den har det eller om det bara var ett misstag.

InferisMedlem sedan sep. 2000670 inlägg
#14

IUSR_dittdatornamn = Det är väl Internet Guest Account??
Det har fulla rättigheter på:
C:\ffmpeg.exe
C:\WINDOWS\System32\cmd.exe
C:\upload
C:\konverterat

Koden jag kör nu (som fungerar från cmd.exe, men inte över asp)

Set objShell = CreateObject("WScript.Shell") 
objShell.run "cmd.exe c:\ffmpeg.exe -i c:\upload\test.avi -ar 22050 -ab 32 -f flv -s 320x240 -aspect 4:3 -y C:\konverterat\test.flv"
Set objShell = Nothing
InferisMedlem sedan sep. 2000670 inlägg
#15

Fungerar!
Jag tog bort cm.exe

Dim objShell
Set objShell = CreateObject("WScript.Shell") 
objShell.run "c:\ffmpeg.exe -i c:\upload\test.avi -ar 22050 -ab 32 -f flv -s 320x240 -aspect 4:3 -y C:\konverterat\test.flv"
Set objShell = Nothing

Fast när man kollar, så ser det ut som koden var från början?

SnakesMedlem sedan okt. 2004392 inlägg
#16

Okej, perfekt!

Alltså ingen cmd.exe i början, ska komma ihåg det!

131 ms totalt · 3 externa anrop · v20260731065814-full.91fd2ad2
0 ms — hämta forumlista (cache)
0 ms — hämta statistik (cache)
128 ms — hämta tråd, inlägg och bilagor (db)