LINUX.ORG.RU

как проще и правильнее сконвертировать mp4 to mp3 ? =)

 ,


1

1

Есть несколько музыкальных треков в телеге в виде видео. Хочу их в mp3 переделать… Подскажите под-та как mp4 видео со статичной картинкой сконвертировать в mp3, то есть выдрать звук и взять статичную картинку в ID3v2 тэги. Решение в виде двух строк для консоли, без длинных скриптов.

p.s. Прошу извинить, что не прогуглил этот вопрос самостоятельно, ПК помирает, очень долго всё грузится. Я вот пишу эти строки, а буквы периодически появляются с лагами спустя сек.

Ответ на: комментарий от hikikomori

а как узнать в каком формате лежит в контейнере дорожка?

mediainfo filename.mp4

# или
ffmpeg -i filename.mp4

# или
mpv filename.mp4  # а в самом плеере нажать i, покажет инфу прям поверх видео
CrX ★★★★★
()
Ответ на: комментарий от dataman

Ничего не наобум, в старых версиях ffmpeg работало -vcodec none, а я не знал что такой синтаксис отменили в пользу -vn. Видимо отменили давно, потому что в инете везде -vn находится и только в редких местах -vcodec none.

firkax ★★★★★
()
Последнее исправление: firkax (всего исправлений: 1)

ffmpeg -i ./video ./audio

С остальным можно заморочиться, но можно и нет, этот вариант тоже сработает. Даже больше скажу, можно например в качестве инпута указать фотку и звук, и склеить в видео, например. Только -loop 1 и -shortest указать.

Pierre_Dolle
()
Ответ на: комментарий от firkax

не 100 метров

фиг знает? за стеной в конце коридора - метров 30 может будет

при 2кВт

это только чайник, а еще самодельный электронагреватель который не выключается и вот когда чайник с электронагревателем да еще понавлючают везде свет - сечения не хватает, летом пень не вырубался, а как зима пришла - начал… что изменилось? включили электронагреватель, я сразу не догнал - думал пень помирает, но после того как переподключил розетки на дистилятор еще не вырубился ни разу - продолжу наблюдать, там сечение 6 квадрат - трехфазный кабель и проблем не должно быть.

amd_amd ★★★★★
()
Ответ на: комментарий от hikikomori

Остаётся вопрос, как выдрать картинку из видео

А вот картинки там в виде именно картинки нет, так что без пережатия не выйдет — так что скриншотом:

ffmpeg -ss 5 -i filename.mp4 -frames:v 1 -q:v 2 yakartinko.jpg

Здесь 5 — время в секундах от начала видео, из которого скриншот делаем. Если картинка там статичная, то без разницы, главное, чтоб не после окончания ролика время было.

CrX ★★★★★
()
Последнее исправление: CrX (всего исправлений: 1)
Ответ на: комментарий от hikikomori
mid3v2 --APIC "name.jpg" "path/to/name.m4a"

не сработало кажется…

хотя:

mid3v2 -l  "name.m4a"
APIC=cover front, cover (image/jpeg, 28500 bytes)

но не вижу где я его могу увидеть…

hikikomori ★★★
() автор топика
Последнее исправление: hikikomori (всего исправлений: 1)
Ответ на: комментарий от hikikomori

Засовывать не умею — ни разу не пригождалось (я обычно наоборот их вытаскиваю всегда и удаляю, чтобы не дублировалось 10 раз на альбом, в каждом треке), но вообще Яндекс по запросу «засунуть картинку в m4a» даёт на первый взгляд рабочий вариант, тоже с помощью ffmpeg.

А mid3v2 не сработает — «теги не той системы». Там не IDv2.

CrX ★★★★★
()
Последнее исправление: CrX (всего исправлений: 1)
Ответ на: комментарий от hikikomori

$ sudo apt install mp4v2-utils

$ ffmpeg -ss 5 -i video.mp4 -frames:v 1 -q:v 2 image.jpg

$ ffmpeg -i video.mp4 -vn -c:a copy -f mp4 audio.m4a

$ mp4art --add image.jpg audio.m4a

$ mp4info audio.m4a

mp4info version 2.1.3
audio.m4a:
Track   Type    Info
1       audio   MPEG-4 AAC LC, 306.549 secs, 133 kbps, 44100 Hz
 Encoded with: Lavf61.7.100
 Cover Art pieces: 1 <---- добавлено
dataman ★★★★★
()

Законспектировал тред. Если кому лень всё читать, вот ловите готовое:

Пакет - mp4v2-utils

сохранить из видео аудио дорожку ПЕРЕЖАВ её в mp3:

ffmpeg -i video.mp4 -f mp3 -vn audio.mp3

сохранить из видео аудио дорожку без дополнительного пережатия в m4a:

ffmpeg -i video.mp4 -vn -c:a copy -f mp4 audio.m4a

Вырезать из видео на 5й секунде кадр в картинку:

ffmpeg -ss 5 -i video.mp4 -frames:v 1 -q:v 2 image.jpg

Добавить картинку jpg на обложку m4a:

mp4art --add image.jpg filename.m4a

Добавить тэги в m4a файл:

mp4tags -artist "" -album "" -song "" /path/to/filename.m4a

Посмотреть сводку по аудио файлу:

mp4info audio.m4a

Посмотреть сводку по ВИДЕО файлу:

mediainfo video.mp4
ffmpeg -i video.mp4

Воспроизвести медиа:

ffplay filename
hikikomori ★★★
() автор топика
Ответ на: комментарий от CrX

Апну тему таким вопросом: До выключения ркн-тян тытрупа я много с него роликов через yt-dlp выкачал, но указывал ключ --remux-video mkv. Могу ли я аналогично вытащить двуковую дорогу из контейнера mkv? А из avi?

hikikomori ★★★
() автор топика
Ответ на: комментарий от hikikomori

Да. Сперва узнай, в каком она там формате только, чтоб знать, какой контейнер оптимальнее использовать. Если AAC, то m4a, если mp3 или opus, то соответственно просто .mp3 или .opus.

CrX ★★★★★
()
Ответ на: комментарий от hikikomori

mid3v2, id3v2, lltag, id3tool, id3info, mid3iconv - кто-то из них умеет кроме тэгов?

Понятия не имею. :)

ffmpeg умеет: https://stackoverflow.com/questions/18710992/how-to-add-album-art-with-ffmpeg.

$ ffmpeg -i audio-in.mp3 -i picture.png -c:a copy -c:v copy -map 0:0 -map 1:0 -id3v2_version 3 -metadata:s:v title="Album cover" -metadata:s:v comment="Cover (front)" audio-out.mp3

dataman ★★★★★
()