2011-03-19 25 views
5

क्या संपूर्ण फ़ाइल डाउनलोड किए बिना एमपी 3 फ़ाइल के आईडी 3 टैग (अवधि, कलाकार, शीर्षक ...) को पढ़ना संभव है?पूरी फ़ाइल को डाउनलोड किए बिना ID3 टैग पढ़ें

मैं कुछ परीक्षण किया था और मैं केवल एमपी 3 फ़ाइल के कुछ बाइट्स को डाउनलोड करने के साथ कलाकार और शीर्षक टैग प्राप्त करने में सक्षम था .. लेकिन मुझे यकीन है कि अगर यह अवधि और अन्य टैग के लिए संभव है नहीं कर रहा हूँ ..

धन्यवाद।

उत्तर

7

मैं सिर्फ यह पता लगाना है कि ffmpeg पूरी फ़ाइल डाउनलोड करने के लिए बिना एक दूरस्थ फ़ाइल के ID3 टैग पढ़ सकते हैं:

[email protected]:/# ffmpeg -i http://physics.ujep.cz/~mmaly/mp3/Mozart/Mass_in_C_Minor_New_by_Levin/sbory_vyssi_kvalita/01_Kyrie.mp3 
FFmpeg version 0.6-4:0.6-2ubuntu6, Copyright (c) 2000-2010 the FFmpeg developers 
    built on Oct 5 2010 22:36:53 with gcc 4.4.5 
    configuration: --extra-version=4:0.6-2ubuntu6 --prefix=/usr --enable-avfilter --enable-avfilter-lavf --enable-vdpau --enable-bzlib --enable-libgsm --enable-libschroedinger --enable-libspeex --enable-libtheora --enable-libvorbis --enable-vaapi --enable-pthreads --enable-zlib --enable-libvpx --disable-stripping --enable-runtime-cpudetect --enable-gpl --enable-postproc --enable-x11grab --enable-libdc1394 --enable-shared --disable-static 
    libavutil  50.15. 1/50.15. 1 
    libavcodec 52.72. 2/52.72. 2 
    libavformat 52.64. 2/52.64. 2 
    libavdevice 52. 2. 0/52. 2. 0 
    libavfilter 1.19. 0/1.19. 0 
    libswscale  0.11. 0/0.11. 0 
    libpostproc 51. 2. 0/51. 2. 0 
[mp3 @ 0x7ae420]max_analyze_duration reached 
[mp3 @ 0x7ae420]Estimating duration from bitrate, this may be inaccurate 
Input #0, mp3, from 'http://physics.ujep.cz/~mmaly/mp3/Mozart/Mass_in_C_Minor_New_by_Levin/sbory_vyssi_kvalita/01_Kyrie.mp3': 
    Metadata: 
    TLEN   : 431046 
    TIT2   : Kyrie 
    TRCK   : 1 
    TPE1   : Mozart 
    TCON   : Classical 
    TALB   : Mass in C Minor New by Levin 
    Duration: 00:07:11.18, start: 0.000000, bitrate: 128 kb/s 
    Stream #0.0: Audio: mp3, 44100 Hz, 2 channels, s16, 128 kb/s 
At least one output file must be specified 
+0

धन्यवाद मेरी मदद –

+0

लेकिन जानकारी कैसे प्राप्त करें? –

2

यदि आप ID3v1 या ID3v2 पढ़ना चाहते हैं तो इस पर निर्भर करता है। ID3v1 हमेशा फ़ाइल के अंत में होता है, इसलिए यदि आप इसे पढ़ने में रुचि रखते हैं तो नहीं जाना। ID3v2 आमतौर पर फ़ाइल की शुरुआत में होता है, लेकिन इसके लिए कोई गारंटी नहीं है।

इसलिए यदि आप किसी भी टैग को गलती से याद नहीं करना चाहते हैं, तो आपको पूरी फ़ाइल को पढ़ना होगा। ID3v1 समस्या को फ़ाइल के अंत से पढ़कर हल किया जा सकता है, लेकिन यह ID3v2 के साथ मदद नहीं करता है।

+0

ID3v2 हमेशा 10bytes के एक शीर्ष लेख है, और में यह परिभाषित करता है अगर वहाँ एक पाद लेख है, 10 बाइट्स भी। आपने किन विशिष्ट मामलों को देखा है जो आपको बताते हैं कि यह केवल फाइल के अंत में हो सकता है? – nlucaroni

+0

टैग स्वयं अंत में हो सकता है - इससे कोई फर्क नहीं पड़ता कि टैग कैसे संरचित किया गया है। उदाहरण के लिए http://code.google.com/p/mutagen/issues/detail?id=78 देखें। हालांकि * आमतौर पर * टैग सामने है, इसकी कोई गारंटी नहीं है। ऐसा प्रतीत होता है कि ओपी ठीक है, जो एक व्यावहारिक दृष्टिकोण से ठीक है। – Jon