Beim mir tritt beim Schneiden von AVCHD-Files meiner Videokamera auf meinem 2.4GHz Quadcore immer noch starkes Ruckeln bei der Vorschau auf, weshalb das Schneiden fast nicht möglich ist.
Durch Konvertierung des AVCHD-Files in ein 720p MP4-AVI File wird das Video praktisch ohne Verlust in ein verwendbares Format umgewandelt wo kein Ruckeln mehr auftritt.
Die Umwandlung mache ich auf einem Ubuntu 10.04LTS mit:
Durch Konvertierung des AVCHD-Files in ein 720p MP4-AVI File wird das Video praktisch ohne Verlust in ein verwendbares Format umgewandelt wo kein Ruckeln mehr auftritt.
Die Umwandlung mache ich auf einem Ubuntu 10.04LTS mit:
ffmpeg -i quelldatei.MTS -r 25 -s hd720 -b 5000k -acodec copy -vcodec mpeg4 zieldatei.avi
Um die Sache zu Vereinfachen habe ich den Aufruf in einem Perl-Scripts verpackt, welches alle angegebenen MTS-Dateien konvertiert und leicht mit find automatisiert werden kann!
#!/usr/bin/perl
# kopiere das scripts nach /usr/bin und mach es ausführbar
# sudo cp mtsconv.pl /usr/bin/mtsconv.pl
# sudo chmod 755 /usr/bin/mtsconv.pl
# am einfachsten zu kombinieren mit find
# find . -name "*.MTS" -exec mtsconv.pl "{}" ";"
use strict;
my @dateiliste;
my $loeschen = 0;
sub help
{
print "
***************************************************************
Script wandelt alle angegebenen .MTS-Dateien in .avi Dateien um
damit bei Openshot beim Schneiden kein Ruckeln auftritt!
Aufruf: mtsconv.pl [parameter] Dateiname [Dateiname ...]
Parameter:
-d Quelldateien nach dem Konvertieren löschen
am einfachsten zu kombinieren mit find:
find . -name \"*.MTS\" -exec mtsconv.pl \"{}\" \";\"
**************************************************************
";
exit;
}
if ($#ARGV<0) { help(); }
foreach(@ARGV)
{
if ($_ eq '-d')
{
$loeschen=1;
} elsif ($_ eq "-h" || $_ eq "--help")
{
help();
} elsif ($_ =~ m/^-.*/)
{
print "Parameter $_ ist nicht definiert!\n";
exit;
} else {
push(@dateiliste,$_);
}
}
if ($#dateiliste<0) { help(); }
foreach(@dateiliste)
{
if (($_ =~ m/^(.*)\.[Mm][Tt][Ss]/) && (-f $_))
{
my $file = $1;
if (-f $file.'.avi') { `rm '$file.avi'`;}
my $bef = "ffmpeg -i '$_' -r 25 -s hd720 -b 5000k -acodec copy -vcodec mpeg4 '$file.avi'";
print "$bef\n";
`$bef`;
$bef = "touch -r '$_' '$file.avi'";
print "$bef\n";
`$bef`;
if ($loeschen) { `rm $_`; }
}
}