2013-07-26 5 views
1

안녕하세요. 저는 MP4 비디오를 가지고 있으므로 나머지 메타 데이터는 변경하지 않고 ffmepg를 사용하여 creation_time을 변경하고 싶습니다. 하지만 몇 가지 문제에 직면하고 있습니다 ..ffmpeg 메타 데이터 편집 major_brand

major_brand 이상이 변경되었습니다. 나는 그것들을 동일하게하고 싶다. 내가 실행할 때,

Input #0, mov,mp4,m4a,3gp,3g2,mj2, from '6.mp4': 
    Metadata: 
    major_brand  : mp42 
    minor_version : 1 
    compatible_brands: mp41mp42isom 
    creation_time : 2013-03-23 16:25:53 
    Duration: 00:00:06.55, start: 0.000000, bitrate: 919 kb/s 
    Stream #0:0(und): Video: h264 (Main) (avc1/0x31637661), yuv420p, 480x480, 
862 kb/s, 29.97 fps, 29.97 tbr, 600 tbn, 1200 tbc 
    Metadata: 
     creation_time : 2013-03-23 16:25:53 
     handler_name : Core Media Video 
    Stream #0:1(und): Audio: aac (mp4a/0x6134706D), 44100 Hz, mono, fltp, 62 k 
b/s 
    Metadata: 
     creation_time : 2013-03-23 16:25:53 
     handler_name : Core Media Audio 

내가 비디오의 CREATION_TIME을 변경하려면 : 내가 ffprobe.exe에 넣어 경우이 내가 볼 것입니다

ffmpeg.exe -i 6.mp4 - 메타 데이터 CREATION_TIME = "2013년 6월 22일 15시 0분 0초"-acodec 사본 -vcodec 복사 output.mp4

내가 얻을 :

Output #0, mp4, to 'output.mp4': 
    Metadata: 
    major_brand  : mp42 
    minor_version : 1 
    compatible_brands: mp41mp42isom 
    creation_time : 2013-06-22 15:00:00 
    encoder   : Lavf55.12.102 
    Stream #0:0(und): Video: h264 ([33][0][0][0]/0x0021), yuv420p, 480x480, q= 
2-31, 862 kb/s, 29.97 fps, 19200 tbn, 600 tbc 
    Metadata: 
     creation_time : 2013-03-23 16:25:53 
     handler_name : Core Media Video 
    Stream #0:1(und): Audio: aac ([64][0][0][0]/0x0040), 44100 Hz, mono, 62 kb 
/s 
    Metadata: 
     creation_time : 2013-03-23 16:25:53 
     handler_name : Core Media Audio 
Stream mapping: 
    Stream #0:0 -> #0:0 (copy) 
    Stream #0:1 -> #0:1 (copy) 
Press [q] to stop, [?] for help 
frame= 194 fps=0.0 q=-1.0 Lsize=  738kB time=00:00:06.61 bitrate= 913.9kbits 
/s 

출력에 따르면 내가 "-acodec copy -vcodec copy"를 선택했기 때문에 모든 것이 동일하게 유지되어야합니다. 그러나 새로 생성 된 .mp4 파일에 대해 ffprobe를 실행할 때. 출력은 다음과 같습니다.

Input #0, mov,mp4,m4a,3gp,3g2,mj2, from 'output.mp4': 
    Metadata: 
    major_brand  : isom 
    minor_version : 512 
    compatible_brands: isomiso2avc1mp41 
    creation_time : 2013-06-22 15:00:00 
    encoder   : Lavf55.12.102 
    Duration: 00:00:06.62, start: 0.000000, bitrate: 913 kb/s 
    Stream #0:0(und): Video: h264 (Main) (avc1/0x31637661), yuv420p, 480x480, 
862 kb/s, 29.97 fps, 30 tbr, 19200 tbn, 38400 tbc 
    Metadata: 
     creation_time : 2013-06-22 15:00:00 
     handler_name : VideoHandler 
    Stream #0:1(und): Audio: aac (mp4a/0x6134706D), 44100 Hz, mono, fltp, 62 k 
