2013-07-22 11 views
5

पर कवर आर्ट (छवि) को एम्बेड करने के लिए कैसे करें m4a फ़ाइलों में कवर आर्ट एम्बेड करने का कोई तरीका है?FFmpeg, .m4a

यह एक mp3 के लिए अच्छी तरह से काम करता है लेकिन के लिए m4a

ffmpeg -i tests/in.m4a -i cover.jpg -map 0:0 -map 1:0 -acodec copy \ 
    -id3v2_version 3 tests/out.m4a 

उत्तर

5

काम नहीं करता है FFmpeg इस कार्यक्षमता पर एक open issue है। इस बीच, को TagEditor project के साथ जोड़ा जा सकता है। जोड़ने के लिए:

tageditor -s cover=ju.jpg --max-padding 100000 -f ki.m4a 

निकालने के लिए:

tageditor -s cover= --max-padding 100000 -f ki.m4a 
0

थोड़ा सा विस्तारित संस्करण atomicparsley साथ एल्बम कला एम्बेड करने के लिए। मैक ओएस एक्स पर परीक्षण किया गया। यह मानता है कि वर्तमान निर्देशिका में folder.jpg फ़ाइल है। AtomicParsley उसी फ़ोल्डर में एम्बेडेड मीडिया के साथ अस्थायी फ़ाइलें बनाता है। एक ध्वज --overWrite है जो इस व्यवहार को बदलना है, लेकिन किसी कारण से यह मेरे लिए काम नहीं करता है। तो हमें बाद में मूल फाइलों को हटाने की आवश्यकता होगी। ध्यान दें, कि स्क्रिप्ट सभी उन फ़ाइलों को हटा देगी जो temp को उनके फ़ाइल नाम में नहीं जोड़ती हैं। तो सावधान रहें (या स्क्रिप्ट को संशोधित करें)। अंत में, स्क्रिप्ट अपने फाइलनामों से -temp- भाग को हटाने के लिए नई बनाई गई फ़ाइलों का नाम बदलती है।

for f in *.m4a; do atomicparsley "$f" --artwork folder.jpg; done; rm !(*temp*); for f in *.m4a; do g=${f//-temp*./.}; mv "$f" "$g"; done;

10

mp4v2 से mp4art भी ऐसा कर सकते हैं:

mp4art --add cover.jpg track.m4a 

मैं mp4art की कोशिश की, कवर जोड़ने के बाद, FFmpeg से जानकारी इस तरह है:

[mov,mp4,m4a,3gp,3g2,mj2 @ 0x7fce82011400] stream 0, timescale not set Input #0, mov,mp4,m4a,3gp,3g2,mj2, from '01 - Welcome To New York.m4a': Metadata: major_brand : M4A minor_version : 512 compatible_brands: isomiso2 title : Welcome To New York artist : Taylor Swift album : 1989 (Deluxe) date : 2014 encoder : Lavf55.48.100 genre : Country & Folk track : 1 disc : 1 Duration: 00:03:32.65, start: 0.046444, bitrate: 250 kb/s Stream #0:0(und): Audio: aac (mp4a/0x6134706D), 44100 Hz, stereo, fltp, 238 kb/s (default) Metadata: handler_name : SoundHandler Stream #0:1: Video: mjpeg, yuvj444p(pc, bt470bg), 1400x1400 [SAR 72:72 DAR 1:1], 90k tbr, 90k tbn, 90k tbc Input #1, image2, from 'Album Cover.jpg': Duration: 00:00:00.04, start: 0.000000, bitrate: N/A Stream #1:0: Video: mjpeg, yuvj444p(pc, bt470bg), 1400x1400 [SAR 72:72 DAR 1:1], 25 tbr, 25 tbn, 25 tbc

ऐसा लगता है कि 1 फ़ाइल में 2 इनपुट प्रारूप हैं (1 एम 4 ए, 1 छवि 2), मुझे लगता है कि ffmpeg कवर छवि जोड़ने के लिए एक अलग टूल का उपयोग करने के बजाय स्वयं एक ही चीज़ करने में सक्षम होना चाहिए, लेकिन मुझे पता नहीं चला कि कैसे।