ffmpeg 3pg => flv bzw. mp4 => flv

Einklappen
X
 
  • Filter
  • Zeit
  • Anzeigen
Alles löschen
neue Beiträge

  • ffmpeg 3pg => flv bzw. mp4 => flv

    Hallo Leute,

    Ich hoffe es gibt hier die ffmpeg Profis.
    Ich habe auf einen Linux Suse 10.1 ffmpeg seit längeren erfolgreich laufen.
    Videos welche hochgeladen werden, werden perfekt ins flv konvertiert.

    Da die Zeit nun mal nicht stehen bleibt, muß ich nun auch mp4 und 3pg Dateien ins flv konvertieren können.

    Und hier fängt das Problem an.
    Aus beiden Formaten kann ich ein JPG Bild extrahieren - problemlos.
    Ins flv Format schreit er mir mit der Fehlermeldung "unsupported...." auf
    PHP-Code:
    FFmpeg version SVN-r13645Copyright (c2000-2008 Fabrice Bellardet al.
    configuration: --enable-memalign-hack 
                    
    --enable-liba52 
                    
    --enable-libmp3lame 
                    
    --extra-cflags=-I/local/include 
                    --
    extra-ldflags=-L/local/lib 
                    
    --enable-libfaac 
                    
    --enable-gpl 
                    
    --enable-shared 
                    
    --enable-libxvid 
                    
    --enable-libx264
    libavutil version
    49.7.0
    libavcodec version
    51.57.1
    libavformat version
    52.14.0
    libavdevice version
    52.0.0
    built on Jun  3 2008 18
    :27:59gcc4.1.0 (SUSE Linux)
    Input #0, mov,mp4,m4a,3gp,3g2,mj2, from '/srv/www/web1/html/_dagi/reiten.3gp':
    Duration00:00:18.80start0.000000bitrate143 kb/s
    Stream 
    #0.0(jpn): Video: h263, yuv420p, 176x144 [PAR 12:11 DAR 4:3], 29.97 tb(r)
    Stream #0.1(jpn): Audio: samr / 0x726D6173, 8000 Hz, mono
    Output #0, flv, to '/srv/www/web1/html/_dagi/test.flv':
    Stream #0.0(jpn): Video: flv, yuv420p, 176x144 [PAR 12:11 DAR 4:3], q=2-31, 200 kb/s, 29.97 tb(c)
    Stream #0.1(jpn): Audio: libmp3lame, 22050 Hz, mono, 64 kb/s
    Stream mapping:
    Stream #0.0 -> #0.0
    Stream #0.1 -> #0.1
    Unsupported codec (id=73728) for input stream #0.1 
    Konvertieren wollte ich hiermit:
    PHP-Code:
    exec("ffmpeg -i ".$DOCROOT."_dagi/reiten.3gp -ar 22050 -aq 28 -sameq -f flv 
    "
    .$DOCROOT."_dagi/test.flv > ".$DOCROOT."_dagi/test_video.txt 2>&1"); 
    Das Bild bekomme ich hierrüber:
    PHP-Code:
    exec("ffmpeg -i ".$DOCROOT."_dagi/reiten.3gp -t 0.001 -ss 10 -vframes 1 -f mjpeg -s 124x94 
    "
    .$DOCROOT."_dagi/test.jpg > ".$DOCROOT."_dagi/test_bild.txt 2>&1"); 
    Ich hoffe es kann mir jemand helfen, warum ich weder mp4 noch 3pg Dateien ins FLV konvertieren kann.
    Bilder extrahieren stellt wie gesagt kein Problem dar.


    EDIT:
    Hab jetzt noch ein paar Zeilenumbrüche reingetan, damits nicht zu breit wird.
    Zuletzt geändert von web4free; 18.06.2008, 10:18.
    bidgo - Benzin im Blut
    Wir wollen Dich und Deine Karre
    Videoblog & Bilderblog zu verschiedenen Bereichen

  • #2
    da ich selber unter linux windows programme nutze, könnte dir dieses prog vielleicht helfen:
    http://www.softpedia.com/get/Multime...Splitter.shtml

    soweit ich weiß werden weder mp4 noch 3pg bei deinem prog unterstützt. kann mich aber auch täuschen
    Signatur-Text ...

    Kommentar


    • #3
      Hi,

      Original geschrieben von dani_o
      da ich selber unter linux windows programme nutze, könnte dir dieses prog vielleicht helfen:
      http://www.softpedia.com/get/Multime...Splitter.shtml

      soweit ich weiß werden weder mp4 noch 3pg bei deinem prog unterstützt. kann mich aber auch täuschen
      Vielen Dank für den Link.
      Ich habe einen reinen Webserver und kann so leider dieses Programm nicht nutzen.
      Bei mir im Office ha ich eh einen "Alles-in-Alles-Konverter" der super funzt.
      Nur brauch ich das am Webserver zumindest für mp4...
      bidgo - Benzin im Blut
      Wir wollen Dich und Deine Karre
      Videoblog & Bilderblog zu verschiedenen Bereichen

      Kommentar


      • #4
        http://wiki.soslug.org/wiki/3gp_to_flv könnte ich da noch für 3gp empfehlen unter linux aber für mp4 ist mir ehrlich gesagt unter linux nix bekannt.
        Signatur-Text ...

        Kommentar


        • #5
          Probiere mal:

          ffmpeg -i movie.mp4 -ab 128 -ar 44100 -b 350000 -r 25 -s 440x330 movie.flv

          oder

          ffmpeg -i movie.mp4 -ar 22050 -f flv -y movie.flv

          Kommentar


          • #6
            Was ergibt 'ffmpeg -formats | grep 3gp'?

            Kommentar


            • #7
              Hi,

              Original geschrieben von asp2php
              Probiere mal:

              ffmpeg -i movie.mp4 -ab 128 -ar 44100 -b 350000 -r 25 -s 440x330 movie.flv

              oder

              ffmpeg -i movie.mp4 -ar 22050 -f flv -y movie.flv
              Bringt mir beide male das selbe "unsupported.." G'schichtl.

              Original geschrieben von onemorenerd
              Was ergibt 'ffmpeg -formats | grep 3gp'?
              Folgende Ausgabe habe ich erhalten:
              PHP-Code:
              ffmpeg -formats grep 3gp

              FFmpeg version SVN
              -r13645Copyright (c2000-2008 Fabrice Bellardet al.
              configuration: --enable-memalign-hack 
                              
              --enable-liba52 
                              
              --enable-libmp3lame 
                              
              --extra-cflags=-I/local/include 
                              --
              extra-ldflags=-L/local/lib 
                              
              --enable-libfaac 
                              
              --enable-gpl 
                              
              --enable-shared 
                              
              --enable-libxvid 
                              
              --enable-libx264
              libavutil version
              49.7.0
              libavcodec version
              51.57.1
              libavformat version
              52.14.0
              libavdevice version
              52.0.0
              built on Jun  3 2008 18
              :27:59gcc4.1.0 (SUSE Linux)
              E 3g2             3gp2 format
              E 3gp             3gp format
              DE amr             3gpp amr file format
              D  mov
              ,mp4,m4a,3gp,3g2,mj2 QuickTime/MPEG4/Motion JPEG 2000 format 
              ich hab das dann noch mit mp4 auch probiert und folgendes erhalten:
              PHP-Code:
              ffmpeg -formats grep mp4

              FFmpeg version SVN
              -r13645Copyright (c2000-2008 Fabrice Bellardet al.
              configuration: --enable-memalign-hack 
                              
              --enable-liba52 
                              
              --enable-libmp3lame 
                              
              --extra-cflags=-I/local/include 
                              --
              extra-ldflags=-L/local/lib 
                              
              --enable-libfaac 
                              
              --enable-gpl 
                              
              --enable-shared 
                              
              --enable-libxvid 
                              
              --enable-libx264
              libavutil version
              49.7.0
              libavcodec version
              51.57.1
              libavformat version
              52.14.0
              libavdevice version
              52.0.0
              built on Jun  3 2008 18
              :27:59gcc4.1.0 (SUSE Linux)
              E ipod            iPod H.264 mp4 format
              D  mov
              ,mp4,m4a,3gp,3g2,mj2 QuickTime/MPEG4/Motion JPEG 2000 format
              E mp4             mp4 format
              E psp             psp mp4 format
              text2movsub remove_extra noise mov2textsub 
              mp3decomp mp3comp mjpegadump imxdump h264_mp4toannexb dump_extra 
              um Ehrlich zu sein - ich bin genau so schlau wie vorher
              Zuletzt geändert von web4free; 18.06.2008, 10:18.
              bidgo - Benzin im Blut
              Wir wollen Dich und Deine Karre
              Videoblog & Bilderblog zu verschiedenen Bereichen

              Kommentar


              • #8
                Installiere AMR und dann baue ffmpeg nochmal mit --enable-
                libamr-nb --enable-libamr-wb --enable-libfaad --enable-nonfree zusätzlich zu den Flags, die du jetzt schon benutzt hast.

                Kommentar


                • #9
                  Original geschrieben von onemorenerd
                  Installiere AMR und dann baue ffmpeg nochmal mit --enable-
                  libamr-nb --enable-libamr-wb --enable-libfaad --enable-nonfree zusätzlich zu den Flags, die du jetzt schon benutzt hast.
                  Na JUCHUUU
                  Nachdem mir beim Combillieren noch ein Fehler aufgetreten ist bzg. FAAD hab ich über YAST mal die DEVEL dazuinstalliert - und schauschau....

                  Danke für diesen Hinweis!
                  3gp und mp4 werden nun erfolgreich konvertiert.

                  Weil wir gerade so schön in der Profirunde sind.
                  Hat von euch vielleicht noch jemand eine Ahnung wie ich bei einem Video herausfinden kann ob es 4:3 oder 16:9 formatig ist?

                  Beim 3gp File hätte ich in der Augabe folgende Info mit stehen:
                  PHP-Code:
                  Stream #0.0(jpn): Video: h263, yuv420p, 176x144 [PAR 12:11 DAR 4:3], 29.97 tb(r) 
                  Hier kann ich das 4:3 Format erkennen und hoffe, dass es immer dabei stehen würde, denn damit kann ich arbeiten.

                  Beim mp4 und wmv hab ich das leider nicht dabei stehen.
                  Was ich gerade probiere ist folgender Ansatz der aber ziehmlich lange braucht um abgearbeitet zu sein:
                  PHP-Code:
                  ffmpeg -i test.wmv -ar 22050 -aq 28 -aspect 4:-sameq -f flv test.flv 
                  Irgendwer eine Idee??

                  EDIT:
                  Das langsame ist jetzt wieder weg! War wahrscheinlich der Server grad mit anderen "deftigen" Dingen beschäftigt.
                  Zuletzt geändert von web4free; 18.06.2008, 13:14.
                  bidgo - Benzin im Blut
                  Wir wollen Dich und Deine Karre
                  Videoblog & Bilderblog zu verschiedenen Bereichen

                  Kommentar


                  • #10
                    Alternativ kannst du das Seitenverhältnis auch ermitteln, indem du erstmal ein einzelnes Bild aus dem Video ziehst und mit getimagesize() dessen Größe ermittelst.
                    Ich habe bisher immer ffmpeg über die ffmpeg-php Extension benutzt und da kann man einfach sowas machen
                    PHP-Code:
                    $movie = new ffmpeg_movie($filename);
                    $frame $movie->getFrame(1);
                    $image $frame->toGDImage();
                    echo 
                    'Ratio is ' imagesx($image) . ':' imagesy($image); 
                    Das Seitenverhältnis von $image entspricht immer dem der Videoquelle. Vermutlich funktioniert es analog über die Kommandozeile - einfach mal ohne "-s WxH" ein Bild rausziehen und überprüfen. Wenn ich Recht habe, wäre dieser Weg vielleicht eleganter, da du ja offenbar ohnehin ein Thumbnail erzeugen willst. Das könntest du dann in einem Rutsch machen. Nur eben so, dass du ffmpeg keine Thumbnailgröße vorgibst, das erzeugte Bild liefert dir das Seitenverhältnis des Videos und verkleinern kannst du es dann mit GD/Imagemagick.

                    Kommentar


                    • #11
                      Das ist ein guter Ansatzpunkt.
                      Mit der PHP-Version hatte ich es einmal probiert ist mir aber immer mit einem Out Of Memory auf Grundeis gegangen.
                      Seit dem lasse ich das Vorschaubild sowie das Video über die Konsole machen - eigendlich über den exec(); Befehl - und das generierte TXT-File gibt mir dann auch die Daten durch welche ich brauche.

                      Sicher mit der PHP Version, kann ich ein Zufallsbild herauskitzeln und so bin ich auf die Sekunden angewiesen.

                      Ich habs jetzt aber mal so gelöst mit der bereits genannten Variante "-aspect 4:3" und hab den Flashplayer nochmals ganz genau ausgerechnete Höhe und Breite gegeben, damit das Video wirklich 4:3 angezeigt wird und nicht verzerrt wird, was bisher leider der Fall war.

                      Eigendlich bin ich mit dem Ergebnis sehr zufrieden und hoffe, dass ich somit alle gängigen Videoformate nun ins FLV konvertieren kann.

                      Was ich schon mit dem FFMPEG herumgeeiert habe....

                      Vielen Dank nochmals für diese raschen Hilfetipps.
                      bidgo - Benzin im Blut
                      Wir wollen Dich und Deine Karre
                      Videoblog & Bilderblog zu verschiedenen Bereichen

                      Kommentar

                      Lädt...
                      X