b/s 
    Metadata: 
     creation_time : 2013-06-22 15:00:00 
     handler_name : SoundHandler 

모든 것이 동일하게 유지 되더라도 모든 것이 바뀌 었음을 알 수 있습니다.

도와주세요. 감사!

+0

작성 날짜 만 변경하는 도구를 찾을 수 있는지 확실하지 않습니다. 귀하의 경우에는 스트림 사본이 정상적으로 작동하지만 muxer가 원본 파일과 정확하게 동일한 마커를 사용하지 않는 것입니다. 그러나 Creation Date는 쉽게 찾을 수 있으며 간단한 프로그램으로 전체 업데이트가 가능하다고 생각합니다 ... – alexbuisson

답변

2

해결책은 파이썬 스크립트를 사용하여 존재합니다.

  1. 3.3.2 GitHub

movmd.py에서

  • 다운로드 movmd.py (가 2.7 시리즈의 마지막으로 테스트하지 작동 할 수 있습니다) 설치 파이썬은 변경할 수 있습니다 mp4 in-place의 모든 날짜 (정말 빠름)

    python movmd.py mp4File.mp4 "2013-07-29 00:00:00" 
    

    추출 된 mp4 inf ffmpeg와 o,

    ffmpeg version N-53818-gfca435f Copyright (c) 2000-2013 the FFmpeg developers 
        built on Jun 4 2013 01:41:53 with gcc 4.7.3 (GCC) 
        configuration: --enable-gpl --enable-version3 --disable-w32threads --enable-avisynth --enable-bzlib --enable-fontconfig --enable-frei0r --enable-gnutls --enable-iconv --enable-libass --enable-libblu 
    ray --enable-libcaca --enable-libfreetype --enable-libgsm --enable-libilbc --enable-libmodplug --enable-libmp3lame --enable-libopencore-amrnb --enable-libopencore-amrwb --enable-libopenjpeg --enable-l 
    ibopus --enable-librtmp --enable-libschroedinger --enable-libsoxr --enable-libspeex --enable-libtheora --enable-libtwolame --enable-libvo-aacenc --enable-libvo-amrwbenc --enable-libvorbis --enable-lib 
    vpx --enable-libx264 --enable-libxavs --enable-libxvid --enable-zlib 
        libavutil  52. 34.100/52. 34.100 
        libavcodec  55. 15.100/55. 15.100 
        libavformat 55. 8.102/55. 8.102 
        libavdevice 55. 2.100/55. 2.100 
        libavfilter  3. 74.101/3. 74.101 
        libswscale  2. 3.100/2. 3.100 
        libswresample 0. 17.102/0. 17.102 
        libpostproc 52. 3.100/52. 3.100 
    Input #0, mov,mp4,m4a,3gp,3g2,mj2, from 'C_est_pas_Sorcier_Les_Volcans_partie_1 - Copie.mp4': 
        Metadata: 
        major_brand  : mp42 
        minor_version : 0 
        compatible_brands: isommp42 
        creation_time : 2013-07-28 23:00:00 
        Duration: 00:14:19.06, start: 0.000000, bitrate: 611 kb/s 
        Stream #0:0(und): Video: h264 (Constrained Baseline) (avc1/0x31637661), yuv420p, 480x360 [SAR 1:1 DAR 4:3], 509 kb/s, 29.97 fps, 29.97 tbr, 1k tbn, 59.94 tbc 
        Metadata: 
         creation_time : 2013-07-28 23:00:00 
         handler_name : VideoHandler 
        Stream #0:1(und): Audio: aac (mp4a/0x6134706D), 44100 Hz, stereo, fltp, 95 kb/s 
        Metadata: 
         creation_time : 2013-07-28 23:00:00 
         handler_name : (C) 2007 Google Inc. v08.13.2007.