Guten Tag alle,
Ich wollte einen kleinen Converter erstellen, der es mir erlaubt Videos zu .mp3 zu Konvertieren. Das funktioniert auch schon alles ziehmlich gut nur habe ich ein Problem mit der Fortschrittsanzeige. Ich lese den Fortschritt aus dem ErrorOutput des Prozesses aus, nur weiß ich nicht so ganz, wie ich das tun soll.
Hier mal mein Code:
Spoiler anzeigen
FFmpeg version SVN-r18709, Copyright (c) 2000-2009 Fabrice Bellard, et al.
configuration: --enable-memalign-hack --prefix=/mingw --cross-prefix=i686-mingw32- --cc=ccache-i686-mingw32-gcc --target-os=mingw32 --arch=i686 --cpu=i686 --enable-avisynth --enable-gpl --enable-zlib --enable-bzlib --enable-libgsm --enable-libfaac --enable-libfaad --enable-pthreads --enable-libvorbis --enable-libtheora --enable-libspeex --enable-libmp3lame --enable-libopenjpeg --enable-libxvid --enable-libschroedinger --enable-libx264
libavutil 50. 3. 0 / 50. 3. 0
libavcodec 52.27. 0 / 52.27. 0
libavformat 52.32. 0 / 52.32. 0
libavdevice 52. 2. 0 / 52. 2. 0
libswscale 0. 7. 1 / 0. 7. 1
built on Apr 28 2009 04:04:42, gcc: 4.2.4
Seems stream 0 codec frame rate differs from container frame rate: 50.00 (50/1) -> 25.00 (25/1)
Input #0, mov,mp4,m4a,3gp,3g2,mj2, from 'C:\Users\Mike\Videos\Jessie J - Price Tag (feat. B.o.B).mp4':
Duration: 00:04:06.32, start: 0.000000, bitrate: 455 kb/s
Stream #0.0(und): Video: h264, yuv420p, 640x360 [PAR 1:1 DAR 16:9], 25 tbr, 25 tbn, 50 tbc
Stream #0.1(und): Audio: aac, 44100 Hz, stereo, s16
Output #0, mp4, to 'C:\Users\Mike\Desktop\test.mp4':
Stream #0.0(und): Video: mpeg4, yuv420p, 1280x720 [PAR 1:1 DAR 16:9], q=2-31, 1000 kb/s, 99 tbn, 99 tbc
Stream #0.1(und): Audio: libfaac, 48000 Hz, stereo, s16, 128 kb/s
Stream mapping:
Stream #0.0 -> #0.0
Stream #0.1 -> #0.1
Press [q] to stop encoding
frame= 39 fps= 0 q=31.0 size= 226kB time=1.15 bitrate=1608.7kbits/s
frame= 89 fps= 88 q=12.0 size= 368kB time=2.99 bitrate=1009.6kbits/s
frame= 138 fps= 91 q=7.4 size= 530kB time=5.08 bitrate= 855.8kbits/s
Dank an NscMike für die Info. Nun meine Frage, wie kann ich jetzt aus dem Punkt Duration und time die verbleibende "Value" berechnen, um sie in einer Progressbar anzeigen zu lassen ?
Danke im Voraus
Gruß OneWorld
Ich wollte einen kleinen Converter erstellen, der es mir erlaubt Videos zu .mp3 zu Konvertieren. Das funktioniert auch schon alles ziehmlich gut nur habe ich ein Problem mit der Fortschrittsanzeige. Ich lese den Fortschritt aus dem ErrorOutput des Prozesses aus, nur weiß ich nicht so ganz, wie ich das tun soll.
Hier mal mein Code:
VB.NET-Quellcode
- Private Withevents FFMPEG as new Process
- Private Sub wc_DownloadFileCompleted(sender As Object, e As System.ComponentModel.AsyncCompletedEventArgs) Handles wc.DownloadFileCompleted
- With FFMPEG
- .StartInfo.WindowStyle = ProcessWindowStyle.Hidden
- .StartInfo.FileName = "Content\ffmpeg.exe"
- .StartInfo.UseShellExecute = False
- .StartInfo.CreateNoWindow = True
- .StartInfo.RedirectStandardError = True
- .StartInfo.RedirectStandardOutput = True
- Dim Input As String = dwnFile
- Dim Output As String = "C:\Users\....\Desktop\" & yts.VideoTitle.ToString
- .StartInfo.Arguments = ("-i " & Chr(34) & Input & Chr(34) & " -ab 160000 -acodec libmp3lame " & Chr(34) & Output & ".mp3" & Chr(34))
- .Start()
- .BeginOutputReadLine()
- Do Until .HasExited
- Loop
- End With
- Try
- IO.File.Delete(dwnFile)
- Catch ex As Exception
- MsgBox(ex.ToString())
- End Try
- End Sub
- Private Sub FFMPEG_ErrorDataReceived(sender As Object, e As DataReceivedEventArgs) Handles FFMPEG.ErrorDataReceived
- ' Und hier wird der ErrorOutput ausgegeben. Nur der sieht ungefähr so aus: (Siehe unten)
- End Sub
FFmpeg version SVN-r18709, Copyright (c) 2000-2009 Fabrice Bellard, et al.
configuration: --enable-memalign-hack --prefix=/mingw --cross-prefix=i686-mingw32- --cc=ccache-i686-mingw32-gcc --target-os=mingw32 --arch=i686 --cpu=i686 --enable-avisynth --enable-gpl --enable-zlib --enable-bzlib --enable-libgsm --enable-libfaac --enable-libfaad --enable-pthreads --enable-libvorbis --enable-libtheora --enable-libspeex --enable-libmp3lame --enable-libopenjpeg --enable-libxvid --enable-libschroedinger --enable-libx264
libavutil 50. 3. 0 / 50. 3. 0
libavcodec 52.27. 0 / 52.27. 0
libavformat 52.32. 0 / 52.32. 0
libavdevice 52. 2. 0 / 52. 2. 0
libswscale 0. 7. 1 / 0. 7. 1
built on Apr 28 2009 04:04:42, gcc: 4.2.4
Seems stream 0 codec frame rate differs from container frame rate: 50.00 (50/1) -> 25.00 (25/1)
Input #0, mov,mp4,m4a,3gp,3g2,mj2, from 'C:\Users\Mike\Videos\Jessie J - Price Tag (feat. B.o.B).mp4':
Duration: 00:04:06.32, start: 0.000000, bitrate: 455 kb/s
Stream #0.0(und): Video: h264, yuv420p, 640x360 [PAR 1:1 DAR 16:9], 25 tbr, 25 tbn, 50 tbc
Stream #0.1(und): Audio: aac, 44100 Hz, stereo, s16
Output #0, mp4, to 'C:\Users\Mike\Desktop\test.mp4':
Stream #0.0(und): Video: mpeg4, yuv420p, 1280x720 [PAR 1:1 DAR 16:9], q=2-31, 1000 kb/s, 99 tbn, 99 tbc
Stream #0.1(und): Audio: libfaac, 48000 Hz, stereo, s16, 128 kb/s
Stream mapping:
Stream #0.0 -> #0.0
Stream #0.1 -> #0.1
Press [q] to stop encoding
frame= 39 fps= 0 q=31.0 size= 226kB time=1.15 bitrate=1608.7kbits/s
frame= 89 fps= 88 q=12.0 size= 368kB time=2.99 bitrate=1009.6kbits/s
frame= 138 fps= 91 q=7.4 size= 530kB time=5.08 bitrate= 855.8kbits/s
Dank an NscMike für die Info. Nun meine Frage, wie kann ich jetzt aus dem Punkt Duration und time die verbleibende "Value" berechnen, um sie in einer Progressbar anzeigen zu lassen ?
Danke im Voraus
Gruß OneWorld
Youtube Info Library 2013 jetzt im Showroom.