Jag undrar om någon vet någon .net-komponent som gör om tex AVI till FLV-format vid uppladdningsfillfället... Behöver verkligen detta, vore tacksam för hjälp. Till en början kan jag tala om för dig att det är ganska enkelt att göra en komponent eller kod för att lösa det själv.Konvertering av AVI till FLV-format
Mvh
DanielSv: Konvertering av AVI till FLV-format
Men skulle inte råda dig att göra det on-fly vid uppladdningen. Det tar nämligen en stund att göra det.
Har testat Turbine Video Engine SDK från www.blue-pacific.com. Denna är ypperlig att använda i kodning av filmer till flv. Den är bra på så sätt att den klarar i stort sätt alla förekommande codec på marknaden. Dock är Turbine slö så den bör ligga off line.
Sedan kostar den en slant så har du dem inte så kan jag rekomendera ffmpeg den är snabb och klarar av att konvertera till många format.
Kodexempel till ffmpeg
private static bool encodeFFMpeg(string sourceFilename, string outFilename)
{
if (isEncoding)
{
// already working - let it be
return false;
}
// start encoding
isEncoding = true;
logger.Debug("Now encoding " + sourceFilename);
/// start over
string fileargs = "";
string fileargs2 = "";
try
{
fileargs2 = " -y -i" + " " + sourceFilename + " " + " -bitexact -vcodec mpeg4 -fixaspect -s 320x240 -r 14.985 -b 400 -acodec aac -ac 2 -ar 16000 -ab 32 -f 3gp -muxvb 64 -muxab 32 " + " " + outFilename;
fileargs = "-i" + " " + sourceFilename + " " + " -b 360 -r 25 -s 240x180 -hq -deinterlace -ab 56 -ar 22050 -ac 1 " + " " + outFilename;
Process convmovie = new Process();
logger.Debug(fileargs2);
convmovie.StartInfo.FileName = InstallDirectory + "ffmpeg.exe";
convmovie.StartInfo.Arguments = fileargs2;
convmovie.StartInfo.UseShellExecute = false;
convmovie.StartInfo.CreateNoWindow = false;
convmovie.StartInfo.RedirectStandardOutput = false;
logger.Debug("Startar kodning av " + System.IO.Path.GetFileName(sourceFilename));
convmovie.Start();
convmovie.WaitForExit();
convmovie.Close();
logger.Debug("Kodning av " + System.IO.Path.GetFileName(sourceFilename) + " Färdig");
isEncoding = false;
return true;
}
catch (Exception ex)
{
logger.Debug(fileargs2 + " " + ex.Message);
isEncoding = false;
return false;
}
}
fileargs kodar flv
fileargs2 för PSP och mobiler
Kan tillägga att man kan använda sammam kod till att koda film till PSP och Mobiltelefoner
Det var ett tag sedan jag gjorde koden här men den har gjort en del filmer till min mobil samt filmer till min hemsida.
Jag tror om du skall köra sådan här kod på en webserver så bör du nog ha Full Trust. Samt äga servern. Det tar en del kraft att göra det i vilket fall.
/Patrik Ekman