Как добавить обложку в MP4? - PullRequest
       0

Как добавить обложку в MP4?

0 голосов
/ 25 декабря 2018

Я пытаюсь найти эффективный способ обновления метаданных для моих файлов MP4, которые я планирую разместить на сервере DLNA.Во-первых, я хочу, чтобы у видеофайлов была обложка.

Я специально использую 640x360 JPG файлы в качестве обложки.
Я также хотел бы добавить некоторые другие теги,как тип носителя или обновить заголовок.Пожалуйста, дайте мне знать, что можно сделать.

Если имеются предложения по коду, пожалуйста, знайте, что у меня есть данные имени файла в переменной %file% для обработки.JPG имеет то же имя, что и исходный файл MP4, поэтому достаточно легко получить тип файла и удалить расширение, как я и делал до сих пор.

Моя цель - иметь возможность простопоместите файл MP4 в следующий пакетный файл и узнайте его имя и полный путь, файл JPG, и прикрепите его к оригинальному файлу MP4.Очевидно, ffmpeg.exe не будет записывать в файл, из которого он извлечен, поэтому я должен перейти во временный файл и затем использовать MOVE, чтобы заменить старый файл фиксированным.

@ECHO OFF
set arg=%1
set file=%arg:~1,-5%
ffmpeg -i "%file%.mp4" -i "%file%.jpg" -acodec copy -vcodec copy -map 0 -map 1:0 "%file%WIP.mp4"
move /Y "%file%WIP.mp4" "%file".mp4"

Этот код сделалне похоже на работу.Он не отображается в Windows как обложка, поэтому я бы сказал, что это не удалось.

1 Ответ

0 голосов
/ 27 декабря 2018

Может сделать попытку, путем изменения аргумента и позиции -map 0 -map 1:0 сразу после ввода имени файла -map 1 -map 0 вдоль командной строки, так что эта работамне ...

Извините, мой ограниченный английский.

@echo off & cd "%~dp0" && setlocal enableextensions enabledelayedexpansion

for %%i in (%*) do ( 

     set "_arg=%%i"

     set "_file=!_arg:~1,-5!"

     if exist "!_file!.mp4" ffmpeg -i "!_file!.mp4" -i "!_file!.jpg"--map 1 -map 0  -acodec copy -vcodec copy "!_file!WIP.mp4" && move /Y "!_file!WIP.mp4" "!_file!".mp4"

     shift

    )
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...