ПРИМІТКА: я з тих пір оновив ffmpeg
(раніше у мене була застаріла версія avconv
репозиторіїв Ubuntu).
Зараз @ slhck -map_metadata -1
працює чудово.
Я рекомендую рішення @ slhck, оскільки воно менше набирає текст та не працює. Я залишаю це для тих, хто використовує застарілу версію.
Найпростіший спосіб зробити це - встановити -map_metadata
використання одного з вхідних потоків, а не використання глобальних метаданих. 99% часу це повинно працювати. ПРИМІТКА: я використовую avconv, тому що це у сховищах Ubuntu 12.04; це, мабуть, буде сумісний із ffmpeg, оскільки їхній синтаксис завжди є в моєму досвіді.
avconv -i input.mp4 -map 0 -map_metadata 0:s:0 -c copy output.mp4
Це займе метадані з першого потоку даних (зазвичай це відеопотік) і використовуватиме їх для заміни глобальних метаданих файлу контейнера. Це працює, тому що більшість часу потоки даних не мають записаних до них значущих метаданих; проте іноді вони це роблять, і ви хочете повністю позбутися цих метаданих. На жаль, єдиним способом, яким я можу придумати це, було використання труби та двох процесів avconv.
avconv -i input.mp4 -f wav - | avconv -i - -i input.mp4 -map 1 -map_metadata 0 -c copy output.mp4
Це використовує той факт, що файли WAV не можуть містити метадані (оскільки формат створений до існування тегів метаданих).
Обидва ці способи бланкували всі метадані у файлі, на який я щойно тестував їх - все, exiftool
про що повідомлялося, була інформація про кодек, і avprobe не повідомив мені про метадані. Використовувати трубу для цього досить некрасиво, і перший метод спрацює в 99% випадків, тому слід віддати перевагу.
mov
абоmp4
файлах дата створення - це ціле поле у заголовку фільму та заголовках треку (виражається у секундах з 1904 року). Незважаючи на те, що ви можете встановити його на 0 або якесь інше фіксоване значення, немає способу видалити його та мати дійсний файлmov
чиmp4
файл.