Führen Sie ffmpeg aus, ohne Konfigurationsinformationen auszugeben?

Ich bin aufrufen ffmpeg mit Unterprozess.Popenund versuchen zu erfassen, die stderr Ausgabe und schreiben Sie es auf logging.

args = ['ffmpeg', '-i', path]
if start:
    args += ['-ss', start]
if end:
    args += ['-t', end]
args += [
    '-vcodec', 'copy',
    '-acodec', 'copy',
    '-scodec', 'copy',
    '-f', 'mpegts',
    '-y', '/dev/stdout']
self.child = subprocess.Popen(
    args,
    stdin=open(os.devnull, 'rb'),
    stdout=subprocess.PIPE,
    stderr=subprocess.PIPE)

ffmpeg erzeugt eine Menge von Konfigurations-Informationen, wie den folgenden:

FFmpeg version 0.6.2-4:0.6.2-1ubuntu1,
Copyright (c) 2000-2010 die Libav
Entwickler gebaut am Mar 22 2011
15:55:04 mit gcc 4.5.2
Konfiguration:
--extra-version=4:0.6.2-1ubuntu1 --prefix=/usr --enable-avfilter --enable-avfilter-lavf --enable-vdpau --enable-bzlib --enable-libgsm --enable-libschroedinger --enable-libspeex --enable-libtheora --enable-libvorbis --enable-pthreads --enable-zlib --enable-libvpx --disable-Strippen --enable-runtime-cpudetect --enable-vaapi --enable-gpl --enable-postproc --enable-swscale --enable-x11grab --enable-libdc1394 --enable-shared --disable-statische WARNUNG: library-Konfiguration
mismatch libavutil-Konfiguration:
--extra-version=4:0.6.2-1ubuntu2 --prefix=/usr --enable-avfilter --enable-avfilter-lavf --enable-vdpau --enable-bzlib --enable-libdirac --enable-libgsm --enable-libopenjpeg --enable-libschroedinger --enable-libspeex --enable-libtheora --enable-libvorbis --enable-pthreads --enable-zlib --enable-libvpx --disable-Strippen --enable-runtime-cpudetect --enable-vaapi --enable-libopenjpeg --enable-gpl --enable-postproc --enable-swscale --enable-x11grab --enable-libfaad --enable-libdirac --enable-libfaad --enable-libmp3lame --enable-librtmp --enable-libx264 --enable-libxvid --enable-libdc1394 --enable-shared --disable-static libavcodec-Konfiguration:
--extra-version=4:0.6.2-1ubuntu2 --prefix=/usr --enable-avfilter --enable-avfilter-lavf --enable-vdpau --enable-bzlib --enable-libdirac --enable-libgsm --enable-libopenjpeg --enable-libschroedinger --enable-libspeex --enable-libtheora --enable-libvorbis --enable-pthreads --enable-zlib --enable-libvpx --disable-Strippen --enable-runtime-cpudetect --enable-vaapi --enable-libopenjpeg --enable-gpl --enable-postproc --enable-swscale --enable-x11grab --enable-libfaad --enable-libdirac --enable-libfaad --enable-libmp3lame --enable-librtmp --enable-libx264 --enable-libxvid --enable-libdc1394 --enable-shared --disable-static libavutil 50.15. 1 /50.15. 1
libavcodec 52.72. 2 /52.72. 2
libavformat 52.64. 2 /52.64. 2
libavdevice 52. 2. 0 /52. 2. 0
libavfilter 1.19. 0 /1.19. 0
libswscale 0.11. 0 /0.11. 0
libpostproc 51. 2. 0 /51. 2. 0

Bevor schließlich die Ausgabe der Sachen, die ich möchte zu Protokoll:

Scheint stream 0 codec frame rate
unterscheidet sich von container frame rate:
47.95 (66893/1395) -> 23.98 (66893/2790) mindestens eine Ausgabe-Datei
muss angegeben werden,

Ist es eine option, um zu verhindern, dass diese hohe Leistung? Sollte mache ich es anders???

InformationsquelleAutor der Frage Matt Joiner | 2011-04-08

Schreibe einen Kommentar