Ich versuche, einige Videos mit einem iDevice zu reparieren. Die Videos haben eine Rotation in den Metadaten, die nur von Apple und seiner Software verstanden wird, aber niemand sonst. Das zu beheben ist ziemlich einfach, aber ich möchte auch die anderen Metadaten in den Dateien behalten wie die Geolocation.ffmpeg kopiert keine benutzerdefinierten Metadaten
ich ein paar Versionen versucht, alle mit dem gleichen Ergebnis, wie zB:
ffmpeg -i input.mov -vf vflip,hflip -map_metadata 0 -metadata:s:v:0 rotate=0 -acodec copy output.mp4
Diese funktionieren soll, gibt es bereits die korrekte Vorschau von Metadaten:
ffmpeg version 1.1.2 Copyright (c) 2000-2013 the FFmpeg developers
built on Feb 8 2013 23:55:22 with Apple clang version 4.0 (tags/Apple/clang-421.0.60) (based on LLVM 3.1svn)
configuration: --prefix=/usr/local/Cellar/ffmpeg/1.1.2 --enable-shared --enable-pthreads --enable-gpl --enable-version3 --enable-nonfree --enable-hardcoded-tables --enable-avresample --cc=cc --host-cflags= --host-ldflags= --enable-libx264 --enable-libfaac --enable-libmp3lame --enable-libxvid
libavutil 52. 13.100/52. 13.100
libavcodec 54. 86.100/54. 86.100
libavformat 54. 59.106/54. 59.106
libavdevice 54. 3.102/54. 3.102
libavfilter 3. 32.100/3. 32.100
libswscale 2. 1.103/2. 1.103
libswresample 0. 17.102/0. 17.102
libpostproc 52. 2.100/52. 2.100
Input #0, mov,mp4,m4a,3gp,3g2,mj2, from '2013-02-17 00.39.36.mov':
Metadata:
major_brand : qt
minor_version : 0
compatible_brands: qt
creation_time : 2013-02-16 23:39:25
model : iPhone 5
model-deu : iPhone 5
encoder : 6.1
encoder-deu : 6.1
date : 2013-02-17T00:39:25+0100
date-deu : 2013-02-17T00:39:25+0100
location : +48.2683+007.7205+172.710/
location-deu : +48.2683+007.7205+172.710/
make : Apple
make-deu : Apple
Duration: 00:00:09.67, start: 0.000000, bitrate: 16764 kb/s
Stream #0:0(und): Video: h264 (High) (avc1/0x31637661), yuv420p, 1920x1080, 16696 kb/s, 24 fps, 24 tbr, 600 tbn, 1200 tbc
Metadata:
rotate : 180
creation_time : 2013-02-16 23:39:25
handler_name : Core Media Data Handler
Stream #0:1(und): Audio: aac (mp4a/0x6134706D), 44100 Hz, mono, fltp, 61 kb/s
Metadata:
creation_time : 2013-02-16 23:39:25
handler_name : Core Media Data Handler
w:1920 h:1080 pixfmt:yuv420p tb:1/600 fr:24/1 sar:0/1 sws_param:flags=2
[libx264 @ 0x7fc248829a00] using cpu capabilities: MMX2 SSE2Fast SSSE3 FastShuffle SSE4.2 AVX
[libx264 @ 0x7fc248829a00] profile High, level 4.0
[libx264 @ 0x7fc248829a00] 264 - core 125 - H.264/MPEG-4 AVC codec - Copyleft 2003-2012 - http://www.videolan.org/x264.html - options: cabac=1 ref=3 deblock=1:0:0 analyse=0x3:0x113 me=hex subme=7 psy=1 psy_rd=1.00:0.00 mixed_ref=1 me_range=16 chroma_me=1 trellis=1 8x8dct=1 cqm=0 deadzone=21,11 fast_pskip=1 chroma_qp_offset=-2 threads=6 lookahead_threads=1 sliced_threads=0 nr=0 decimate=1 interlaced=0 bluray_compat=0 constrained_intra=0 bframes=3 b_pyramid=2 b_adapt=1 b_bias=0 direct=1 weightb=1 open_gop=0 weightp=2 keyint=250 keyint_min=24 scenecut=40 intra_refresh=0 rc_lookahead=40 rc=crf mbtree=1 crf=23.0 qcomp=0.60 qpmin=0 qpmax=69 qpstep=4 ip_ratio=1.40 aq=1:1.00
Output #0, mp4, to 'output.mp4':
Metadata:
major_brand : qt
minor_version : 0
compatible_brands: qt
creation_time : 2013-02-16 23:39:25
model : iPhone 5
model-deu : iPhone 5
encoder-deu : 6.1
date : 2013-02-17T00:39:25+0100
date-deu : 2013-02-17T00:39:25+0100
location : +48.2683+007.7205+172.710/
location-deu : +48.2683+007.7205+172.710/
make : Apple
make-deu : Apple
encoder : Lavf54.59.106
Stream #0:0(und): Video: h264 ([33][0][0][0]/0x0021), yuv420p, 1920x1080, q=-1--1, 12288 tbn, 24 tbc
Metadata:
handler_name : Core Media Data Handler
creation_time : 2013-02-16 23:39:25
rotate : 0
Stream #0:1(und): Audio: aac ([64][0][0][0]/0x0040), 44100 Hz, mono, 61 kb/s
Metadata:
creation_time : 2013-02-16 23:39:25
handler_name : Core Media Data Handler
Stream mapping:
Stream #0:0 -> #0:0 (h264 -> libx264)
Stream #0:1 -> #0:1 (copy)
Aber die resultierenden Datei einige dieser Metadaten-Tags hält nur:
ffmpeg -i output.mp4
zeigt:
fmpeg version 1.1.2 Copyright (c) 2000-2013 the FFmpeg developers
built on Feb 8 2013 23:55:22 with Apple clang version 4.0 (tags/Apple/clang-421.0.60) (based on LLVM 3.1svn)
configuration: --prefix=/usr/local/Cellar/ffmpeg/1.1.2 --enable-shared --enable-pthreads - -enable-gpl --enable-version3 --enable-nonfree --enable-hardcoded-tables --enable-avresample --cc=cc --host-cflags= --host-ldflags= --enable-libx264 --enable-libfaac --enable-libmp3lame --enable-libxvid
libavutil 52. 13.100/52. 13.100
libavcodec 54. 86.100/54. 86.100
libavformat 54. 59.106/54. 59.106
libavdevice 54. 3.102/54. 3.102
libavfilter 3. 32.100/3. 32.100
libswscale 2. 1.103/2. 1.103
libswresample 0. 17.102/0. 17.102
libpostproc 52. 2.100/52. 2.100
Input #0, mov,mp4,m4a,3gp,3g2,mj2, from 'test.mp4':
Metadata:
major_brand : isom
minor_version : 512
compatible_brands: isomiso2mp41
creation_time : 2013-02-16 23:39:25
date : 2013-02-17T00:39:25+0100
encoder : Lavf54.59.106
Duration: 00:00:09.67, start: 0.000000, bitrate: 3286 kb/s
Stream #0:0(und): Video: mpeg4 (Simple Profile) (mp4v/0x7634706D), yuv420p, 1920x1080 [SAR 1:1 DAR 16:9], 3219 kb/s, 24 fps, 24 tbr, 12288 tbn, 24 tbc
Metadata:
creation_time : 2013-02-16 23:39:25
handler_name : VideoHandler
Stream #0:1(und): Audio: aac (mp4a/0x6134706D), 44100 Hz, mono, fltp, 61 kb/s
Metadata:
creation_time : 2013-02-16 23:39:25
handler_name : SoundHandler
Ich versuchte auch in der Folge ohne Änderung mit
-metadata:g location=+48.2683+007.7205+172.710/
von Hand den einen Tag Ich habe Interesse hinzuzufügen.
Ausgabe als .mov ändert nichts, auch nicht.
Gibt es einen Trick, um nicht standardmäßige Metadaten hinzuzufügen? Wie bekomme ich den Standort zurück?
Vielen Dank im Voraus an alle, die einen Einblick geben können.
Sie die ffmpeg Konsolenausgabe getrimmt, die potentiell nützliche Informationen ausschneidet. – LordNeckbeard
Ich habe jetzt alle Ausgaben hinzugefügt, hoffentlich hilft es, das Problem zu finden – e110c0