From 4477dadf2bdae260497b5b6f35ed6d6f96e90e54 Mon Sep 17 00:00:00 2001 From: Muhammad Muqarrab Date: Wed, 2 Sep 2026 01:42:30 +0000 Subject: [PATCH 1/4] =?UTF-8?q?Optimize=20page:=20content/english/java/aud?= =?UTF-8?q?io-video-formats/extract-matroska-metadata-groupdocs-java/=5Fin?= =?UTF-8?q?dex.md=20-=20-=20Updated=20title,=20meta=20description,=20and?= =?UTF-8?q?=20front=E2=80=91matter=20fields=20to=20include=20primary=20key?= =?UTF-8?q?word=20and=20current=20date.=20-=20Rewrote=20Quick=20Answers=20?= =?UTF-8?q?and=20FAQ=20sections=20for=20clarity=20and=20keyword=20integrat?= =?UTF-8?q?ion.=20-=20Added=20direct=E2=80=91answer=20paragraphs=20after?= =?UTF-8?q?=20every=20question=E2=80=91style=20H2=20heading=20(40=E2=80=93?= =?UTF-8?q?70=20words).=20-=20Inserted=20definition=E2=80=91anchor=20sente?= =?UTF-8?q?nces=20for=20key=20classes=20and=20concepts.=20-=20Replaced=20v?= =?UTF-8?q?ague=20benefit=20statements=20with=20quantified=20claims=20(e.g?= =?UTF-8?q?.,=20=E2=80=9Csupports=2050+=20formats=E2=80=9D).=20-=20Expande?= =?UTF-8?q?d=20explanations,=20use=E2=80=91case=20descriptions,=20and=20tr?= =?UTF-8?q?oubleshooting=20guidance=20for=20richer=20content.?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../_index.md | 194 +++++++++------ .../_index.md | 187 ++++++++------ .../_index.md | 212 +++++++++------- .../_index.md | 201 ++++++++------- .../_index.md | 206 ++++++++++------ .../og-image.png | Bin 0 -> 55323 bytes .../_index.md | 191 +++++++++------ .../_index.md | 198 +++++++++------ .../_index.md | 202 +++++++++------ .../_index.md | 210 ++++++++++------ .../_index.md | 206 ++++++++++------ .../_index.md | 209 +++++++++------- .../_index.md | 230 +++++++++++------- .../_index.md | 218 ++++++++++------- .../_index.md | 210 ++++++++++------ .../_index.md | 196 +++++++++------ .../_index.md | 186 ++++++++------ .../_index.md | 211 ++++++++++------ .../_index.md | 217 ++++++++++------- .../_index.md | 196 +++++++++------ .../_index.md | 189 ++++++++------ .../_index.md | 217 ++++++++++------- .../_index.md | 220 ++++++++++------- .../_index.md | 214 ++++++++++------ 24 files changed, 2892 insertions(+), 1828 deletions(-) create mode 100644 content/english/java/audio-video-formats/extract-matroska-metadata-groupdocs-java/og-image.png diff --git a/content/arabic/java/audio-video-formats/extract-matroska-metadata-groupdocs-java/_index.md b/content/arabic/java/audio-video-formats/extract-matroska-metadata-groupdocs-java/_index.md index 3b54dd911..e913b02e4 100644 --- a/content/arabic/java/audio-video-formats/extract-matroska-metadata-groupdocs-java/_index.md +++ b/content/arabic/java/audio-video-formats/extract-matroska-metadata-groupdocs-java/_index.md @@ -1,51 +1,82 @@ --- -date: '2026-02-21' -description: تعلم كيفية قراءة بيانات تعريف mkv باستخدام Java عبر GroupDocs.Metadata، - واستخراج بيانات تعريف الفيديو باستخدام Java، ومعالجة رؤوس EBML والوسوم والمسارات. +date: '2026-09-02' +description: تعلم كيفية استخراج بيانات تعريف mkv في Java باستخدام GroupDocs.Metadata، + مع تغطية رؤوس EBML، العلامات، المسارات، وحالات الاستخدام العملية. keywords: -- extract mkv metadata java -- groupdocs.metadata java -- read matroska file -title: قراءة بيانات تعريف MKV في Java باستخدام GroupDocs.Metadata – دليل كامل +- how to extract mkv +- groupdocs metadata java +- extract video metadata java +lastmod: '2026-09-02' +og_description: كيفية استخراج بيانات تعريف mkv في Java باستخدام GroupDocs.Metadata. + احصل على إرشادات خطوة بخطوة، إجابات سريعة، وأمثلة واقعية لتصنيف الفيديو. +og_image_alt: Guide showing Java code extracting Matroska (MKV) metadata with GroupDocs.Metadata +og_title: كيفية استخراج بيانات تعريف mkv في Java باستخدام GroupDocs.Metadata +schemas: +- author: GroupDocs + dateModified: '2026-09-02' + description: Learn how to extract mkv metadata in Java using GroupDocs.Metadata, + covering EBML headers, tags, tracks, and practical use cases. + headline: How to extract mkv metadata in Java with GroupDocs.Metadata + type: TechArticle +- questions: + - answer: Yes, GroupDocs.Metadata supports MP4, AVI, MOV, and many more. The API + pattern is identical – just use the appropriate root package class for the format. + question: Can I extract metadata from other video formats with the same library? + - answer: A commercial license removes trial limits and unlocks full functionality. + The library works in trial mode for evaluation purposes. + question: Is a license required for production use? + - answer: Absolutely. Once the JAR is on your classpath, all metadata reads are + performed locally without any network calls. + question: Does the extraction happen offline? + - answer: The library streams the container structure, keeping memory usage modest. + Ensure your JVM has enough heap for any large tag collections, and consider + increasing `-Xmx` if you process extremely large files. + question: How does the library perform on very large MKV files (several GB)? + - answer: GroupDocs.Metadata primarily focuses on reading. Write support is limited; + refer to the latest API documentation for any write‑back capabilities. + question: Can I modify the metadata and write it back to the file? + type: FAQPage +tags: +- extract mkv +- groupdocs metadata +- java video processing +- matroska metadata +- metadata extraction +title: كيفية استخراج بيانات تعريف mkv في Java باستخدام GroupDocs.Metadata type: docs url: /ar/java/audio-video-formats/extract-matroska-metadata-groupdocs-java/ weight: 1 --- -# قراءة بيانات تعريف MKV باستخدام Java مع GroupDocs.Metadata +# كيفية استخراج بيانات تعريف mkv في Java باستخدام GroupDocs.Metadata -ملفات الوسائط المتعددة موجودة في كل مكان، والقدرة على **read mkv metadata java** أمر أساسي لإدارة الوسائط، والفهرسة، والتحليلات. في هذا البرنامج التعليمي ستكتشف لماذا يعتبر استخراج البيانات التعريفية من حاويات Matroska مهمًا، وكيفية إعداد GroupDocs.Metadata، وكود خطوة بخطوة لسحب رؤوس EBML، ومعلومات الجزء، والوسوم، وبيانات المسار. سواء كنت تبني فهرس فيديو، أو تتحقق من معلمات الترميز، أو تولد الصور المصغرة تلقائيًا، فإن هذا الدليل يزودك بكل ما تحتاجه. +في هذا الدليل الشامل ستتعلم **كيفية استخراج بيانات تعريف mkv في Java** باستخدام مكتبة GroupDocs.Metadata. سواءً كنت تبني كتالوج وسائط، أو تتحقق من معلمات الترميز، أو تقوم بأتمتة إنشاء الصور المصغرة، فإن قراءة بيانات تعريف Matroska (MKV) برمجياً يوفر ساعات لا تحصى من العمل اليدوي. سنستعرض الأسباب، المتطلبات المسبقة، خطوات الإعداد الدقيقة، ومقاطع الشيفرة المفصلة التي تكشف رؤوس EBML، معلومات الجزء، العلامات، وبيانات المسار. ## إجابات سريعة -- **What does “read mkv metadata java” mean?** إنها عملية قراءة البيانات التعريفية من ملفات MKV برمجيًا باستخدام Java. -- **Which library should I use?** توفر GroupDocs.Metadata for Java واجهة برمجة تطبيقات شاملة لملفات Matroska. -- **Do I need a license?** نسخة تجريبية مجانية تكفي للتقييم؛ الترخيص يزيل حدود الاستخدام. -- **Can I read other formats?** نعم، تدعم المكتبة نفسها MP4 وAVI وMP3 والعديد غيرها. -- **Is internet access required at runtime?** لا، جميع عمليات الاستخراج تتم محليًا بعد إضافة المكتبة إلى مشروعك. +- **ما معنى “read mkv metadata java”؟** هو استخراج برمجي لبيانات تعريف حاوية Matroska (العناوين، الترميزات، الفترات الزمنية، إلخ) من ملفات MKV باستخدام Java. +- **أي مكتبة يجب أن أستخدمها؟** تقدم GroupDocs.Metadata for Java واجهة برمجة تطبيقات كاملة المميزات وعالية الأداء لـ Matroska وأكثر من 50 تنسيقًا آخر. +- **هل أحتاج إلى ترخيص؟** النسخة التجريبية المجانية تكفي للتقييم؛ الترخيص التجاري يزيل جميع قيود التجربة. +- **هل يمكنني قراءة تنسيقات أخرى؟** نعم – نفس الواجهة تقرأ MP4، AVI، MOV، MP3، والعديد من الحاويات الأخرى. +- **هل يلزم اتصال بالإنترنت أثناء التشغيل؟** لا – جميع عمليات الاستخراج تتم محليًا بعد وضع ملف JAR على مسار الفئة الخاص بك. ## ما هي بيانات تعريف Matroska (MKV)؟ -Matroska هو تنسيق حاوية مفتوح ومرن. تشمل بياناته التعريفية رأس EBML (إصدار الملف، نوع المستند)، تفاصيل الجزء (المدة، تطبيق الجمع)، الوسوم (العناوين، الأوصاف)، ومواصفات المسار (ترميزات الصوت/الفيديو، اللغة). الوصول إلى هذه البيانات يتيح لك بناء فهارس وسائط، والتحقق من سلامة الملف، أو إنشاء صور مصغرة تلقائيًا. +بيانات تعريف Matroska (MKV) هي مجموعة المعلومات الهيكلية والوصفية المخزنة داخل حاوية Matroska، بما في ذلك رأس EBML (إصدار الملف ونوع المستند)، تفاصيل الجزء (المدة، تطبيق الدمج)، العلامات المعرفة من قبل المستخدم (العناوين، الأوصاف)، ومواصفات المسار (معرفات الترميز الصوتي/الفيديو، اللغة، معدل البت). يتيح لك الوصول إلى هذه البيانات بناء كتالوجات قابلة للبحث، التحقق من سلامة الملفات، أو تشغيل سير عمل آلي مثل إنشاء الصور المصغرة. -## لماذا قراءة mkv metadata java؟ -- **Automation** – سحب التفاصيل تلقائيًا لمكتبات الفيديو الكبيرة. -- **Quality control** – التحقق من معرفات الترميز، والمدة، ولغات المسارات قبل النشر. -- **Search & discovery** – تعبئة قواعد بيانات قابلة للبحث بالعناوين، واللغات، والطوابع الزمنية. -- **Cross‑format consistency** – استخدم نفس قاعدة الشيفرة لاستخراج بيانات تعريف الفيديو java من حاويات أخرى (MP4، AVI، إلخ). +## لماذا قراءة بيانات تعريف mkv في Java؟ +تسمح لك قراءة بيانات تعريف MKV من Java **بأتمتة** فهرسة آلاف ملفات الفيديو، **بالتحقق** من متطلبات الترميز واللغة قبل النشر، و**بملء** قواعد بيانات قابلة للبحث بالعناوين، الفترات الزمنية، ولغات المسارات. كما توفر قاعدة شيفرة موحدة لاستخراج بيانات تعريف الفيديو من حاويات متعددة، مما يقلل عبء الصيانة ويضمن فحوصات جودة متسقة عبر خط أنابيب الوسائط الخاص بك. -## لماذا تستخدم GroupDocs.Metadata للـ Java؟ -- **Full‑featured API** – يتعامل مع EBML، والأجزاء، والوسوم، والمسارات دون الحاجة إلى تحليل منخفض المستوى. -- **Performance‑optimized** – يعمل بكفاءة حتى مع ملفات متعددة الجيجابايت. -- **Cross‑format support** – نمط الشيفرة نفسه ينطبق على العديد من حاويات الصوت/الفيديو. -- **Simple Maven integration** – أضف تبعية واحدة وابدأ الاستخراج. +## لماذا تستخدم GroupDocs.Metadata for Java؟ +GroupDocs.Metadata for Java مكتبة ناضجة تدعم **أكثر من 50 تنسيقًا** للإدخال والإخراج، بما في ذلك Matroska، MP4، AVI، وMOV. تقوم ببث هياكل الحاوية، لذا يبقى استهلاك الذاكرة منخفضًا حتى للملفات متعددة الجيجابايت. تُجرد الواجهة برمجة التطبيقات (API) عملية تحليل EBML منخفضة المستوى، مما يتيح لك التركيز على منطق الأعمال. التكامل بسيط كإضافة تبعية Maven واحدة، وتستمر المكتبة في التحديث للتعامل مع أحدث مواصفات الترميزات. ## المتطلبات المسبقة -- **GroupDocs.Metadata for Java** الإصدار 24.12 أو أحدث. -- Java Development Kit (JDK) مثبت. -- Maven (أو معالجة JAR يدويًا). -- ملف MKV للتجربة (ضعه في `YOUR_DOCUMENT_DIRECTORY`). +- **GroupDocs.Metadata for Java** الإصدار 24.12 أو أحدث. +- مجموعة تطوير Java (JDK) 8 أو أحدث مثبتة. +- Maven (أو التعامل اليدوي مع JAR) لإدارة التبعيات. +- ملف MKV للاختبار، موضوع في مجلد يمكنك الإشارة إليه من الشيفرة (مثال: `YOUR_DOCUMENT_DIRECTORY`). -## إعداد GroupDocs.Metadata للـ Java -أضف المكتبة إلى مشروعك باستخدام Maven أو حمّل ملف JAR مباشرة. +## إعداد GroupDocs.Metadata for Java + +GroupDocs.Metadata for Java هي مكتبة تمكّن من قراءة بيانات التعريف من أكثر من 50 تنسيق ملف، بما في ذلك Matroska (MKV). أضفها إلى مشروعك باستخدام Maven أو قم بتحميل ملف JAR يدويًا. **Maven:** ```xml @@ -67,12 +98,14 @@ Matroska هو تنسيق حاوية مفتوح ومرن. تشمل بياناته ``` **تحميل مباشر:** -إذا كنت تفضل عدم استخدام Maven، حمّل أحدث نسخة من [GroupDocs.Metadata for Java releases](https://releases.groupdocs.com/metadata/java/). +إذا كنت تفضّل عدم استخدام Maven، حمّل أحدث نسخة من [إصدارات GroupDocs.Metadata for Java](https://releases.groupdocs.com/metadata/java/). ### الحصول على الترخيص -ابدأ بنسخة تجريبية مجانية لاستكشاف الميزات. للاستخدام الإنتاجي، اشترِ ترخيصًا أو احصل على ترخيص مؤقت من [GroupDocs](https://purchase.groupdocs.com/temporary-license/) لإزالة قيود التجربة. + +ابدأ بنسخة تجريبية مجانية لاستكشاف الميزات. للاستخدام في الإنتاج، اشترِ ترخيصًا أو احصل على ترخيص مؤقت من [GroupDocs](https://purchase.groupdocs.com/temporary-license/) لإزالة قيود التجربة. ### التهيئة الأساسية والإعداد + فيما يلي الحد الأدنى من الشيفرة اللازمة لفتح ملف MKV باستخدام GroupDocs.Metadata. ```java @@ -89,11 +122,15 @@ public class MetadataExtraction { } ``` -## كيفية قراءة mkv metadata java باستخدام GroupDocs.Metadata -الآن سنستعرض كل منطقة من البيانات التعريفية التي يمكنك قراءتها. +## كيفية قراءة بيانات تعريف mkv في Java باستخدام GroupDocs.Metadata + +`Metadata` هي الفئة الرئيسية التي تمثل ملف MKV وتوفر الوصول إلى بيانات تعريفه. +حمّل ملف MKV الخاص بك باستخدام `new Metadata("path/to/file.mkv")` واستدعِ الدوال المناسبة – `getRootPackageGeneric()`، `getSegments()`، `getTags()`، و`getTracks()` – لاسترجاع كل قسم من بيانات التعريف. هذه السلسلة الواحدة من الاستدعاءات تمنحك رؤية كاملة لرأس EBML، معلومات الجزء، العلامات، وتفاصيل كل مسار دون كتابة أي منطق تحليل منخفض المستوى. ### قراءة رأس EBML في Matroska -رأس EBML يخزن معلومات أساسية عن الملف مثل الإصدار ونوع المستند. + +رأس EBML يخزن معلومات أساسية عن الملف مثل الإصدار، نوع المستند، وحجم الملف. +`getRootPackageGeneric()` يُعيد نقطة الدخول لحزمة Matroska. ```java import com.groupdocs.metadata.Metadata; @@ -117,11 +154,13 @@ public class ReadMatroskaEBMLHeader { ``` **نقاط رئيسية** -- `getRootPackageGeneric()` يمنحك نقطة الدخول لحزمة Matroska. -- خصائص EBML (`docType`، `version`، إلخ) تساعدك على التحقق من توافق الملف. +- `getRootPackageGeneric()` يُعيد نقطة الدخول لحزمة Matroska. +- خصائص EBML (`docType`، `version`، إلخ) تتيح لك التحقق من توافق الملف قبل المعالجة المتعمقة. ### قراءة معلومات جزء Matroska -الأجزاء تصف الخط الزمني العام للوسائط وأدوات الإنشاء. + +الأجزاء تصف الخط الزمني الإعلامي العام، أدوات الإنشاء، ومعلومات العنوان الاختيارية. +`getSegments()` يُعيد مجموعة من كائنات الجزء التي تحتوي على المدة وتفاصيل الإنشاء. ```java import com.groupdocs.metadata.Metadata; @@ -150,11 +189,13 @@ public class ReadMatroskaSegmentInformation { ``` **نقاط رئيسية** -- `getSegments()` تُعيد مجموعة؛ كل جزء يمكن أن يحتوي على عنوانه، مدته، وتفاصيل تطبيق الإنشاء الخاص به. -- مفيد لبناء قوائم تشغيل أو التحقق من معلمات الترميز. +- `getSegments()` يُعيد مجموعة؛ كل جزء يمكن أن يحتوي على عنوانه، مدته، وتفاصيل تطبيق الإنشاء. +- هذه البيانات مفيدة لإنشاء قوائم تشغيل أو التحقق من معلمات الترميز عبر مجموعة من الملفات. + +### قراءة بيانات تعريف العلامات في Matroska -### قراءة بيانات تعريف وسوم Matroska -الوسوم تخزن معلومات قابلة للقراءة من قبل الإنسان مثل العناوين، الفنانين، أو ملاحظات مخصصة. +العلامات تخزن معلومات قابلة للقراءة من قبل الإنسان مثل العناوين، الفنانين، أو الملاحظات المخصصة. +`getTags()` يُعيد قائمة إدخالات العلامات المرتبطة بالملف. ```java import com.groupdocs.metadata.Metadata; @@ -184,11 +225,13 @@ public class ReadMatroskaTagMetadata { ``` **نقاط رئيسية** -- الوسوم منظمة حسب `targetType` (مثلًا `movie`، `track`). -- إدخالات `simpleTag` تحمل أزواج مفتاح/قيمة مثل `TITLE=My Video`. +- العلامات مُنظمة حسب `targetType` (مثال: `movie`، `track`). +- إدخالات `simpleTag` تحمل أزواج المفتاح/القيمة مثل `TITLE=My Video`. -### قراءة بيانات تعريف مسار Matroska -المسارات تمثل تدفقات صوتية، فيديو، أو ترجمة منفردة. +### قراءة بيانات تعريف المسارات في Matroska + +المسارات تمثل تدفقات الصوت، الفيديو، أو الترجمات الفردية داخل الحاوية. +`getTracks()` يوفّر الوصول إلى المواصفات التقنية لكل مسار. ```java import com.groupdocs.metadata.Metadata; @@ -213,45 +256,50 @@ public class ReadMatroskaTrackMetadata { ``` **نقاط رئيسية** -- `track.getType()` يخبرك إذا كان الفيديو، الصوت، أو الترجمات. -- `codecId` يتيح لك تحديد الترميز (مثال: `V_MPEG4/ISO/AVC`). -- هذه البيانات أساسية لسلاسل التحويل أو فحوصات الجودة. +- `track.getType()` يخبرك إذا كان التدفق فيديو، صوت، أو ترجمات. +- `codecId` يحدد الترميز (مثال: `V_MPEG4/ISO/AVC`). +- هذه المعلومات أساسية لأنابيب التحويل، فحوصات الجودة، وقرارات البث الديناميكي. + +## حالات الاستخدام الشائعة لقراءة بيانات تعريف mkv في Java -## حالات الاستخدام الشائعة لقراءة mkv metadata java -- **Media catalogues** – تعبئة جداول قاعدة البيانات بالعناوين، والمدة، ورموز اللغة. -- **Automated QC** – التحقق من أن كل ملف يحتوي على الوسوم المطلوبة قبل النشر. -- **Dynamic streaming** – اختيار مسار الصوت/الترجمة الصحيح بناءً على تفضيلات المستخدم. -- **Content migration** – استخراج البيانات التعريفية مرة واحدة، ثم حقنها في نظام تخزين جديد. +- **كتالوجات الوسائط** – ملء جداول قاعدة البيانات بالعناوين، الفترات الزمنية، ورموز اللغة للبحث السريع. +- **التحكم الآلي في الجودة** – التحقق من أن كل ملف يحتوي على العلامات المطلوبة ويتوافق مع معايير الترميز قبل الإصدار. +- **البث الديناميكي** – اختيار مسار الصوت أو الترجمة المناسب بناءً على تفضيلات المستخدم أثناء التشغيل. +- **ترحيل المحتوى** – استخراج البيانات مرة واحدة، ثم حقنها في نظام تخزين جديد أو شبكة توصيل المحتوى. ## المشكلات الشائعة & استكشاف الأخطاء + | العَرَض | السبب المحتمل | الحل | |---------|--------------|-----| -| `NullPointerException` عند الوصول إلى `getEbmlHeader()` | مسار الملف غير صحيح أو الملف غير موجود | تحقق من المسار في `new Metadata("...")` وتأكد من وجود الملف. | -| لم يتم إرجاع أي وسوم | ملف MKV يفتقر إلى عناصر الوسوم | استخدم ملف وسائط يحتوي على وسوم تعريفية (مثلاً، مضافة عبر MKVToolNix). | -| معالجة بطيئة على ملفات كبيرة | ذاكرة heap غير كافية | زيادة heap للـ JVM (`-Xmx2g` أو أعلى) أو معالجة الملف على أجزاء إذا كان ممكنًا. | +| `NullPointerException` عند الوصول إلى `getEbmlHeader()` | مسار الملف غير صحيح أو الملف غير موجود | تحقق من المسار في `new Metadata("...")` وتأكد من وجود الملف على القرص. | +| لم يتم إرجاع أي علامات | ملف MKV يفتقر إلى عناصر العلامات | استخدم ملف وسائط يحتوي على علامات بيانات تعريف (مثال: مضافة عبر MKVToolNix). | +| معالجة بطيئة على ملفات كبيرة | ذاكرة heap غير كافية | زيادة حجم heap للـ JVM (`-Xmx2g` أو أعلى) أو معالجة الملف على أجزاء إذا أمكن. | ## الأسئلة المتكررة -**س: هل يمكنني استخراج البيانات التعريفية من صيغ فيديو أخرى باستخدام نفس المكتبة؟** -ج: نعم، تدعم GroupDocs.Metadata صيغ MP4، AVI، MOV، والعديد غيرها. نمط الـ API مشابه—فقط استخدم فئة حزمة الجذر المناسبة. +**س: هل يمكنني استخراج بيانات تعريف من تنسيقات فيديو أخرى باستخدام نفس المكتبة؟** +ج: نعم، يدعم GroupDocs.Metadata MP4، AVI، MOV، والعديد غيرها. نمط الواجهة برمجة التطبيقات (API) هو نفسه – فقط استخدم فئة حزمة الجذر المناسبة للتنسيق. -**س: هل يلزم الحصول على ترخيص للاستخدام الإنتاجي؟** -ج: الترخيص يزيل حدود النسخة التجريبية ويمنح الوظائف الكاملة. المكتبة تعمل في وضع التجربة للتقييم. +**س: هل يلزم ترخيص للاستخدام في الإنتاج؟** +ج: الترخيص التجاري يزيل قيود التجربة ويفتح جميع الوظائف. المكتبة تعمل في وضع التجربة لأغراض التقييم. -**س: هل يحدث الاستخراج دون اتصال؟** -ج: بالتأكيد. بمجرد أن يكون ملف JAR على مسار الفئات الخاص بك، يتم تنفيذ جميع قراءات البيانات التعريفية محليًا دون أي استدعاءات شبكة. +**س: هل يتم الاستخراج دون اتصال بالإنترنت؟** +ج: بالتأكيد. بمجرد أن يكون ملف JAR على مسار الفئة الخاص بك، تُجرى جميع قراءات البيانات محليًا دون أي استدعاءات شبكة. -**س: كيف يكون أداء ذلك على ملفات MKV كبيرة جدًا (عدة جيجابايت)؟** -ج: تقوم المكتبة ببث بنية الحاوية، لذا يبقى استهلاك الذاكرة معتدلًا، لكن تأكد من أن JVM لديك لديها heap كافية لأي مجموعات وسوم كبيرة. +**س: كيف تؤدي المكتبة مع ملفات MKV الكبيرة جدًا (عدة جيجابايت)؟** +ج: تقوم المكتبة ببث بنية الحاوية، مما يحافظ على استهلاك الذاكرة منخفضًا. تأكد من أن JVM لديها ما يكفي من heap لأي مجموعات علامات كبيرة، وفكّر في زيادة `-Xmx` إذا كنت تعالج ملفات ضخمة جدًا. -**س: هل يمكنني تعديل البيانات التعريفية وكتابتها مرة أخرى إلى الملف؟** -ج: تركز GroupDocs.Metadata أساسًا على القراءة. قدرات الكتابة محدودة؛ تحقق من أحدث وثائق الـ API لأي دعم للكتابة. - -## الخلاصة -أنت الآن تمتلك دليلًا كاملاً وجاهزًا للإنتاج ل**read mkv metadata java** باستخدام GroupDocs.Metadata. من خلال الاستفادة من رؤوس EBML، ومعلومات الجزء، والوسوم، وتفاصيل المسار، يمكنك تشغيل فهارس الوسائط، أتمتة فحوصات الجودة، أو إثراء خدمات بث الفيديو. جرّب المقاطع البرمجية، وكيّفها مع سير عملك، واستكشف دعم المكتبة لتنسيقات أوسع لمزيد من الإمكانيات. +**س: هل يمكنني تعديل البيانات وإعادة كتابتها إلى الملف؟** +ج: يركز GroupDocs.Metadata أساسًا على القراءة. دعم الكتابة محدود؛ راجع أحدث وثائق API لأي إمكانيات كتابة مرة أخرى. --- -**آخر تحديث:** 2026-02-21 +**آخر تحديث:** 2026-09-02 **تم الاختبار مع:** GroupDocs.Metadata 24.12 for Java -**المؤلف:** GroupDocs \ No newline at end of file +**المؤلف:** GroupDocs + +## دروس ذات صلة + +- [كيفية استخراج ترجمات mkv دفعيًا باستخدام Java وGroupDocs.Metadata](/metadata/java/audio-video-formats/extract-subtitles-mkv-files-java-groupdocs-metadata/) +- [استخراج بيانات تعريف الفيديو java باستخدام GroupDocs.Metadata](/metadata/java/audio-video-formats/mastering-avi-metadata-handling-groupdocs-java/) +- [كيفية استخراج بيانات تعريف FLV Java باستخدام GroupDocs.Metadata](/metadata/java/audio-video-formats/flv-metadata-extraction-groupdocs-java/) \ No newline at end of file diff --git a/content/chinese/java/audio-video-formats/extract-matroska-metadata-groupdocs-java/_index.md b/content/chinese/java/audio-video-formats/extract-matroska-metadata-groupdocs-java/_index.md index 4c0dc0262..b800dfeb7 100644 --- a/content/chinese/java/audio-video-formats/extract-matroska-metadata-groupdocs-java/_index.md +++ b/content/chinese/java/audio-video-formats/extract-matroska-metadata-groupdocs-java/_index.md @@ -1,52 +1,85 @@ --- -date: '2026-02-21' -description: 了解如何使用 GroupDocs.Metadata 在 Java 中读取 MKV 元数据,提取视频元数据,并处理 EBML 头、标签和轨道。 +date: '2026-09-02' +description: 了解如何在 Java 中使用 GroupDocs.Metadata 提取 mkv 元数据,涵盖 EBML 头、标签、轨道以及实际使用案例。 keywords: -- extract mkv metadata java -- groupdocs.metadata java -- read matroska file -title: 使用 GroupDocs.Metadata 在 Java 中读取 MKV 元数据 – 完整指南 +- how to extract mkv +- groupdocs metadata java +- extract video metadata java +lastmod: '2026-09-02' +og_description: 如何在 Java 中使用 GroupDocs.Metadata 提取 mkv 元数据。获取分步指南、快速答案以及视频编目中的真实案例。 +og_image_alt: Guide showing Java code extracting Matroska (MKV) metadata with GroupDocs.Metadata +og_title: 如何在 Java 中使用 GroupDocs.Metadata 提取 mkv 元数据 +schemas: +- author: GroupDocs + dateModified: '2026-09-02' + description: Learn how to extract mkv metadata in Java using GroupDocs.Metadata, + covering EBML headers, tags, tracks, and practical use cases. + headline: How to extract mkv metadata in Java with GroupDocs.Metadata + type: TechArticle +- questions: + - answer: Yes, GroupDocs.Metadata supports MP4, AVI, MOV, and many more. The API + pattern is identical – just use the appropriate root package class for the format. + question: Can I extract metadata from other video formats with the same library? + - answer: A commercial license removes trial limits and unlocks full functionality. + The library works in trial mode for evaluation purposes. + question: Is a license required for production use? + - answer: Absolutely. Once the JAR is on your classpath, all metadata reads are + performed locally without any network calls. + question: Does the extraction happen offline? + - answer: The library streams the container structure, keeping memory usage modest. + Ensure your JVM has enough heap for any large tag collections, and consider + increasing `-Xmx` if you process extremely large files. + question: How does the library perform on very large MKV files (several GB)? + - answer: GroupDocs.Metadata primarily focuses on reading. Write support is limited; + refer to the latest API documentation for any write‑back capabilities. + question: Can I modify the metadata and write it back to the file? + type: FAQPage +tags: +- extract mkv +- groupdocs metadata +- java video processing +- matroska metadata +- metadata extraction +title: 如何在 Java 中使用 GroupDocs.Metadata 提取 mkv 元数据 type: docs url: /zh/java/audio-video-formats/extract-matroska-metadata-groupdocs-java/ weight: 1 --- -# 使用 GroupDocs.Metadata 读取 MKV 元数据(Java) +# 如何在 Java 中使用 GroupDocs.Metadata 提取 mkv 元数据 -多媒体文件随处可见,能够 **read mkv metadata java** 对于媒体管理、编目和分析至关重要。在本教程中,您将了解为何从 Matroska 容器中提取元数据很重要,如何设置 GroupDocs.Metadata,以及逐步代码示例,用于获取 EBML 头、段信息、标签和轨道数据。无论您是构建视频目录、验证编码参数,还是自动生成缩略图,本指南都提供了所需的一切。 +在本综合指南中,您将学习 **如何在 Java 中使用 GroupDocs.Metadata 库提取 mkv 元数据**。无论是构建媒体目录、验证编码参数,还是自动生成缩略图,使用编程方式读取 Matroska(MKV)元数据都能节省大量手动工作时间。我们将逐步介绍原因、前置条件、具体的设置步骤以及详细的代码片段,展示如何获取 EBML 头、段信息、标签和轨道数据。 ## 快速答案 -- **“read mkv metadata java” 是什么意思?** 它是使用 Java 程序化读取 MKV 文件元数据的过程。 -- **我应该使用哪个库?** GroupDocs.Metadata for Java 为 Matroska 文件提供了全面的 API。 -- **我需要许可证吗?** 免费试用可用于评估;购买许可证可解除使用限制。 -- **我可以读取其他格式吗?** 可以,同一库支持 MP4、AVI、MP3 等多种格式。 -- **运行时需要网络访问吗?** 不需要,库加入项目后,所有提取均在本地完成。 +- **“read mkv metadata java” 是什么意思?** 指使用 Java 对 Matroska 容器的元数据(标题、编解码器、时长等)进行程序化提取。 +- **应该使用哪个库?** GroupDocs.Metadata for Java 提供了功能完整、高性能的 Matroska 以及 50 多种其他格式的 API。 +- **需要许可证吗?** 免费试用可用于评估;商业许可证可移除所有试用限制。 +- **可以读取其他格式吗?** 可以——同一 API 可读取 MP4、AVI、MOV、MP3 等众多容器。 +- **运行时需要网络访问吗?** 不需要——所有提取工作在本地完成,只要 JAR 在类路径中即可。 ## 什么是 Matroska (MKV) 元数据? -Matroska 是一种开放、灵活的容器格式。其元数据包括 EBML 头(文件版本、文档类型)、段信息(时长、复用应用程序)、标签(标题、描述)以及轨道规格(音频/视频编解码器、语言)。访问这些数据可以帮助您构建媒体目录、验证文件完整性或自动生成缩略图。 -## 为什么要 read mkv metadata java? -- **自动化** – 为大型视频库自动提取详细信息。 -- **质量控制** – 在发布前验证编解码器 ID、时长和轨道语言。 -- **搜索与发现** – 用标题、语言和时间戳填充可搜索的数据库。 -- **跨格式一致性** – 使用相同的代码库从其他容器(MP4、AVI 等)提取 video metadata java。 +Matroska (MKV) 元数据是存储在 Matroska 容器内部的结构化和描述性信息集合,包括 EBML 头(文件版本和文档类型)、段详情(时长、复用应用)、用户自定义标签(标题、描述)以及轨道规格(音视频编解码器 ID、语言、比特率)。访问这些数据可帮助您构建可搜索的目录、验证文件完整性,或驱动自动化工作流(如生成缩略图)。 -## 为什么使用 GroupDocs.Metadata for Java? -- **完整功能的 API** – 在无需低层解析的情况下处理 EBML、段、标签和轨道。 -- **性能优化** – 即使面对多 GB 文件也能高效工作。 -- **跨格式支持** – 相同的代码模式适用于多种音视频容器。 -- **简易 Maven 集成** – 添加单个依赖即可开始提取。 +## 为什么在 Java 中读取 mkv 元数据? + +在 Java 中读取 MKV 元数据可以 **自动化** 数千个视频文件的目录编制,**验证** 编解码器和语言要求后再发布,并 **填充** 包含标题、时长和轨道语言的可搜索数据库。它还提供了一个 **统一的代码库** 来从多种容器中提取视频元数据,降低维护成本,并确保在媒体流水线中进行一致的质量检查。 + +## 为什么选择 GroupDocs.Metadata for Java? + +GroupDocs.Metadata for Java 是一款成熟的库,支持 **50+ 输入和输出格式**,包括 Matroska、MP4、AVI 和 MOV。它以流式方式读取容器结构,即使是多 GB 的文件也能保持低内存消耗。API 抽象了底层 EBML 解析,让您专注于业务逻辑。只需添加一个 Maven 依赖即可完成集成,且库会持续更新以兼容最新的编解码器规范。 ## 前置条件 -- **GroupDocs.Metadata for Java** 版本 24.12 或更高。 -- 已安装 Java Development Kit (JDK)。 -- Maven(或手动管理 JAR)。 -- 用于实验的 MKV 文件(放置在 `YOUR_DOCUMENT_DIRECTORY` 中)。 +- **GroupDocs.Metadata for Java** 版本 24.12 或更高。 +- 已安装 Java Development Kit (JDK) 8 或更高。 +- 使用 Maven(或手动管理 JAR)来处理依赖。 +- 用于测试的 MKV 文件,放置在代码可引用的文件夹中(例如 `YOUR_DOCUMENT_DIRECTORY`)。 + +## 为 Java 设置 GroupDocs.Metadata -## 设置 GroupDocs.Metadata for Java -使用 Maven 将库添加到项目中,或直接下载 JAR。 +GroupDocs.Metadata for Java 是一个能够读取超过 50 种文件格式元数据的库,包括 Matroska (MKV)。使用 Maven 添加或手动下载 JAR 即可。 -**Maven:** +**Maven:** ```xml @@ -65,14 +98,16 @@ Matroska 是一种开放、灵活的容器格式。其元数据包括 EBML 头 ``` -**直接下载:** -如果您不想使用 Maven,可从 [GroupDocs.Metadata for Java releases](https://releases.groupdocs.com/metadata/java/) 下载最新版本。 +**直接下载:** +如果不想使用 Maven,可从 [GroupDocs.Metadata for Java releases](https://releases.groupdocs.com/metadata/java/) 下载最新版本。 -### 许可证获取 -先使用免费试用版探索功能。生产环境请购买许可证,或从 [GroupDocs](https://purchase.groupdocs.com/temporary-license/) 获取临时许可证,以解除试用限制。 +### 获取许可证 + +先使用免费试用探索功能。生产环境请购买许可证,或从 [GroupDocs](https://purchase.groupdocs.com/temporary-license/) 获取临时许可证,以移除试用限制。 ### 基本初始化和设置 -下面是使用 GroupDocs.Metadata 打开 MKV 文件的最小代码示例。 + +下面的代码展示了使用 GroupDocs.Metadata 打开 MKV 文件的最小示例。 ```java import com.groupdocs.metadata.Metadata; @@ -88,11 +123,15 @@ public class MetadataExtraction { } ``` -## 如何使用 GroupDocs.Metadata read mkv metadata java -现在我们将深入了解可以读取的每个元数据区域。 +## 如何使用 GroupDocs.Metadata 在 Java 中读取 mkv 元数据 + +`Metadata` 是表示 MKV 文件并提供其元数据访问的主类。 +使用 `new Metadata("path/to/file.mkv")` 加载 MKV 文件,然后调用相应的 getter——`getRootPackageGeneric()`、`getSegments()`、`getTags()` 和 `getTracks()`——即可获取每个元数据段。此单一调用链让您无需编写底层解析逻辑,即可完整查看 EBML 头、段信息、用户标签以及各轨道细节。 ### 读取 Matroska EBML 头 -EBML 头存储核心文件信息,如版本和文档类型。 + +EBML 头存储核心文件信息,如版本、文档类型和文件大小。 +`getRootPackageGeneric()` 返回已打开文件的 EBML 头包。 ```java import com.groupdocs.metadata.Metadata; @@ -116,11 +155,13 @@ public class ReadMatroskaEBMLHeader { ``` **关键点** -- `getRootPackageGeneric()` 提供 Matroska 包的入口点。 -- EBML 属性(`docType`、`version` 等)帮助您验证文件兼容性。 +- `getRootPackageGeneric()` 返回 Matroska 包的入口点。 +- EBML 属性(`docType`、`version` 等)可在深入处理前帮助您验证文件兼容性。 ### 读取 Matroska 段信息 -段描述整体媒体时间线及创建工具。 + +段描述整体媒体时间线、创建工具以及可选的标题信息。 +`getSegments()` 检索包含时长和创建细节的段对象集合。 ```java import com.groupdocs.metadata.Metadata; @@ -149,11 +190,13 @@ public class ReadMatroskaSegmentInformation { ``` **关键点** -- `getSegments()` 返回一个集合;每个段可以拥有自己的标题、时长和创建应用程序详情。 -- 对于构建播放列表或验证编码参数非常有用。 +- `getSegments()` 返回一个集合;每个段可拥有自己的标题、时长和创建应用信息。 +- 这些数据对于构建播放列表或在批量文件中验证编码参数非常有用。 ### 读取 Matroska 标签元数据 -标签存储人类可读的信息,如标题、艺术家或自定义备注。 + +标签存储人类可读的信息,如标题、艺术家或自定义备注。 +`getTags()` 返回与文件关联的标签条目列表。 ```java import com.groupdocs.metadata.Metadata; @@ -184,10 +227,12 @@ public class ReadMatroskaTagMetadata { **关键点** - 标签按 `targetType`(例如 `movie`、`track`)组织。 -- `simpleTag` 条目保存键/值对,例如 `TITLE=My Video`。 +- `simpleTag` 条目保存键/值对,如 `TITLE=My Video`。 ### 读取 Matroska 轨道元数据 -轨道代表单独的音频、视频或字幕流。 + +轨道代表容器内的音频、视频或字幕流。 +`getTracks()` 提供对每条轨道技术规格的访问。 ```java import com.groupdocs.metadata.Metadata; @@ -212,46 +257,50 @@ public class ReadMatroskaTrackMetadata { ``` **关键点** -- `track.getType()` 告诉您它是视频、音频还是字幕。 -- `codecId` 可用于识别编解码器(例如 `V_MPEG4/ISO/AVC`)。 -- 这些数据对转码流水线或质量检查至关重要。 +- `track.getType()` 告诉您流是视频、音频还是字幕。 +- `codecId` 标识编解码器(例如 `V_MPEG4/ISO/AVC`)。 +- 这些信息对转码流水线、质量检查和动态流媒体决策至关重要。 + +## 读取 mkv 元数据 java 的常见用例 -## 读取 mkv metadata java 的常见用例 -- **媒体目录** – 用标题、时长和语言代码填充数据库表。 -- **自动化质量检查** – 在发布前验证每个文件是否包含必需的标签。 -- **动态流媒体** – 根据用户偏好选择正确的音频/字幕轨道。 -- **内容迁移** – 提取一次元数据后,将其注入新存储系统。 +- **媒体目录** – 将标题、时长和语言代码填充到数据库表中,以实现快速搜索。 +- **自动化质量控制** – 在发布前验证每个文件是否包含必需标签并符合编解码器标准。 +- **动态流媒体** – 在运行时根据用户偏好选择合适的音频或字幕轨道。 +- **内容迁移** – 一次提取元数据后,将其注入新存储系统或内容分发网络。 ## 常见问题与故障排除 -| 症状 | 可能原因 | 解决办法 | +| 症状 | 可能原因 | 解决方案 | |------|----------|----------| -| `NullPointerException` 在访问 `getEbmlHeader()` 时出现 | 文件路径不正确或文件未找到 | 检查 `new Metadata("...")` 中的路径并确保文件存在。 | +| 访问 `getEbmlHeader()` 时出现 `NullPointerException` | 文件路径不正确或文件未找到 | 检查 `new Metadata("...")` 中的路径,并确保磁盘上存在该文件。 | | 未返回标签 | MKV 文件缺少标签元素 | 使用包含元数据标签的媒体文件(例如通过 MKVToolNix 添加的)。 | -| 大文件处理缓慢 | 堆内存不足 | 增加 JVM 堆内存(`-Xmx2g` 或更高),或在可能的情况下分块处理文件。 | +| 大文件处理缓慢 | 堆内存不足 | 增加 JVM 堆内存 (`-Xmx2g` 或更高),或在可能的情况下分块处理文件。 | ## 常见问答 **问:我可以使用同一库提取其他视频格式的元数据吗?** -**答:** 是的,GroupDocs.Metadata 支持 MP4、AVI、MOV 等多种格式。API 使用方式相似,只需使用相应的根包类即可。 +答:可以,GroupDocs.Metadata 支持 MP4、AVI、MOV 等众多格式。API 使用方式相同——只需针对相应格式使用对应的根包类。 **问:生产环境是否需要许可证?** -**答:** 许可证可解除试用限制并提供完整功能。库在试用模式下可用于评估。 +答:商业许可证可移除试用限制并解锁全部功能。库在试用模式下可用于评估。 **问:提取过程是否离线进行?** -**答:** 完全离线。只要 JAR 在类路径中,所有元数据读取均在本地完成,无需网络请求。 +答:完全离线。只要 JAR 在类路径中,所有元数据读取均在本地完成,无需网络调用。 -**问:在非常大的 MKV 文件(数 GB)上性能如何?** -**答:** 库会流式读取容器结构,内存占用保持在适度水平,但请确保 JVM 有足够的堆内存以容纳可能的大型标签集合。 +**问:库在处理非常大的 MKV 文件(数 GB)时表现如何?** +答:库采用流式读取容器结构,保持内存使用量适中。确保 JVM 有足够的堆空间来容纳可能的大型标签集合,必要时提升 `-Xmx` 参数。 **问:我可以修改元数据并写回文件吗?** -**答:** GroupDocs.Metadata 主要侧重于读取。写入功能有限,请查阅最新 API 文档了解是否支持写入。 - -## 结论 -现在,您已经拥有使用 GroupDocs.Metadata 进行 **read mkv metadata java** 的完整、可用于生产的指南。通过获取 EBML 头、段信息、标签和轨道细节,您可以驱动媒体目录、自动化质量检查或丰富视频流服务。尝试这些代码片段,将其适配到您的工作流,并探索库对更多格式的支持,以实现更多可能性。 +答:GroupDocs.Metadata 主要侧重于读取。写入支持有限,请参考最新 API 文档了解写回功能。 --- -**最后更新:** 2026-02-21 +**最后更新:** 2026-09-02 **测试环境:** GroupDocs.Metadata 24.12 for Java -**作者:** GroupDocs \ No newline at end of file +**作者:** GroupDocs + +## 相关教程 + +- [How to batch extract mkv subtitles with Java and GroupDocs.Metadata](/metadata/java/audio-video-formats/extract-subtitles-mkv-files-java-groupdocs-metadata/) +- [Extract video metadata java using GroupDocs.Metadata](/metadata/java/audio-video-formats/mastering-avi-metadata-handling-groupdocs-java/) +- [How to Extract FLV Metadata Java with GroupDocs.Metadata](/metadata/java/audio-video-formats/flv-metadata-extraction-groupdocs-java/) \ No newline at end of file diff --git a/content/czech/java/audio-video-formats/extract-matroska-metadata-groupdocs-java/_index.md b/content/czech/java/audio-video-formats/extract-matroska-metadata-groupdocs-java/_index.md index 7a0694f7e..6b2451463 100644 --- a/content/czech/java/audio-video-formats/extract-matroska-metadata-groupdocs-java/_index.md +++ b/content/czech/java/audio-video-formats/extract-matroska-metadata-groupdocs-java/_index.md @@ -1,69 +1,84 @@ --- -date: '2026-02-21' -description: Naučte se, jak číst metadata MKV v Javě pomocí GroupDocs.Metadata, extrahovat - metadata videa v Javě a pracovat s hlavičkami EBML, tagy a stopami. +date: '2026-09-02' +description: Naučte se, jak extrahovat metadata mkv v Javě pomocí GroupDocs.Metadata, + zahrnující EBML hlavičky, tagy, tracks a praktické příklady použití. keywords: -- extract mkv metadata java -- groupdocs.metadata java -- read matroska file -title: Čtení metadat MKV v Javě pomocí GroupDocs.Metadata – kompletní průvodce +- how to extract mkv +- groupdocs metadata java +- extract video metadata java +lastmod: '2026-09-02' +og_description: Jak extrahovat metadata mkv v Javě pomocí GroupDocs.Metadata. Získejte + krok‑za‑krokem návod, rychlé odpovědi a reálné příklady pro katalogizaci videí. +og_image_alt: Guide showing Java code extracting Matroska (MKV) metadata with GroupDocs.Metadata +og_title: Jak extrahovat metadata mkv v Javě s GroupDocs.Metadata +schemas: +- author: GroupDocs + dateModified: '2026-09-02' + description: Learn how to extract mkv metadata in Java using GroupDocs.Metadata, + covering EBML headers, tags, tracks, and practical use cases. + headline: How to extract mkv metadata in Java with GroupDocs.Metadata + type: TechArticle +- questions: + - answer: Yes, GroupDocs.Metadata supports MP4, AVI, MOV, and many more. The API + pattern is identical – just use the appropriate root package class for the format. + question: Can I extract metadata from other video formats with the same library? + - answer: A commercial license removes trial limits and unlocks full functionality. + The library works in trial mode for evaluation purposes. + question: Is a license required for production use? + - answer: Absolutely. Once the JAR is on your classpath, all metadata reads are + performed locally without any network calls. + question: Does the extraction happen offline? + - answer: The library streams the container structure, keeping memory usage modest. + Ensure your JVM has enough heap for any large tag collections, and consider + increasing `-Xmx` if you process extremely large files. + question: How does the library perform on very large MKV files (several GB)? + - answer: GroupDocs.Metadata primarily focuses on reading. Write support is limited; + refer to the latest API documentation for any write‑back capabilities. + question: Can I modify the metadata and write it back to the file? + type: FAQPage +tags: +- extract mkv +- groupdocs metadata +- java video processing +- matroska metadata +- metadata extraction +title: Jak extrahovat metadata mkv v Javě s GroupDocs.Metadata type: docs url: /cs/java/audio-video-formats/extract-matroska-metadata-groupdocs-java/ weight: 1 --- - 24.12 for Java +# Jak extrahovat metadata mkv v Javě pomocí GroupDocs.Metadata -**Author:** GroupDocs +In this comprehensive guide you’ll learn **jak extrahovat metadata mkv v Javě** using the GroupDocs.Metadata library. Whether you are building a media catalog, validating encoding parameters, or automating thumbnail generation, reading Matroska (MKV) metadata programmatically saves countless manual hours. We’ll walk through the why, the prerequisites, the exact setup steps, and detailed code snippets that expose EBML headers, segment information, tags, and track data. -Translate labels but keep dates. - -**Last Updated:** -> "**Poslední aktualizace:**". Keep date. - -**Tested With:** -> "**Testováno s:**" - -**Author:** -> "**Autor:**" - -Now produce final markdown with all translations. - -Make sure to keep code block placeholders unchanged. +## Rychlé odpovědi +- **Co znamená “read mkv metadata java”?** Jedná se o programatické získávání metadat kontejneru Matroska (tituly, kodeky, délky atd.) z MKV souborů pomocí Javy. +- **Kterou knihovnu mám použít?** GroupDocs.Metadata pro Javu nabízí plnohodnotné, výkonné API pro Matrosku a více než 50 dalších formátů. +- **Potřebuji licenci?** Bezplatná zkušební verze funguje pro hodnocení; komerční licence odstraňuje všechna omezení zkušební verze. +- **Mohu číst i jiné formáty?** Ano – stejné API čte MP4, AVI, MOV, MP3 a mnoho dalších kontejnerů. +- **Je při běhu vyžadován přístup k internetu?** Ne – veškeré získávání probíhá lokálně po umístění JAR souboru na classpath. -Let's craft final output.# Čtení MKV metadat v Javě s GroupDocs.Metadata +## Co jsou metadata Matroska (MKV)? +Matroska (MKV) metadata jsou soubor strukturálních a popisných informací uložených uvnitř kontejneru Matroska, včetně EBML hlavičky (verze souboru a typ dokumentu), detailů segmentu (délka, aplikace pro multiplexování), uživatelem definovaných tagů (tituly, popisy) a specifikací stop (ID kodeků audio/video, jazyk, bitrate). Přístup k těmto datům vám umožní vytvářet prohledávatelné katalogy, ověřovat integritu souborů nebo řídit automatizované workflow, jako je generování náhledových obrázků. -Multimediální soubory jsou všude a schopnost **read mkv metadata java** je nezbytná pro správu médií, katalogizaci a analytiku. V tomto tutoriálu zjistíte, proč je důležité extrahovat metadata z kontejnerů Matroska, jak nastavit GroupDocs.Metadata a krok za krokem kód pro získání EBML hlaviček, informací o segmentech, tagů a dat stop. Ať už vytváříte video katalog, ověřujete parametry kódování nebo automaticky generujete miniatury, tento průvodce vám poskytne vše, co potřebujete. +## Proč číst metadata mkv v Javě? +Čtení MKV metadat z Javy vám umožní **automatizovat** katalogizaci tisíců video souborů, **ověřit** požadavky na kodeky a jazyky před publikací a **naplnit** prohledávatelné databáze tituly, délkami a jazyky stop. Poskytuje také **jediný kódový základ** pro získávání video metadat z různých kontejnerů, čímž snižuje údržbové náklady a zajišťuje konzistentní kontrolu kvality napříč vaším mediálním pipeline. -## Rychlé odpovědi -- **Co znamená “read mkv metadata java”?** Jedná se o proces programatického čtení metadat z MKV souborů pomocí Javy. -- **Kterou knihovnu mám použít?** GroupDocs.Metadata for Java poskytuje komplexní API pro soubory Matroska. -- **Potřebuji licenci?** Bezplatná zkušební verze funguje pro hodnocení; licence odstraňuje omezení používání. -- **Mohu číst i jiné formáty?** Ano, stejná knihovna podporuje MP4, AVI, MP3 a mnoho dalších. -- **Je při běhu vyžadován přístup k internetu?** Ne, veškeré extrahování probíhá lokálně po přidání knihovny do projektu. +## Proč používat GroupDocs.Metadata pro Javu? +GroupDocs.Metadata pro Javu je vyspělá knihovna, která podporuje **50+ vstupních a výstupních formátů**, včetně Matrosky, MP4, AVI a MOV. Streamuje struktury kontejneru, takže spotřeba paměti zůstává nízká i u souborů o velikosti několika gigabajtů. API abstrahuje nízkoúrovňové parsování EBML, takže se můžete soustředit na obchodní logiku. Integrace je tak jednoduchá jako přidání jedné Maven závislosti a knihovna je průběžně aktualizována pro podporu nejnovějších specifikací kodeků. -## Co jsou metadata Matroska (MKV)? -Matroska je otevřený, flexibilní kontejnerový formát. Její metadata zahrnují EBML hlavičku (verze souboru, typ dokumentu), podrobnosti o segmentu (délka, aplikace pro multiplexování), tagy (tituly, popisy) a specifikace stop (audio/video kodeky, jazyk). Přístup k těmto datům vám umožní vytvářet mediální katalogy, ověřovat integritu souboru nebo automaticky generovat miniatury. - -## Proč číst mkv metadata java? -- **Automatizace** – Automaticky získávejte podrobnosti pro velké video knihovny. -- **Kontrola kvality** – Ověřte ID kodeků, délky a jazyky stop před publikací. -- **Vyhledávání a objevování** – Naplňte prohledávatelné databáze tituly, jazyky a časovými razítky. -- **Konzistence napříč formáty** – Použijte stejný kód pro extrahování video metadat java z jiných kontejnerů (MP4, AVI, atd.). - -## Proč použít GroupDocs.Metadata pro Javu? -- **Kompletní API** – Zpracovává EBML, segmenty, tagy a stopy bez nízkoúrovňového parsování. -- **Optimalizovaný výkon** – Pracuje efektivně i s multi‑gigabajtovými soubory. -- **Podpora napříč formáty** – Stejný vzor kódu platí pro mnoho audio/video kontejnerů. -- **Jednoduchá integrace s Maven** – Přidejte jedinou závislost a začněte extrahovat. - -## Požadavky -- **GroupDocs.Metadata for Java** verze 24.12 nebo novější. -- Nainstalovaný Java Development Kit (JDK). -- Maven (nebo ruční správa JAR souborů). -- Soubor MKV pro experimentování (umístěte jej do `YOUR_DOCUMENT_DIRECTORY`). +## Předpoklady +- **GroupDocs.Metadata pro Javu** verze 24.12 nebo novější. +- Java Development Kit (JDK) 8 nebo novější nainstalovaný. +- Maven (nebo ruční správa JAR) pro správu závislostí. +- Soubor MKV pro testování, umístěný ve složce, na kterou můžete odkazovat z kódu (např. `YOUR_DOCUMENT_DIRECTORY`). ## Nastavení GroupDocs.Metadata pro Javu -Přidejte knihovnu do svého projektu pomocí Maven nebo stáhněte JAR přímo. -**Maven:** +GroupDocs.Metadata pro Javu je knihovna, která umožňuje čtení metadat z více než 50 formátů souborů, včetně Matrosky (MKV). Přidejte ji do svého projektu pomocí Maven nebo stáhněte JAR ručně. + +**Maven:** ```xml @@ -83,13 +98,15 @@ Přidejte knihovnu do svého projektu pomocí Maven nebo stáhněte JAR přímo. ``` **Přímé stažení:** -Pokud raději nepoužíváte Maven, stáhněte nejnovější verzi z [GroupDocs.Metadata for Java releases](https://releases.groupdocs.com/metadata/java/). +If you prefer not using Maven, download the latest version from [GroupDocs.Metadata for Java releases](https://releases.groupdocs.com/metadata/java/). ### Získání licence -Začněte s bezplatnou zkušební verzí pro vyzkoušení funkcí. Pro produkční použití zakupte licenci nebo získáte dočasnou licenci na [GroupDocs](https://purchase.groupdocs.com/temporary-license/), která odstraní omezení zkušební verze. + +Start with a free trial to explore features. For production use, purchase a license or obtain a temporary one from [GroupDocs](https://purchase.groupdocs.com/temporary-license/) to remove trial limitations. ### Základní inicializace a nastavení -Níže je minimální kód potřebný k otevření souboru MKV pomocí GroupDocs.Metadata. + +Below is the minimal code needed to open an MKV file with GroupDocs.Metadata. ```java import com.groupdocs.metadata.Metadata; @@ -105,11 +122,15 @@ public class MetadataExtraction { } ``` -## Jak číst mkv metadata java pomocí GroupDocs.Metadata -Nyní se ponoříme do jednotlivých oblastí metadat, které můžete číst. +## Jak číst metadata mkv v Javě pomocí GroupDocs.Metadata + +`Metadata` is the main class that represents an MKV file and provides access to its metadata. +Load your MKV file with `new Metadata("path/to/file.mkv")` and call the appropriate getters – `getRootPackageGeneric()`, `getSegments()`, `getTags()`, and `getTracks()` – to retrieve each metadata section. This single call chain gives you full visibility into the EBML header, segment information, user tags, and individual track details without writing any low‑level parsing logic. + +### Čtení EBML hlavičky Matroska -### Čtení Matroska EBML hlavičky -EBML hlavička ukládá základní informace o souboru, jako je verze a typ dokumentu. +The EBML header stores core file information such as version, document type, and file size. +`getRootPackageGeneric()` returns the EBML header package of the opened file. ```java import com.groupdocs.metadata.Metadata; @@ -133,11 +154,13 @@ public class ReadMatroskaEBMLHeader { ``` **Klíčové body** -- `getRootPackageGeneric()` vám poskytuje vstupní bod balíčku Matroska. -- EBML vlastnosti (`docType`, `version`, atd.) vám pomáhají ověřit kompatibilitu souboru. +- `getRootPackageGeneric()` vrací vstupní bod balíčku Matroska. +- EBML vlastnosti (`docType`, `version`, atd.) vám umožní ověřit kompatibilitu souboru před podrobnějším zpracováním. ### Čtení informací o segmentu Matroska -Segmenty popisují celkovou časovou osu média a nástroje pro vytvoření. + +Segments describe the overall media timeline, creation tools, and optional title information. +`getSegments()` retrieves a collection of segment objects containing duration and creation details. ```java import com.groupdocs.metadata.Metadata; @@ -166,11 +189,13 @@ public class ReadMatroskaSegmentInformation { ``` **Klíčové body** -- `getSegments()` vrací kolekci; každý segment může mít svůj vlastní název, délku a podrobnosti o aplikaci, která jej vytvořila. -- Užitečné pro tvorbu playlistů nebo ověřování parametrů kódování. +- `getSegments()` vrací kolekci; každý segment může mít vlastní název, délku a podrobnosti o aplikaci vytvoření. +- Tato data jsou užitečná pro tvorbu playlistů nebo ověřování parametrů kódování napříč dávkou souborů. ### Čtení metadat tagů Matroska -Tagy ukládají lidsky čitelné informace jako tituly, umělce nebo vlastní poznámky. + +Tags store human‑readable information like titles, artists, or custom notes. +`getTags()` returns the list of tag entries associated with the file. ```java import com.groupdocs.metadata.Metadata; @@ -201,10 +226,12 @@ public class ReadMatroskaTagMetadata { **Klíčové body** - Tagy jsou organizovány podle `targetType` (např. `movie`, `track`). -- `simpleTag` položky obsahují páry klíč/hodnota jako `TITLE=My Video`. +- `simpleTag` položky obsahují páry klíč/hodnota, např. `TITLE=My Video`. ### Čtení metadat stop Matroska -Stopy představují jednotlivé audio, video nebo titulkové streamy. + +Tracks represent individual audio, video, or subtitle streams inside the container. +`getTracks()` provides access to each track's technical specifications. ```java import com.groupdocs.metadata.Metadata; @@ -229,45 +256,50 @@ public class ReadMatroskaTrackMetadata { ``` **Klíčové body** -- `track.getType()` vám říká, zda jde o video, audio nebo titulky. -- `codecId` vám umožňuje identifikovat kodek (např. `V_MPEG4/ISO/AVC`). -- Tato data jsou nezbytná pro transkódovací pipeline nebo kontrolu kvality. +- `track.getType()` určuje, zda je stream video, audio nebo titulky. +- `codecId` identifikuje kodek (např. `V_MPEG4/ISO/AVC`). +- Tyto informace jsou nezbytné pro transkódovací pipeline, kontrolu kvality a rozhodování o dynamickém streamování. -## Běžné případy použití pro čtení mkv metadata java -- **Mediální katalogy** – Naplňte databázové tabulky tituly, délkami a kódy jazyků. -- **Automatizovaná kontrola kvality** – Ověřte, že každý soubor obsahuje požadované tagy před publikací. -- **Dynamické streamování** – Vyberte správnou audio/titulkovou stopu podle preferencí uživatele. -- **Migrace obsahu** – Extrahujte metadata jednou a poté je vložte do nového úložného systému. +## Běžné případy použití pro čtení metadat mkv v Javě + +- **Mediální katalogy** – Naplňte databázové tabulky tituly, délkami a jazykovými kódy pro rychlé vyhledávání. +- **Automatizovaná kontrola kvality** – Ověřte, že každý soubor obsahuje požadované tagy a odpovídá standardům kodeků před vydáním. +- **Dynamické streamování** – Vyberte vhodnou audio nebo titulkovou stopu na základě uživatelských preferencí během běhu. +- **Migrace obsahu** – Extrahujte metadata jednou, poté je vložte do nového úložného systému nebo CDN. ## Běžné problémy a řešení -| Symptom | Předpokládaná příčina | Řešení | -|---------|------------------------|--------| -| `NullPointerException` při přístupu k `getEbmlHeader()` | Cesta k souboru je nesprávná nebo soubor nebyl nalezen | Ověřte cestu v `new Metadata("...")` a ujistěte se, že soubor existuje. | + +| Příznak | Pravděpodobná příčina | Řešení | +|---------|-----------------------|--------| +| `NullPointerException` při přístupu k `getEbmlHeader()` | Cesta k souboru je nesprávná nebo soubor nebyl nalezen | Ověřte cestu v `new Metadata("...")` a ujistěte se, že soubor existuje na disku. | | Nejsou vráceny žádné tagy | Soubor MKV neobsahuje elementy tagů | Použijte mediální soubor, který obsahuje metadata tagy (např. přidané pomocí MKVToolNix). | -| Pomalé zpracování velkých souborů | Nedostatečná paměť heap | Zvyšte heap JVM (`-Xmx2g` nebo vyšší) nebo soubor zpracovávejte po částech, pokud je to možné. | +| Pomalejší zpracování velkých souborů | Nedostatečná paměť heap | Zvyšte heap JVM (`-Xmx2g` nebo vyšší) nebo soubor zpracovávejte po částech, pokud je to možné. | ## Často kladené otázky **Q: Mohu extrahovat metadata z jiných video formátů pomocí stejné knihovny?** -A: Ano, GroupDocs.Metadata podporuje MP4, AVI, MOV a mnoho dalších. Vzor API je podobný – stačí použít odpovídající třídu kořenového balíčku. +A: Ano, GroupDocs.Metadata podporuje MP4, AVI, MOV a mnoho dalších. Vzor API je stejný – stačí použít odpovídající třídu kořenového balíčku pro daný formát. **Q: Je licence vyžadována pro produkční použití?** -A: Licence odstraňuje omezení zkušební verze a poskytuje plnou funkčnost. Knihovna funguje v režimu zkušební verze pro hodnocení. - -**Q: Probíhá extrahování offline?** -A: Rozhodně. Jakmile je JAR na vašem classpath, veškeré čtení metadat se provádí lokálně bez síťových volání. +A: Komerční licence odstraňuje omezení zkušební verze a odemyká plnou funkčnost. Knihovna funguje v režimu zkušební verze pro evaluační účely. -**Q: Jaký je výkon při velmi velkých souborech MKV (několik GB)?** -A: Knihovna streamuje strukturu kontejneru, takže využití paměti zůstává skromné, ale ujistěte se, že vaše JVM má dostatek heap paměti pro případné velké kolekce tagů. +**Q: Probíhá extrakce offline?** +A: Rozhodně. Jakmile je JAR na classpath, všechny čtení metadat jsou prováděny lokálně bez jakýchkoli síťových volání. -**Q: Mohu upravit metadata a zapsat je zpět do souboru?** -A: GroupDocs.Metadata se primárně zaměřuje na čtení. Možnosti zápisu jsou omezené; podívejte se do nejnovější dokumentace API pro případnou podporu zápisu. +**Q: Jak si knihovna vede u velmi velkých MKV souborů (několik GB)?** +A: Knihovna streamuje strukturu kontejneru, což udržuje spotřebu paměti na rozumné úrovni. Ujistěte se, že JVM má dostatek heap paměti pro velké kolekce tagů, a zvažte zvýšení `-Xmx`, pokud zpracováváte extrémně velké soubory. -## Závěr -Nyní máte kompletní, připravený průvodce pro **read mkv metadata java** pomocí GroupDocs.Metadata. Využitím EBML hlaviček, informací o segmentech, tagů a detailů stop můžete napájet mediální katalogy, automatizovat kontroly kvality nebo obohatit služby video streamování. Experimentujte s úryvky kódu, přizpůsobte je svým pracovním postupům a prozkoumejte širší podporu formátů knihovny pro ještě více možností. +**Q: Mohu metadata upravit a zapsat zpět do souboru?** +A: GroupDocs.Metadata se primárně zaměřuje na čtení. Podpora zápisu je omezená; podívejte se do nejnovější dokumentace API pro případné možnosti zápisu. --- -**Poslední aktualizace:** 2026-02-21 +**Poslední aktualizace:** 2026-09-02 **Testováno s:** GroupDocs.Metadata 24.12 for Java -**Autor:** GroupDocs \ No newline at end of file +**Autor:** GroupDocs + +## Související tutoriály + +- [Jak hromadně extrahovat titulky mkv pomocí Javy a GroupDocs.Metadata](/metadata/java/audio-video-formats/extract-subtitles-mkv-files-java-groupdocs-metadata/) +- [Extrahovat video metadata v Javě pomocí GroupDocs.Metadata](/metadata/java/audio-video-formats/mastering-avi-metadata-handling-groupdocs-java/) +- [Jak extrahovat FLV metadata v Javě pomocí GroupDocs.Metadata](/metadata/java/audio-video-formats/flv-metadata-extraction-groupdocs-java/) \ No newline at end of file diff --git a/content/dutch/java/audio-video-formats/extract-matroska-metadata-groupdocs-java/_index.md b/content/dutch/java/audio-video-formats/extract-matroska-metadata-groupdocs-java/_index.md index 0483a251f..3d24efb00 100644 --- a/content/dutch/java/audio-video-formats/extract-matroska-metadata-groupdocs-java/_index.md +++ b/content/dutch/java/audio-video-formats/extract-matroska-metadata-groupdocs-java/_index.md @@ -1,75 +1,88 @@ --- -date: '2026-02-21' -description: Leer hoe je mkv-metadata in Java kunt lezen met GroupDocs.Metadata, video-metadata - in Java kunt extraheren en EBML-headers, tags en tracks kunt verwerken. +date: '2026-09-02' +description: Leer hoe je mkv metadata kunt extraheren in Java met GroupDocs.Metadata, + met uitleg over EBML headers, tags, tracks en praktische use cases. keywords: -- extract mkv metadata java -- groupdocs.metadata java -- read matroska file -title: Lees MKV-metadata in Java met GroupDocs.Metadata – Complete gids +- how to extract mkv +- groupdocs metadata java +- extract video metadata java +lastmod: '2026-09-02' +og_description: Hoe mkv metadata te extraheren in Java met GroupDocs.Metadata. Ontvang + stap‑voor‑stap begeleiding, snelle antwoorden en real‑world voorbeelden voor video + cataloguing. +og_image_alt: Guide showing Java code extracting Matroska (MKV) metadata with GroupDocs.Metadata +og_title: Hoe mkv metadata te extraheren in Java met GroupDocs.Metadata +schemas: +- author: GroupDocs + dateModified: '2026-09-02' + description: Learn how to extract mkv metadata in Java using GroupDocs.Metadata, + covering EBML headers, tags, tracks, and practical use cases. + headline: How to extract mkv metadata in Java with GroupDocs.Metadata + type: TechArticle +- questions: + - answer: Yes, GroupDocs.Metadata supports MP4, AVI, MOV, and many more. The API + pattern is identical – just use the appropriate root package class for the format. + question: Can I extract metadata from other video formats with the same library? + - answer: A commercial license removes trial limits and unlocks full functionality. + The library works in trial mode for evaluation purposes. + question: Is a license required for production use? + - answer: Absolutely. Once the JAR is on your classpath, all metadata reads are + performed locally without any network calls. + question: Does the extraction happen offline? + - answer: The library streams the container structure, keeping memory usage modest. + Ensure your JVM has enough heap for any large tag collections, and consider + increasing `-Xmx` if you process extremely large files. + question: How does the library perform on very large MKV files (several GB)? + - answer: GroupDocs.Metadata primarily focuses on reading. Write support is limited; + refer to the latest API documentation for any write‑back capabilities. + question: Can I modify the metadata and write it back to the file? + type: FAQPage +tags: +- extract mkv +- groupdocs metadata +- java video processing +- matroska metadata +- metadata extraction +title: Hoe mkv metadata te extraheren in Java met GroupDocs.Metadata type: docs url: /nl/java/audio-video-formats/extract-matroska-metadata-groupdocs-java/ weight: 1 --- - voor nog meer mogelijkheden." +# Hoe mkv-metadata te extraheren in Java met GroupDocs.Metadata -Then horizontal rule: "---" keep. - -**Last Updated:** 2026-02-21 -**Tested With:** GroupDocs.Metadata 24.12 for Java -**Author:** GroupDocs - -Translate labels: - -**Last Updated:** -> "**Laatst bijgewerkt:**". Keep date unchanged. - -**Tested With:** -> "**Getest met:**". Keep rest unchanged. - -**Author:** -> "**Auteur:**". Keep GroupDocs unchanged. - -Now produce final markdown with all translations. - -Check we kept all shortcodes: there are none except placeholders. Keep code block placeholders unchanged. - -Make sure to preserve bullet list markers and indentation. - -Now produce final answer.# Lees MKV Metadata Java met GroupDocs.Metadata - -Multimedia‑bestanden zijn overal, en in staat zijn om **read mkv metadata java** te lezen is essentieel voor mediabeheer, catalogisering en analyse. In deze tutorial ontdek je waarom het extraheren van metadata uit Matroska‑containers belangrijk is, hoe je GroupDocs.Metadata instelt, en stap‑voor‑stap code om EBML‑headers, segment‑info, tags en track‑gegevens op te halen. Of je nu een video‑catalogus bouwt, coderingsparameters valideert, of automatisch thumbnails genereert, deze gids biedt je alles wat je nodig hebt. +In deze uitgebreide gids leer je **hoe je mkv-metadata in Java** kunt extraheren met de GroupDocs.Metadata bibliotheek. Of je nu een mediacatalogus bouwt, coderingsparameters valideert, of het genereren van miniaturen automatiseert, het programmatisch lezen van Matroska (MKV) metadata bespaart ontelbare handmatige uren. We lopen door het waarom, de vereisten, de exacte installatie‑stappen en gedetailleerde code‑fragmenten die EBML‑headers, segmentinformatie, tags en track‑gegevens blootleggen. ## Snelle antwoorden -- **Wat betekent “read mkv metadata java”?** Het is het proces van programmatisch lezen van metadata uit MKV‑bestanden met Java. -- **Welke bibliotheek moet ik gebruiken?** GroupDocs.Metadata for Java biedt een uitgebreide API voor Matroska‑bestanden. -- **Heb ik een licentie nodig?** Een gratis proefversie werkt voor evaluatie; een licentie verwijdert gebruikslimieten. -- **Kan ik andere formaten lezen?** Ja, dezelfde bibliotheek ondersteunt MP4, AVI, MP3 en nog veel meer. -- **Is internettoegang vereist tijdens runtime?** Nee, alle extractie gebeurt lokaal nadat de bibliotheek aan je project is toegevoegd. +- **Wat betekent “read mkv metadata java”?** Het is de programmatische extractie van Matroska‑containermetadata (titels, codecs, duur, enz.) uit MKV‑bestanden met Java. +- **Welke bibliotheek moet ik gebruiken?** GroupDocs.Metadata for Java biedt een volledig uitgeruste, high‑performance API voor Matroska en meer dan 50 andere formaten. +- **Heb ik een licentie nodig?** Een gratis proefversie werkt voor evaluatie; een commerciële licentie verwijdert alle proefbeperkingen. +- **Kan ik andere formaten lezen?** Ja – dezelfde API leest MP4, AVI, MOV, MP3 en nog veel meer containers. +- **Is internettoegang vereist tijdens runtime?** Nee – alle extractie gebeurt lokaal nadat de JAR op je classpath staat. ## Wat is Matroska (MKV) metadata? -Matroska is een open, flexibel containerformaat. De metadata omvat de EBML‑header (bestandsversie, documenttype), segmentdetails (duur, mux‑applicatie), tags (titels, beschrijvingen) en trackspecificaties (audio/video‑codecs, taal). Toegang tot deze gegevens stelt je in staat om mediacatalogi te bouwen, bestandsintegriteit te verifiëren of automatisch thumbnails te genereren. -## Waarom read mkv metadata java? -- **Automatisering** – Haal details automatisch op voor grote videobibliotheken. -- **Kwaliteitscontrole** – Valideer codec‑ID's, duur en track‑talen vóór publicatie. -- **Zoeken & ontdekking** – Vul doorzoekbare databases met titels, talen en tijdstempels. -- **Cross‑formaat consistentie** – Gebruik dezelfde codebasis om video‑metadata java uit andere containers (MP4, AVI, enz.) te extraheren. +Matroska (MKV) metadata is de verzameling van structurele en beschrijvende informatie die is opgeslagen in een Matroska‑container, inclusief de EBML‑header (bestandsversie en documenttype), segmentdetails (duur, mux‑applicatie), door de gebruiker gedefinieerde tags (titels, beschrijvingen) en trackspecificaties (audio/video‑codec‑ID's, taal, bitrate). Toegang tot deze gegevens stelt je in staat om doorzoekbare catalogi te bouwen, bestandsintegriteit te verifiëren of geautomatiseerde workflows zoals het genereren van miniaturen aan te sturen. + +## Waarom mkv-metadata lezen in Java? + +Het lezen van MKV‑metadata vanuit Java stelt je in staat om **catalogiseren** van duizenden videobestanden te **automatiseren**, **codec‑ en taalvereisten te valideren** vóór publicatie, en **doorzoekbare databases te vullen** met titels, duur en track‑talen. Het biedt ook een **enkele code‑basis** voor het extraheren van videometadata uit meerdere containers, waardoor onderhoudskosten worden verminderd en consistente kwaliteitscontroles over je mediapijplijn worden gegarandeerd. ## Waarom GroupDocs.Metadata voor Java gebruiken? -- **Volledig uitgeruste API** – Verwerkt EBML, segmenten, tags en tracks zonder low‑level parsing. -- **Prestatie‑geoptimaliseerd** – Werkt efficiënt zelfs bij multi‑gigabyte bestanden. -- **Cross‑formaat ondersteuning** – Zelfde codepatroon geldt voor vele audio/video‑containers. -- **Eenvoudige Maven‑integratie** – Voeg één afhankelijkheid toe en begin met extraheren. + +GroupDocs.Metadata for Java is een volwassen bibliotheek die **meer dan 50 invoer‑ en uitvoerformaten** ondersteunt, waaronder Matroska, MP4, AVI en MOV. Het streamt containerstructuren, zodat het geheugenverbruik laag blijft, zelfs bij multi‑gigabyte bestanden. De API abstraheert low‑level EBML‑parsing, zodat je je kunt concentreren op de bedrijfslogica. Integratie is zo simpel als het toevoegen van één Maven‑dependency, en de bibliotheek wordt continu bijgewerkt om de nieuwste codec‑specificaties te ondersteunen. ## Vereisten -- **GroupDocs.Metadata for Java** versie 24.12 of later. -- Java Development Kit (JDK) geïnstalleerd. -- Maven (of handmatige JAR‑afhandeling). -- Een MKV‑bestand om mee te experimenteren (plaats het in `YOUR_DOCUMENT_DIRECTORY`). +- **GroupDocs.Metadata for Java** versie 24.12 of later. +- Java Development Kit (JDK) 8 of nieuwer geïnstalleerd. +- Maven (of handmatige JAR‑afhandeling) om afhankelijkheden te beheren. +- Een MKV‑bestand voor testen, geplaatst in een map die je vanuit je code kunt refereren (bijv. `YOUR_DOCUMENT_DIRECTORY`). ## GroupDocs.Metadata voor Java instellen -Voeg de bibliotheek toe aan je project met Maven of download de JAR direct. -**Maven:** +GroupDocs.Metadata for Java is een bibliotheek die het lezen van metadata uit meer dan 50 bestandsformaten mogelijk maakt, inclusief Matroska (MKV). Voeg het toe aan je project met Maven of download de JAR handmatig. + +**Maven:** ```xml @@ -92,9 +105,11 @@ Voeg de bibliotheek toe aan je project met Maven of download de JAR direct. Als je liever geen Maven gebruikt, download dan de nieuwste versie van [GroupDocs.Metadata for Java releases](https://releases.groupdocs.com/metadata/java/). ### Licentie‑acquisitie + Begin met een gratis proefversie om de functies te verkennen. Voor productiegebruik koop je een licentie of verkrijg je een tijdelijke licentie via [GroupDocs](https://purchase.groupdocs.com/temporary-license/) om proefbeperkingen te verwijderen. -### Basisinitialisatie en -instelling +### Basisinitialisatie en -configuratie + Hieronder staat de minimale code die nodig is om een MKV‑bestand te openen met GroupDocs.Metadata. ```java @@ -111,11 +126,13 @@ public class MetadataExtraction { } ``` -## Hoe read mkv metadata java te lezen met GroupDocs.Metadata -Nu duiken we in elk metadata‑gebied dat je kunt lezen. +## Hoe mkv-metadata lezen in Java met GroupDocs.Metadata + +`Metadata` is de hoofdklasse die een MKV‑bestand vertegenwoordigt en toegang biedt tot de metadata. Laad je MKV‑bestand met `new Metadata("path/to/file.mkv")` en roep de juiste getters aan – `getRootPackageGeneric()`, `getSegments()`, `getTags()`, en `getTracks()` – om elk metadata‑gedeelte op te halen. Deze enkele aanroepketen geeft je volledige inzage in de EBML‑header, segmentinformatie, gebruikers‑tags en individuele track‑details zonder enige low‑level parsing‑logica te schrijven. ### Matroska EBML‑header lezen -De EBML‑header slaat kernbestandsinformatie op, zoals versie en documenttype. + +De EBML‑header slaat kernbestandsinformatie op zoals versie, documenttype en bestandsgrootte. `getRootPackageGeneric()` retourneert het EBML‑header‑pakket van het geopende bestand. ```java import com.groupdocs.metadata.Metadata; @@ -139,11 +156,12 @@ public class ReadMatroskaEBMLHeader { ``` **Belangrijke punten** -- `getRootPackageGeneric()` geeft je het Matroska‑pakket toegangspunt. -- EBML‑eigenschappen (`docType`, `version`, etc.) helpen je de bestandscompatibiliteit te verifiëren. +- `getRootPackageGeneric()` retourneert het Matroska‑pakket als toegangspunt. +- EBML‑eigenschappen (`docType`, `version`, etc.) laten je de bestandscompatibiliteit verifiëren vóór verdere verwerking. ### Matroska segmentinformatie lezen -Segmenten beschrijven de algemene mediatijdlijn en de creatietools. + +Segments beschrijven de algehele mediatijdlijn, creatietools en optionele titelinformatie. `getSegments()` haalt een collectie segmentobjecten op die duur- en creatiedetails bevatten. ```java import com.groupdocs.metadata.Metadata; @@ -172,11 +190,12 @@ public class ReadMatroskaSegmentInformation { ``` **Belangrijke punten** -- `getSegments()` retourneert een collectie; elk segment kan zijn eigen titel, duur en details van de creatie‑app bevatten. -- Handig voor het bouwen van afspeellijsten of het valideren van coderingsparameters. +- `getSegments()` retourneert een collectie; elk segment kan zijn eigen titel, duur en details van de creatietoepassing bevatten. +- Deze gegevens zijn nuttig voor het bouwen van afspeellijsten of het valideren van coderingsparameters over een batch bestanden. ### Matroska tag‑metadata lezen -Tags slaan menselijk leesbare informatie op, zoals titels, artiesten of aangepaste notities. + +Tags slaan menselijk leesbare informatie op zoals titels, artiesten of aangepaste notities. `getTags()` retourneert de lijst met tag‑items die aan het bestand zijn gekoppeld. ```java import com.groupdocs.metadata.Metadata; @@ -210,7 +229,8 @@ public class ReadMatroskaTagMetadata { - `simpleTag`‑items bevatten sleutel/waarde‑paren zoals `TITLE=My Video`. ### Matroska track‑metadata lezen -Tracks vertegenwoordigen individuele audio-, video‑ of ondertitel‑streams. + +Tracks vertegenwoordigen individuele audio-, video- of ondertitel‑streams binnen de container. `getTracks()` biedt toegang tot de technische specificaties van elke track. ```java import com.groupdocs.metadata.Metadata; @@ -235,45 +255,50 @@ public class ReadMatroskaTrackMetadata { ``` **Belangrijke punten** -- `track.getType()` vertelt je of het video, audio of ondertitels zijn. -- `codecId` laat je de codec identificeren (bijv. `V_MPEG4/ISO/AVC`). -- Deze gegevens zijn essentieel voor transcoding‑pijplijnen of kwaliteitscontroles. +- `track.getType()` geeft aan of de stream video, audio of ondertitels is. +- `codecId` identificeert de codec (bijv. `V_MPEG4/ISO/AVC`). +- Deze informatie is essentieel voor transcoding‑pijplijnen, kwaliteitscontroles en dynamische streaming‑beslissingen. + +## Veelvoorkomende gebruikssituaties voor het lezen van mkv‑metadata in Java -## Veelvoorkomende gebruikssituaties voor read mkv metadata java -- **Mediacatalogi** – Vul databasetabellen met titels, duur en taalcodes. -- **Geautomatiseerde QC** – Verifieer dat elk bestand de vereiste tags bevat vóór publicatie. -- **Dynamische streaming** – Kies de juiste audio-/ondertiteltrack op basis van gebruikersvoorkeuren. -- **Content‑migratie** – Extraheer metadata één keer en injecteer deze vervolgens in een nieuw opslagsysteem. +- **Mediacatalogi** – Vul databasetabellen met titels, duur en taalcodes voor snelle zoekopdrachten. +- **Geautomatiseerde kwaliteitscontrole** – Verifieer dat elk bestand de vereiste tags bevat en voldoet aan codec‑normen vóór release. +- **Dynamische streaming** – Selecteer de juiste audio‑ of ondertiteltrack op basis van gebruikersvoorkeuren tijdens runtime. +- **Contentmigratie** – Extraheer metadata één keer en injecteer deze vervolgens in een nieuw opslagsysteem of content‑delivery netwerk. ## Veelvoorkomende problemen & probleemoplossing + | Symptoom | Waarschijnlijke oorzaak | Oplossing | |----------|--------------------------|-----------| -| `NullPointerException` bij het benaderen van `getEbmlHeader()` | Bestandspad onjuist of bestand niet gevonden | Controleer het pad in `new Metadata("...")` en zorg dat het bestand bestaat. | -| Geen tags geretourneerd | MKV‑bestand mist tag‑elementen | Gebruik een mediabestand dat metadata‑tags bevat (bijv. toegevoegd via MKVToolNix). | -| Trage verwerking bij grote bestanden | Onvoldoende heap‑geheugen | Verhoog de JVM‑heap (`-Xmx2g` of hoger) of verwerk het bestand in delen indien mogelijk. | +| `NullPointerException` when accessing `getEbmlHeader()` | Bestandspad onjuist of bestand niet gevonden | Controleer het pad in `new Metadata("...")` en zorg ervoor dat het bestand op schijf bestaat. | +| No tags returned | MKV‑bestand mist tag‑elementen | Gebruik een mediabestand dat metadata‑tags bevat (bijv. toegevoegd via MKVToolNix). | +| Slow processing on large files | Onvoldoende heap‑geheugen | Verhoog de JVM‑heap (`-Xmx2g` of hoger) of verwerk het bestand in delen indien mogelijk. | ## Veelgestelde vragen -**V: Kan ik metadata uit andere videoformaten extraheren met dezelfde bibliotheek?** -A: Ja, GroupDocs.Metadata ondersteunt MP4, AVI, MOV en nog veel meer. Het API‑patroon is vergelijkbaar—gebruik gewoon de juiste root‑package‑klasse. +**Q: Kan ik metadata uit andere videoformaten extraheren met dezelfde bibliotheek?** +A: Ja, GroupDocs.Metadata ondersteunt MP4, AVI, MOV en nog veel meer. Het API‑patroon is identiek – gebruik gewoon de juiste root‑package‑klasse voor het formaat. -**V: Is een licentie vereist voor productiegebruik?** -A: Een licentie verwijdert proefbeperkingen en biedt volledige functionaliteit. De bibliotheek werkt in proefmodus voor evaluatie. +**Q: Is een licentie vereist voor productiegebruik?** +A: Een commerciële licentie verwijdert proefbeperkingen en ontgrendelt volledige functionaliteit. De bibliotheek werkt in proefmodus voor evaluatiedoeleinden. -**V: Wordt de extractie offline uitgevoerd?** +**Q: Vindt de extractie offline plaats?** A: Absoluut. Zodra de JAR op je classpath staat, worden alle metadata‑lezingen lokaal uitgevoerd zonder netwerkverzoeken. -**V: Hoe presteert dit bij zeer grote MKV‑bestanden (enkele GB)?** -A: De bibliotheek streamt de containerstructuur, waardoor het geheugenverbruik bescheiden blijft, maar zorg ervoor dat je JVM voldoende heap heeft voor eventuele grote tag‑collecties. +**Q: Hoe presteert de bibliotheek bij zeer grote MKV‑bestanden (enkele GB)?** +A: De bibliotheek streamt de containerstructuur, waardoor het geheugenverbruik bescheiden blijft. Zorg ervoor dat je JVM voldoende heap heeft voor grote tag‑collecties, en overweeg het verhogen van `-Xmx` als je extreem grote bestanden verwerkt. -**V: Kan ik de metadata wijzigen en terugschrijven naar het bestand?** -A: GroupDocs.Metadata richt zich voornamelijk op lezen. Schrijfmogelijkheden zijn beperkt; raadpleeg de nieuwste API‑documentatie voor eventuele schrijfondersteuning. - -## Conclusie -Je hebt nu een volledige, productie‑klare gids voor **read mkv metadata java** met GroupDocs.Metadata. Door gebruik te maken van EBML‑headers, segment‑info, tags en track‑details kun je mediacatalogi aandrijven, kwaliteitscontroles automatiseren of videostreaming‑diensten verrijken. Experimenteer met de fragmenten, pas ze aan je workflows aan, en verken de bredere formatondersteuning van de bibliotheek voor nog meer mogelijkheden. +**Q: Kan ik de metadata wijzigen en terugschrijven naar het bestand?** +A: GroupDocs.Metadata richt zich voornamelijk op lezen. Schrijfontwikkeling is beperkt; raadpleeg de nieuwste API‑documentatie voor eventuele terugschrijf‑mogelijkheden. --- -**Laatst bijgewerkt:** 2026-02-21 +**Laatst bijgewerkt:** 2026-09-02 **Getest met:** GroupDocs.Metadata 24.12 for Java -**Auteur:** GroupDocs \ No newline at end of file +**Auteur:** GroupDocs + +## Gerelateerde tutorials + +- [Hoe batch mkv-ondertitels te extraheren met Java en GroupDocs.Metadata](/metadata/java/audio-video-formats/extract-subtitles-mkv-files-java-groupdocs-metadata/) +- [Video‑metadata extraheren in Java met GroupDocs.Metadata](/metadata/java/audio-video-formats/mastering-avi-metadata-handling-groupdocs-java/) +- [Hoe FLV‑metadata te extraheren in Java met GroupDocs.Metadata](/metadata/java/audio-video-formats/flv-metadata-extraction-groupdocs-java/) \ No newline at end of file diff --git a/content/english/java/audio-video-formats/extract-matroska-metadata-groupdocs-java/_index.md b/content/english/java/audio-video-formats/extract-matroska-metadata-groupdocs-java/_index.md index 071d47f69..cd5bd462a 100644 --- a/content/english/java/audio-video-formats/extract-matroska-metadata-groupdocs-java/_index.md +++ b/content/english/java/audio-video-formats/extract-matroska-metadata-groupdocs-java/_index.md @@ -1,52 +1,89 @@ --- -title: "Read MKV Metadata Java with GroupDocs.Metadata – Complete Guide" -description: "Learn how to read mkv metadata java using GroupDocs.Metadata, extract video metadata java, and handle EBML headers, tags, and tracks." -date: "2026-02-21" -weight: 1 -url: "/java/audio-video-formats/extract-matroska-metadata-groupdocs-java/" +date: '2026-09-02' +description: Learn how to extract mkv metadata in Java using GroupDocs.Metadata, covering + EBML headers, tags, tracks, and practical use cases. +images: +- /java/audio-video-formats/extract-matroska-metadata-groupdocs-java/og-image.png keywords: -- extract mkv metadata java -- groupdocs.metadata java -- read matroska file +- how to extract mkv +- groupdocs metadata java +- extract video metadata java +lastmod: '2026-09-02' +og_description: How to extract mkv metadata in Java using GroupDocs.Metadata. Get + step‑by‑step guidance, quick answers, and real‑world examples for video cataloguing. +og_image_alt: Guide showing Java code extracting Matroska (MKV) metadata with GroupDocs.Metadata +og_title: How to extract mkv metadata in Java with GroupDocs.Metadata +schemas: +- author: GroupDocs + dateModified: '2026-09-02' + description: Learn how to extract mkv metadata in Java using GroupDocs.Metadata, + covering EBML headers, tags, tracks, and practical use cases. + headline: How to extract mkv metadata in Java with GroupDocs.Metadata + type: TechArticle +- questions: + - answer: Yes, GroupDocs.Metadata supports MP4, AVI, MOV, and many more. The API + pattern is identical – just use the appropriate root package class for the format. + question: Can I extract metadata from other video formats with the same library? + - answer: A commercial license removes trial limits and unlocks full functionality. + The library works in trial mode for evaluation purposes. + question: Is a license required for production use? + - answer: Absolutely. Once the JAR is on your classpath, all metadata reads are + performed locally without any network calls. + question: Does the extraction happen offline? + - answer: The library streams the container structure, keeping memory usage modest. + Ensure your JVM has enough heap for any large tag collections, and consider + increasing `-Xmx` if you process extremely large files. + question: How does the library perform on very large MKV files (several GB)? + - answer: GroupDocs.Metadata primarily focuses on reading. Write support is limited; + refer to the latest API documentation for any write‑back capabilities. + question: Can I modify the metadata and write it back to the file? + type: FAQPage +tags: +- extract mkv +- groupdocs metadata +- java video processing +- matroska metadata +- metadata extraction +title: How to extract mkv metadata in Java with GroupDocs.Metadata type: docs +url: /java/audio-video-formats/extract-matroska-metadata-groupdocs-java/ +weight: 1 --- -# Read MKV Metadata Java with GroupDocs.Metadata +# How to extract mkv metadata in Java with GroupDocs.Metadata + +In this comprehensive guide you’ll learn **how to extract mkv metadata in Java** using the GroupDocs.Metadata library. Whether you are building a media catalog, validating encoding parameters, or automating thumbnail generation, reading Matroska (MKV) metadata programmatically saves countless manual hours. We’ll walk through the why, the prerequisites, the exact setup steps, and detailed code snippets that expose EBML headers, segment information, tags, and track data. -Multimedia files are everywhere, and being able to **read mkv metadata java** is essential for media management, cataloguing, and analytics. In this tutorial you’ll discover why extracting metadata from Matroska containers matters, how to set up GroupDocs.Metadata, and step‑by‑step code for pulling EBML headers, segment info, tags, and track data. Whether you’re building a video catalog, validating encoding parameters, or generating thumbnails automatically, this guide gives you everything you need. +## Quick answers +- **What does “read mkv metadata java” mean?** It is the programmatic extraction of Matroska container metadata (titles, codecs, durations, etc.) from MKV files using Java. +- **Which library should I use?** GroupDocs.Metadata for Java offers a full‑featured, high‑performance API for Matroska and 50+ other formats. +- **Do I need a license?** A free trial works for evaluation; a commercial license removes all trial limits. +- **Can I read other formats?** Yes – the same API reads MP4, AVI, MOV, MP3, and many more containers. +- **Is internet access required at runtime?** No – all extraction happens locally after the JAR is on your classpath. -## Quick Answers -- **What does “read mkv metadata java” mean?** It’s the process of programmatically reading metadata from MKV files using Java. -- **Which library should I use?** GroupDocs.Metadata for Java provides a comprehensive API for Matroska files. -- **Do I need a license?** A free trial works for evaluation; a license removes usage limits. -- **Can I read other formats?** Yes, the same library supports MP4, AVI, MP3, and many more. -- **Is internet access required at runtime?** No, all extraction happens locally after the library is added to your project. +## What is Matroska (MKV) metadata? -## What is Matroska (MKV) Metadata? -Matroska is an open, flexible container format. Its metadata includes the EBML header (file version, document type), segment details (duration, muxing application), tags (titles, descriptions), and track specifications (audio/video codecs, language). Accessing this data lets you build media catalogs, verify file integrity, or generate thumbnails automatically. +Matroska (MKV) metadata is the collection of structural and descriptive information stored inside a Matroska container, including the EBML header (file version and document type), segment details (duration, muxing application), user‑defined tags (titles, descriptions), and track specifications (audio/video codec IDs, language, bitrate). Accessing this data enables you to build searchable catalogs, verify file integrity, or drive automated workflows such as thumbnail generation. ## Why read mkv metadata java? -- **Automation** – Pull details automatically for large video libraries. -- **Quality control** – Validate codec IDs, durations, and track languages before publishing. -- **Search & discovery** – Populate searchable databases with titles, languages, and timestamps. -- **Cross‑format consistency** – Use the same code base to extract video metadata java from other containers (MP4, AVI, etc.). -## Why Use GroupDocs.Metadata for Java? -- **Full‑featured API** – Handles EBML, segments, tags, and tracks without low‑level parsing. -- **Performance‑optimized** – Works efficiently even with multi‑gigabyte files. -- **Cross‑format support** – Same code pattern applies to many audio/video containers. -- **Simple Maven integration** – Add a single dependency and start extracting. +Reading MKV metadata from Java lets you **automate** cataloguing of thousands of video files, **validate** codec and language requirements before publishing, and **populate** searchable databases with titles, durations, and track languages. It also provides a **single code base** for extracting video metadata from multiple containers, reducing maintenance overhead and ensuring consistent quality checks across your media pipeline. + +## Why use GroupDocs.Metadata for Java? + +GroupDocs.Metadata for Java is a mature library that supports **50+ input and output formats**, including Matroska, MP4, AVI, and MOV. It streams container structures, so memory consumption stays low even for multi‑gigabyte files. The API abstracts low‑level EBML parsing, letting you focus on business logic. Integration is as simple as adding one Maven dependency, and the library is continuously updated to handle the latest codec specifications. ## Prerequisites -- **GroupDocs.Metadata for Java** version 24.12 or later. -- Java Development Kit (JDK) installed. -- Maven (or manual JAR handling). -- An MKV file to experiment with (place it in `YOUR_DOCUMENT_DIRECTORY`). +- **GroupDocs.Metadata for Java** version 24.12 or later. +- Java Development Kit (JDK) 8 or newer installed. +- Maven (or manual JAR handling) to manage dependencies. +- An MKV file for testing, placed in a folder you can reference from your code (e.g., `YOUR_DOCUMENT_DIRECTORY`). -## Setting Up GroupDocs.Metadata for Java -Add the library to your project using Maven or download the JAR directly. +## Setting up GroupDocs.Metadata for Java -**Maven:** +GroupDocs.Metadata for Java is a library that enables reading metadata from over 50 file formats, including Matroska (MKV). Add it to your project with Maven or download the JAR manually. + +**Maven:** ```xml @@ -65,13 +102,15 @@ Add the library to your project using Maven or download the JAR directly. ``` -**Direct Download:** +**Direct download:** If you prefer not using Maven, download the latest version from [GroupDocs.Metadata for Java releases](https://releases.groupdocs.com/metadata/java/). -### License Acquisition +### License acquisition + Start with a free trial to explore features. For production use, purchase a license or obtain a temporary one from [GroupDocs](https://purchase.groupdocs.com/temporary-license/) to remove trial limitations. -### Basic Initialization and Setup +### Basic initialization and setup + Below is the minimal code needed to open an MKV file with GroupDocs.Metadata. ```java @@ -89,10 +128,14 @@ public class MetadataExtraction { ``` ## How to read mkv metadata java with GroupDocs.Metadata -Now we’ll dive into each metadata area you can read. -### Reading Matroska EBML Header -The EBML header stores core file information such as version and document type. +`Metadata` is the main class that represents an MKV file and provides access to its metadata. +Load your MKV file with `new Metadata("path/to/file.mkv")` and call the appropriate getters – `getRootPackageGeneric()`, `getSegments()`, `getTags()`, and `getTracks()` – to retrieve each metadata section. This single call chain gives you full visibility into the EBML header, segment information, user tags, and individual track details without writing any low‑level parsing logic. + +### Reading Matroska EBML header + +The EBML header stores core file information such as version, document type, and file size. +`getRootPackageGeneric()` returns the EBML header package of the opened file. ```java import com.groupdocs.metadata.Metadata; @@ -115,12 +158,14 @@ public class ReadMatroskaEBMLHeader { } ``` -**Key Points** -- `getRootPackageGeneric()` gives you the Matroska package entry point. -- EBML properties (`docType`, `version`, etc.) help you verify file compatibility. +**Key points** +- `getRootPackageGeneric()` returns the Matroska package entry point. +- EBML properties (`docType`, `version`, etc.) let you verify file compatibility before deeper processing. + +### Reading Matroska segment information -### Reading Matroska Segment Information -Segments describe the overall media timeline and creation tools. +Segments describe the overall media timeline, creation tools, and optional title information. +`getSegments()` retrieves a collection of segment objects containing duration and creation details. ```java import com.groupdocs.metadata.Metadata; @@ -148,12 +193,14 @@ public class ReadMatroskaSegmentInformation { } ``` -**Key Points** +**Key points** - `getSegments()` returns a collection; each segment can hold its own title, duration, and creation app details. -- Useful for building playlists or validating encoding parameters. +- This data is useful for building playlists or validating encoding parameters across a batch of files. + +### Reading Matroska tag metadata -### Reading Matroska Tag Metadata -Tags store human‑readable information like titles, artists, or custom notes. +Tags store human‑readable information like titles, artists, or custom notes. +`getTags()` returns the list of tag entries associated with the file. ```java import com.groupdocs.metadata.Metadata; @@ -182,12 +229,14 @@ public class ReadMatroskaTagMetadata { } ``` -**Key Points** +**Key points** - Tags are organized by `targetType` (e.g., `movie`, `track`). - `simpleTag` entries hold key/value pairs such as `TITLE=My Video`. -### Reading Matroska Track Metadata -Tracks represent individual audio, video, or subtitle streams. +### Reading Matroska track metadata + +Tracks represent individual audio, video, or subtitle streams inside the container. +`getTracks()` provides access to each track's technical specifications. ```java import com.groupdocs.metadata.Metadata; @@ -211,46 +260,51 @@ public class ReadMatroskaTrackMetadata { } ``` -**Key Points** -- `track.getType()` tells you if it’s video, audio, or subtitles. -- `codecId` lets you identify the codec (e.g., `V_MPEG4/ISO/AVC`). -- This data is essential for transcoding pipelines or quality checks. +**Key points** +- `track.getType()` tells you if the stream is video, audio, or subtitles. +- `codecId` identifies the codec (e.g., `V_MPEG4/ISO/AVC`). +- This information is essential for transcoding pipelines, quality checks, and dynamic streaming decisions. + +## Common use cases for reading mkv metadata java -## Common Use Cases for reading mkv metadata java -- **Media catalogues** – Populate database tables with titles, durations, and language codes. -- **Automated QC** – Verify that every file contains required tags before publishing. -- **Dynamic streaming** – Choose the correct audio/subtitle track based on user preferences. -- **Content migration** – Extract metadata once, then inject it into a new storage system. +- **Media catalogs** – Populate database tables with titles, durations, and language codes for fast search. +- **Automated quality control** – Verify that every file contains required tags and conforms to codec standards before release. +- **Dynamic streaming** – Select the appropriate audio or subtitle track based on user preferences at runtime. +- **Content migration** – Extract metadata once, then inject it into a new storage system or content‑delivery network. -## Common Issues & Troubleshooting -| Symptom | Likely Cause | Fix | +## Common issues & troubleshooting + +| Symptom | Likely cause | Fix | |---------|--------------|-----| -| `NullPointerException` when accessing `getEbmlHeader()` | File path incorrect or file not found | Verify the path in `new Metadata("...")` and ensure the file exists. | +| `NullPointerException` when accessing `getEbmlHeader()` | File path incorrect or file not found | Verify the path in `new Metadata("...")` and ensure the file exists on disk. | | No tags returned | MKV file lacks tag elements | Use a media file that contains metadata tags (e.g., added via MKVToolNix). | | Slow processing on large files | Insufficient heap memory | Increase JVM heap (`-Xmx2g` or higher) or process the file in chunks if possible. | -## Frequently Asked Questions +## Frequently asked questions **Q: Can I extract metadata from other video formats with the same library?** -A: Yes, GroupDocs.Metadata supports MP4, AVI, MOV, and many more. The API pattern is similar—just use the appropriate root package class. +A: Yes, GroupDocs.Metadata supports MP4, AVI, MOV, and many more. The API pattern is identical – just use the appropriate root package class for the format. **Q: Is a license required for production use?** -A: A license removes trial limits and grants full functionality. The library works in trial mode for evaluation. +A: A commercial license removes trial limits and unlocks full functionality. The library works in trial mode for evaluation purposes. **Q: Does the extraction happen offline?** -A: Absolutely. Once the JAR is on your classpath, all metadata reads are performed locally without network calls. +A: Absolutely. Once the JAR is on your classpath, all metadata reads are performed locally without any network calls. -**Q: How does this perform on very large MKV files (several GB)?** -A: The library streams the container structure, so memory usage stays modest, but ensure your JVM has enough heap for any large tag collections. +**Q: How does the library perform on very large MKV files (several GB)?** +A: The library streams the container structure, keeping memory usage modest. Ensure your JVM has enough heap for any large tag collections, and consider increasing `-Xmx` if you process extremely large files. **Q: Can I modify the metadata and write it back to the file?** -A: GroupDocs.Metadata primarily focuses on reading. Writing capabilities are limited; check the latest API docs for any write support. - -## Conclusion -You now have a complete, production‑ready guide for **read mkv metadata java** using GroupDocs.Metadata. By tapping into EBML headers, segment info, tags, and track details, you can power media catalogs, automate quality checks, or enrich video streaming services. Experiment with the snippets, adapt them to your workflows, and explore the library’s broader format support for even more possibilities. +A: GroupDocs.Metadata primarily focuses on reading. Write support is limited; refer to the latest API documentation for any write‑back capabilities. --- -**Last Updated:** 2026-02-21 +**Last Updated:** 2026-09-02 **Tested With:** GroupDocs.Metadata 24.12 for Java -**Author:** GroupDocs \ No newline at end of file +**Author:** GroupDocs + +## Related Tutorials + +- [How to batch extract mkv subtitles with Java and GroupDocs.Metadata](/metadata/java/audio-video-formats/extract-subtitles-mkv-files-java-groupdocs-metadata/) +- [Extract video metadata java using GroupDocs.Metadata](/metadata/java/audio-video-formats/mastering-avi-metadata-handling-groupdocs-java/) +- [How to Extract FLV Metadata Java with GroupDocs.Metadata](/metadata/java/audio-video-formats/flv-metadata-extraction-groupdocs-java/) \ No newline at end of file diff --git a/content/english/java/audio-video-formats/extract-matroska-metadata-groupdocs-java/og-image.png b/content/english/java/audio-video-formats/extract-matroska-metadata-groupdocs-java/og-image.png new file mode 100644 index 0000000000000000000000000000000000000000..934f93fffa3ba6dc818df5009b09b868fc0ff986 GIT binary patch literal 55323 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 literal 0 HcmV?d00001 diff --git a/content/french/java/audio-video-formats/extract-matroska-metadata-groupdocs-java/_index.md b/content/french/java/audio-video-formats/extract-matroska-metadata-groupdocs-java/_index.md index 6d0cc02ce..2786ba40d 100644 --- a/content/french/java/audio-video-formats/extract-matroska-metadata-groupdocs-java/_index.md +++ b/content/french/java/audio-video-formats/extract-matroska-metadata-groupdocs-java/_index.md @@ -1,54 +1,86 @@ --- -date: '2026-02-21' -description: Apprenez à lire les métadonnées MKV en Java avec GroupDocs.Metadata, - à extraire les métadonnées vidéo en Java et à gérer les en‑têtes EBML, les balises - et les pistes. +date: '2026-09-02' +description: Apprenez à extraire les métadonnées mkv en Java avec GroupDocs.Metadata, + en couvrant les en-têtes EBML, les balises, les pistes et des cas d’utilisation + pratiques. keywords: -- extract mkv metadata java -- groupdocs.metadata java -- read matroska file -title: Lire les métadonnées MKV en Java avec GroupDocs.Metadata – Guide complet +- how to extract mkv +- groupdocs metadata java +- extract video metadata java +lastmod: '2026-09-02' +og_description: Comment extraire les métadonnées mkv en Java avec GroupDocs.Metadata. + Obtenez des instructions étape par étape, des réponses rapides et des exemples concrets + pour le catalogage vidéo. +og_image_alt: Guide showing Java code extracting Matroska (MKV) metadata with GroupDocs.Metadata +og_title: Comment extraire les métadonnées mkv en Java avec GroupDocs.Metadata +schemas: +- author: GroupDocs + dateModified: '2026-09-02' + description: Learn how to extract mkv metadata in Java using GroupDocs.Metadata, + covering EBML headers, tags, tracks, and practical use cases. + headline: How to extract mkv metadata in Java with GroupDocs.Metadata + type: TechArticle +- questions: + - answer: Yes, GroupDocs.Metadata supports MP4, AVI, MOV, and many more. The API + pattern is identical – just use the appropriate root package class for the format. + question: Can I extract metadata from other video formats with the same library? + - answer: A commercial license removes trial limits and unlocks full functionality. + The library works in trial mode for evaluation purposes. + question: Is a license required for production use? + - answer: Absolutely. Once the JAR is on your classpath, all metadata reads are + performed locally without any network calls. + question: Does the extraction happen offline? + - answer: The library streams the container structure, keeping memory usage modest. + Ensure your JVM has enough heap for any large tag collections, and consider + increasing `-Xmx` if you process extremely large files. + question: How does the library perform on very large MKV files (several GB)? + - answer: GroupDocs.Metadata primarily focuses on reading. Write support is limited; + refer to the latest API documentation for any write‑back capabilities. + question: Can I modify the metadata and write it back to the file? + type: FAQPage +tags: +- extract mkv +- groupdocs metadata +- java video processing +- matroska metadata +- metadata extraction +title: Comment extraire les métadonnées mkv en Java avec GroupDocs.Metadata type: docs url: /fr/java/audio-video-formats/extract-matroska-metadata-groupdocs-java/ weight: 1 --- -# Lire les métadonnées MKV Java avec GroupDocs.Metadata +# Comment extraire les métadonnées mkv en Java avec GroupDocs.Metadata -Les fichiers multimédias sont partout, et pouvoir **read mkv metadata java** est essentiel pour la gestion des médias, le catalogage et l'analyse. Dans ce tutoriel, vous découvrirez pourquoi extraire les métadonnées des conteneurs Matroska est important, comment configurer GroupDocs.Metadata, et le code étape par étape pour récupérer les en‑têtes EBML, les informations de segment, les balises et les données de piste. Que vous construisiez un catalogue vidéo, validiez les paramètres d'encodage ou génériez automatiquement des miniatures, ce guide vous fournit tout ce dont vous avez besoin. +Dans ce guide complet, vous apprendrez **comment extraire les métadonnées mkv en Java** en utilisant la bibliothèque GroupDocs.Metadata. Que vous construisiez un catalogue multimédia, validiez les paramètres d'encodage ou automatisiez la génération de vignettes, la lecture programmatique des métadonnées Matroska (MKV) vous fait gagner d'innombrables heures manuelles. Nous parcourrons le pourquoi, les prérequis, les étapes d'installation exactes et des extraits de code détaillés qui exposent les en‑têtes EBML, les informations de segment, les balises et les données de piste. ## Réponses rapides -- **Que signifie « read mkv metadata java » ?** C’est le processus de lecture programmatique des métadonnées des fichiers MKV à l’aide de Java. -- **Quelle bibliothèque devrais-je utiliser ?** GroupDocs.Metadata for Java fournit une API complète pour les fichiers Matroska. -- **Ai‑je besoin d’une licence ?** Un essai gratuit suffit pour l’évaluation ; une licence supprime les limites d’utilisation. -- **Puis‑je lire d’autres formats ?** Oui, la même bibliothèque prend en charge MP4, AVI, MP3 et bien d’autres. -- **Un accès Internet est‑il requis à l’exécution ?** Non, toute l’extraction se fait localement après l’ajout de la bibliothèque à votre projet. +- **Que signifie « read mkv metadata java » ?** Il s'agit de l'extraction programmatique des métadonnées du conteneur Matroska (titres, codecs, durées, etc.) à partir de fichiers MKV en utilisant Java. +- **Quelle bibliothèque devrais‑je utiliser ?** GroupDocs.Metadata for Java offre une API complète, haute performance pour Matroska et plus de 50 autres formats. +- **Ai‑je besoin d'une licence ?** Un essai gratuit suffit pour l'évaluation ; une licence commerciale supprime toutes les limites de la version d'essai. +- **Puis‑je lire d'autres formats ?** Oui – la même API lit les conteneurs MP4, AVI, MOV, MP3 et bien d'autres. +- **Un accès Internet est‑il requis à l'exécution ?** Non – toute l'extraction se fait localement une fois le JAR présent sur votre classpath. -## Qu’est‑ce que les métadonnées Matroska (MKV) ? -Matroska est un format de conteneur ouvert et flexible. Ses métadonnées comprennent l’en‑tête EBML (version du fichier, type de document), les détails du segment (durée, application de multiplexage), les balises (titres, descriptions) et les spécifications des pistes (codecs audio/vidéo, langue). Accéder à ces données vous permet de créer des catalogues multimédias, de vérifier l’intégrité des fichiers ou de générer automatiquement des miniatures. +## Qu'est-ce que les métadonnées Matroska (MKV) ? +Les métadonnées Matroska (MKV) sont l'ensemble des informations structurelles et descriptives stockées à l'intérieur d'un conteneur Matroska, incluant l'en‑tête EBML (version du fichier et type de document), les détails du segment (durée, application de multiplexage), les balises définies par l'utilisateur (titres, descriptions) et les spécifications des pistes (identifiants de codec audio/vidéo, langue, débit). Accéder à ces données vous permet de créer des catalogues consultables, de vérifier l'intégrité des fichiers ou d'alimenter des flux de travail automatisés tels que la génération de vignettes. -## Pourquoi lire mkv metadata java ? -- **Automatisation** – Récupérer les détails automatiquement pour de grandes bibliothèques vidéo. -- **Contrôle qualité** – Valider les IDs de codec, les durées et les langues des pistes avant la publication. -- **Recherche & découverte** – Alimenter des bases de données consultables avec les titres, les langues et les horodatages. -- **Cohérence multi‑format** – Utiliser la même base de code pour extraire les métadonnées vidéo java d’autres conteneurs (MP4, AVI, etc.). +## Pourquoi lire les métadonnées mkv en Java ? +Lire les métadonnées MKV depuis Java vous permet **d'automatiser** le catalogage de milliers de fichiers vidéo, **de valider** les exigences de codec et de langue avant la publication, et **de remplir** des bases de données consultables avec les titres, durées et langues des pistes. Cela fournit également une **base de code unique** pour extraire les métadonnées vidéo de plusieurs conteneurs, réduisant la charge de maintenance et assurant des contrôles de qualité cohérents tout au long de votre pipeline média. ## Pourquoi utiliser GroupDocs.Metadata pour Java ? -- **API complète** – Gère EBML, segments, balises et pistes sans analyse de bas niveau. -- **Optimisé pour la performance** – Fonctionne efficacement même avec des fichiers de plusieurs gigaoctets. -- **Support multi‑format** – Le même modèle de code s’applique à de nombreux conteneurs audio/vidéo. -- **Intégration Maven simple** – Ajoutez une seule dépendance et commencez l’extraction. +GroupDocs.Metadata pour Java est une bibliothèque mature qui prend en charge **plus de 50 formats d'entrée et de sortie**, dont Matroska, MP4, AVI et MOV. Elle parcourt les structures des conteneurs en flux, de sorte que la consommation mémoire reste faible même pour des fichiers de plusieurs gigaoctets. L'API abstrait l'analyse bas‑niveau EBML, vous laissant vous concentrer sur la logique métier. L'intégration est aussi simple que d'ajouter une dépendance Maven, et la bibliothèque est continuellement mise à jour pour gérer les dernières spécifications de codecs. ## Prérequis -- **GroupDocs.Metadata for Java** version 24.12 ou ultérieure. -- Java Development Kit (JDK) installé. -- Maven (ou gestion manuelle des JAR). -- Un fichier MKV pour expérimenter (placez‑le dans `YOUR_DOCUMENT_DIRECTORY`). +- **GroupDocs.Metadata for Java** version 24.12 ou ultérieure. +- Java Development Kit (JDK) 8 ou supérieur installé. +- Maven (ou gestion manuelle des JAR) pour gérer les dépendances. +- Un fichier MKV pour les tests, placé dans un dossier que vous pouvez référencer depuis votre code (par ex., `YOUR_DOCUMENT_DIRECTORY`). ## Configuration de GroupDocs.Metadata pour Java -Ajoutez la bibliothèque à votre projet en utilisant Maven ou téléchargez le JAR directement. -**Maven:** +GroupDocs.Metadata pour Java est une bibliothèque qui permet de lire les métadonnées de plus de 50 formats de fichiers, y compris Matroska (MKV). Ajoutez‑la à votre projet avec Maven ou téléchargez le JAR manuellement. + +**Maven :** ```xml @@ -71,9 +103,11 @@ Ajoutez la bibliothèque à votre projet en utilisant Maven ou téléchargez le Si vous préférez ne pas utiliser Maven, téléchargez la dernière version depuis [GroupDocs.Metadata for Java releases](https://releases.groupdocs.com/metadata/java/). ### Acquisition de licence -Commencez avec un essai gratuit pour explorer les fonctionnalités. Pour une utilisation en production, achetez une licence ou obtenez‑en une temporaire depuis [GroupDocs](https://purchase.groupdocs.com/temporary-license/) afin de supprimer les limitations de l’essai. + +Commencez avec un essai gratuit pour explorer les fonctionnalités. Pour une utilisation en production, achetez une licence ou obtenez‑en une temporaire depuis [GroupDocs](https://purchase.groupdocs.com/temporary-license/) afin de supprimer les limitations de l'essai. ### Initialisation et configuration de base + Voici le code minimal nécessaire pour ouvrir un fichier MKV avec GroupDocs.Metadata. ```java @@ -90,11 +124,15 @@ public class MetadataExtraction { } ``` -## Comment lire mkv metadata java avec GroupDocs.Metadata -Nous allons maintenant explorer chaque zone de métadonnées que vous pouvez lire. +## Comment lire les métadonnées mkv en Java avec GroupDocs.Metadata + +`Metadata` est la classe principale qui représente un fichier MKV et fournit l'accès à ses métadonnées. +Chargez votre fichier MKV avec `new Metadata("path/to/file.mkv")` et appelez les getters appropriés – `getRootPackageGeneric()`, `getSegments()`, `getTags()`, et `getTracks()` – pour récupérer chaque section de métadonnées. Cette chaîne d'appels unique vous donne une visibilité complète sur l'en‑tête EBML, les informations de segment, les balises utilisateur et les détails de chaque piste sans écrire de logique d'analyse bas‑niveau. -### Lecture de l’en‑tête EBML Matroska -L’en‑tête EBML stocke les informations de base du fichier comme la version et le type de document. +### Lecture de l'en‑tête EBML Matroska + +L'en‑tête EBML stocke les informations essentielles du fichier telles que la version, le type de document et la taille du fichier. +`getRootPackageGeneric()` renvoie le paquet d'en‑tête EBML du fichier ouvert. ```java import com.groupdocs.metadata.Metadata; @@ -118,11 +156,13 @@ public class ReadMatroskaEBMLHeader { ``` **Points clés** -- `getRootPackageGeneric()` vous donne le point d’entrée du package Matroska. -- Les propriétés EBML (`docType`, `version`, etc.) vous aident à vérifier la compatibilité du fichier. +- `getRootPackageGeneric()` renvoie le point d'entrée du paquet Matroska. +- Les propriétés EBML (`docType`, `version`, etc.) vous permettent de vérifier la compatibilité du fichier avant un traitement plus approfondi. ### Lecture des informations de segment Matroska -Les segments décrivent la chronologie globale du média et les outils de création. + +Les segments décrivent la chronologie globale du média, les outils de création et les informations de titre facultatives. +`getSegments()` récupère une collection d'objets segment contenant la durée et les détails de création. ```java import com.groupdocs.metadata.Metadata; @@ -151,11 +191,13 @@ public class ReadMatroskaSegmentInformation { ``` **Points clés** -- `getSegments()` renvoie une collection ; chaque segment peut contenir son propre titre, sa durée et les détails de l’application de création. -- Utile pour créer des listes de lecture ou valider les paramètres d’encodage. +- `getSegments()` renvoie une collection ; chaque segment peut contenir son propre titre, sa durée et les détails de l'application de création. +- Ces données sont utiles pour créer des listes de lecture ou valider les paramètres d'encodage sur un lot de fichiers. ### Lecture des métadonnées de balises Matroska -Les balises stockent des informations lisibles par l’homme comme les titres, les artistes ou des notes personnalisées. + +Les balises stockent des informations lisibles par l'homme comme les titres, les artistes ou des notes personnalisées. +`getTags()` renvoie la liste des entrées de balises associées au fichier. ```java import com.groupdocs.metadata.Metadata; @@ -189,7 +231,9 @@ public class ReadMatroskaTagMetadata { - Les entrées `simpleTag` contiennent des paires clé/valeur comme `TITLE=My Video`. ### Lecture des métadonnées de piste Matroska -Les pistes représentent des flux audio, vidéo ou sous‑titres individuels. + +Les pistes représentent les flux audio, vidéo ou sous‑titres individuels à l'intérieur du conteneur. +`getTracks()` donne accès aux spécifications techniques de chaque piste. ```java import com.groupdocs.metadata.Metadata; @@ -214,45 +258,50 @@ public class ReadMatroskaTrackMetadata { ``` **Points clés** -- `track.getType()` indique s’il s’agit de vidéo, d’audio ou de sous‑titres. -- `codecId` vous permet d’identifier le codec (par ex., `V_MPEG4/ISO/AVC`). -- Ces données sont essentielles pour les pipelines de transcodage ou les contrôles de qualité. +- `track.getType()` indique si le flux est vidéo, audio ou sous‑titres. +- `codecId` identifie le codec (par ex., `V_MPEG4/ISO/AVC`). +- Cette information est essentielle pour les pipelines de transcodage, les contrôles de qualité et les décisions de streaming dynamique. + +## Cas d'utilisation courants pour lire les métadonnées mkv en Java -## Cas d’utilisation courants pour lire mkv metadata java -- **Catalogues médias** – Remplir les tables de base de données avec les titres, les durées et les codes de langue. -- **QC automatisé** – Vérifier que chaque fichier contient les balises requises avant la publication. -- **Streaming dynamique** – Choisir la piste audio/sous‑titre correcte selon les préférences de l’utilisateur. -- **Migration de contenu** – Extraire les métadonnées une fois, puis les injecter dans un nouveau système de stockage. +- **Catalogues médias** – Remplir les tables de base de données avec les titres, durées et codes de langue pour une recherche rapide. +- **Contrôle qualité automatisé** – Vérifier que chaque fichier contient les balises requises et respecte les normes de codec avant la diffusion. +- **Streaming dynamique** – Sélectionner la piste audio ou sous‑titre appropriée en fonction des préférences de l'utilisateur à l'exécution. +- **Migration de contenu** – Extraire les métadonnées une fois, puis les injecter dans un nouveau système de stockage ou un réseau de diffusion de contenu. ## Problèmes courants & dépannage + | Symptôme | Cause probable | Solution | |----------|----------------|----------| -| `NullPointerException` when accessing `getEbmlHeader()` | Chemin du fichier incorrect ou fichier introuvable | Vérifiez le chemin dans `new Metadata("...")` et assurez‑vous que le fichier existe. | -| No tags returned | Le fichier MKV ne contient pas d’éléments de balise | Utilisez un fichier média contenant des balises de métadonnées (par ex., ajouté via MKVToolNix). | -| Slow processing on large files | Mémoire heap insuffisante | Augmentez la heap JVM (`-Xmx2g` ou plus) ou traitez le fichier par morceaux si possible. | +| `NullPointerException` lors de l'accès à `getEbmlHeader()` | Chemin du fichier incorrect ou fichier introuvable | Vérifiez le chemin dans `new Metadata("...")` et assurez‑vous que le fichier existe sur le disque. | +| Aucune balise renvoyée | Le fichier MKV ne contient pas d'éléments de balises | Utilisez un fichier média contenant des balises de métadonnées (par ex., ajoutées via MKVToolNix). | +| Traitement lent sur de gros fichiers | Mémoire heap insuffisante | Augmentez la heap JVM (`-Xmx2g` ou plus) ou traitez le fichier par morceaux si possible. | -## Questions fréquemment posées +## Questions fréquentes -**Q : Puis‑je extraire des métadonnées d’autres formats vidéo avec la même bibliothèque ?** -R : Oui, GroupDocs.Metadata prend en charge MP4, AVI, MOV et bien d’autres. Le modèle d’API est similaire — il suffit d’utiliser la classe de package racine appropriée. +**Q : Puis‑je extraire des métadonnées d'autres formats vidéo avec la même bibliothèque ?** +Oui, GroupDocs.Metadata prend en charge MP4, AVI, MOV et bien d'autres. Le modèle d'API est identique – il suffit d'utiliser la classe de paquet racine appropriée pour le format. -**Q : Une licence est‑elle requise pour une utilisation en production ?** -R : Une licence supprime les limites de l’essai et offre la pleine fonctionnalité. La bibliothèque fonctionne en mode essai pour l’évaluation. +**Q : Une licence est‑elle requise pour une utilisation en production ?** +Une licence commerciale supprime les limites de l'essai et débloque toutes les fonctionnalités. La bibliothèque fonctionne en mode essai à des fins d'évaluation. -**Q : L’extraction se fait‑elle hors ligne ?** -R : Absolument. Une fois le JAR sur votre classpath, toutes les lectures de métadonnées sont effectuées localement sans appels réseau. +**Q : L'extraction se fait‑elle hors ligne ?** +Absolument. Une fois le JAR présent sur votre classpath, toutes les lectures de métadonnées sont effectuées localement sans aucun appel réseau. -**Q : Comment cela fonctionne‑t‑il sur des fichiers MKV très volumineux (plusieurs Go) ?** -R : La bibliothèque diffuse la structure du conteneur, donc l’utilisation de mémoire reste modeste, mais assurez‑vous que votre JVM dispose d’une heap suffisante pour d’éventuelles grandes collections de balises. +**Q : Comment la bibliothèque se comporte‑t‑elle sur des fichiers MKV très volumineux (plusieurs Go) ?** +La bibliothèque parcourt la structure du conteneur en flux, maintenant une utilisation de mémoire modeste. Assurez‑vous que votre JVM dispose d'assez de heap pour d'éventuelles grandes collections de balises, et envisagez d'augmenter `-Xmx` si vous traitez des fichiers extrêmement volumineux. -**Q : Puis‑je modifier les métadonnées et les réécrire dans le fichier ?** -R : GroupDocs.Metadata se concentre principalement sur la lecture. Les capacités d’écriture sont limitées ; consultez la documentation API la plus récente pour toute prise en charge de l’écriture. - -## Conclusion -Vous disposez maintenant d’un guide complet, prêt pour la production, pour **read mkv metadata java** avec GroupDocs.Metadata. En exploitant les en‑têtes EBML, les informations de segment, les balises et les détails des pistes, vous pouvez alimenter des catalogues médias, automatiser les contrôles de qualité ou enrichir les services de streaming vidéo. Expérimentez avec les extraits, adaptez‑les à vos flux de travail, et explorez le support de formats plus large de la bibliothèque pour encore plus de possibilités. +**Q : Puis‑je modifier les métadonnées et les réécrire dans le fichier ?** +GroupDocs.Metadata se concentre principalement sur la lecture. Le support d'écriture est limité ; consultez la documentation API la plus récente pour les éventuelles capacités d'écriture. --- -**Dernière mise à jour :** 2026-02-21 +**Dernière mise à jour :** 2026-09-02 **Testé avec :** GroupDocs.Metadata 24.12 for Java -**Auteur :** GroupDocs \ No newline at end of file +**Auteur :** GroupDocs + +## Tutoriels associés + +- [Comment extraire par lots les sous‑titres mkv avec Java et GroupDocs.Metadata](/metadata/java/audio-video-formats/extract-subtitles-mkv-files-java-groupdocs-metadata/) +- [Extraire les métadonnées vidéo java avec GroupDocs.Metadata](/metadata/java/audio-video-formats/mastering-avi-metadata-handling-groupdocs-java/) +- [Comment extraire les métadonnées FLV Java avec GroupDocs.Metadata](/metadata/java/audio-video-formats/flv-metadata-extraction-groupdocs-java/) \ No newline at end of file diff --git a/content/german/java/audio-video-formats/extract-matroska-metadata-groupdocs-java/_index.md b/content/german/java/audio-video-formats/extract-matroska-metadata-groupdocs-java/_index.md index 9ac67a76d..d6d7498b1 100644 --- a/content/german/java/audio-video-formats/extract-matroska-metadata-groupdocs-java/_index.md +++ b/content/german/java/audio-video-formats/extract-matroska-metadata-groupdocs-java/_index.md @@ -1,53 +1,88 @@ --- -date: '2026-02-21' -description: Erfahren Sie, wie Sie MKV-Metadaten in Java mit GroupDocs.Metadata lesen, - Videometadaten in Java extrahieren und EBML-Header, Tags und Tracks verarbeiten. +date: '2026-09-02' +description: Erfahren Sie, wie Sie mkv-Metadaten in Java mit GroupDocs.Metadata extrahieren, + einschließlich EBML-Header, Tags, Tracks und praktischen Anwendungsfällen. keywords: -- extract mkv metadata java -- groupdocs.metadata java -- read matroska file -title: MKV-Metadaten in Java mit GroupDocs.Metadata lesen – Vollständige Anleitung +- how to extract mkv +- groupdocs metadata java +- extract video metadata java +lastmod: '2026-09-02' +og_description: So extrahieren Sie mkv-Metadaten in Java mit GroupDocs.Metadata. Erhalten + Sie Schritt‑für‑Schritt‑Anleitungen, schnelle Antworten und praxisnahe Beispiele + für die Video‑Katalogisierung. +og_image_alt: Guide showing Java code extracting Matroska (MKV) metadata with GroupDocs.Metadata +og_title: So extrahieren Sie mkv-Metadaten in Java mit GroupDocs.Metadata +schemas: +- author: GroupDocs + dateModified: '2026-09-02' + description: Learn how to extract mkv metadata in Java using GroupDocs.Metadata, + covering EBML headers, tags, tracks, and practical use cases. + headline: How to extract mkv metadata in Java with GroupDocs.Metadata + type: TechArticle +- questions: + - answer: Yes, GroupDocs.Metadata supports MP4, AVI, MOV, and many more. The API + pattern is identical – just use the appropriate root package class for the format. + question: Can I extract metadata from other video formats with the same library? + - answer: A commercial license removes trial limits and unlocks full functionality. + The library works in trial mode for evaluation purposes. + question: Is a license required for production use? + - answer: Absolutely. Once the JAR is on your classpath, all metadata reads are + performed locally without any network calls. + question: Does the extraction happen offline? + - answer: The library streams the container structure, keeping memory usage modest. + Ensure your JVM has enough heap for any large tag collections, and consider + increasing `-Xmx` if you process extremely large files. + question: How does the library perform on very large MKV files (several GB)? + - answer: GroupDocs.Metadata primarily focuses on reading. Write support is limited; + refer to the latest API documentation for any write‑back capabilities. + question: Can I modify the metadata and write it back to the file? + type: FAQPage +tags: +- extract mkv +- groupdocs metadata +- java video processing +- matroska metadata +- metadata extraction +title: So extrahieren Sie mkv-Metadaten in Java mit GroupDocs.Metadata type: docs url: /de/java/audio-video-formats/extract-matroska-metadata-groupdocs-java/ weight: 1 --- -# MKV-Metadaten in Java lesen mit GroupDocs.Metadata +# Wie man mkv-Metadaten in Java mit GroupDocs.Metadata extrahiert -Multimedia-Dateien sind überall, und die Möglichkeit, **read mkv metadata java** zu lesen, ist für Medienverwaltung, Katalogisierung und Analysen unerlässlich. In diesem Tutorial erfahren Sie, warum das Extrahieren von Metadaten aus Matroska-Containern wichtig ist, wie Sie GroupDocs.Metadata einrichten und Schritt‑für‑Schritt‑Code zum Abrufen von EBML‑Headern, Segmentinformationen, Tags und Track‑Daten erhalten. Egal, ob Sie einen Videokatalog erstellen, Kodierungsparameter validieren oder automatisch Thumbnails generieren, dieser Leitfaden bietet Ihnen alles, was Sie benötigen. +In diesem umfassenden Leitfaden lernen Sie **wie man mkv-Metadaten in Java** mit der GroupDocs.Metadata-Bibliothek extrahiert. Egal, ob Sie einen Medienkatalog erstellen, Kodierungsparameter validieren oder die Thumbnail-Erstellung automatisieren, das programmgesteuerte Auslesen von Matroska (MKV)-Metadaten spart unzählige manuelle Stunden. Wir gehen auf das Warum, die Voraussetzungen, die genauen Einrichtungsschritte und detaillierte Code‑Snippets ein, die EBML‑Header, Segmentinformationen, Tags und Track‑Daten offenlegen. ## Schnelle Antworten -- **Was bedeutet “read mkv metadata java”?** Es ist der Vorgang, Metadaten aus MKV‑Dateien programmgesteuert mit Java zu lesen. -- **Welche Bibliothek sollte ich verwenden?** GroupDocs.Metadata for Java bietet eine umfassende API für Matroska‑Dateien. -- **Brauche ich eine Lizenz?** Eine kostenlose Testversion funktioniert für die Evaluierung; eine Lizenz entfernt Nutzungslimits. -- **Kann ich andere Formate lesen?** Ja, dieselbe Bibliothek unterstützt MP4, AVI, MP3 und viele weitere. -- **Ist Internetzugriff zur Laufzeit erforderlich?** Nein, die gesamte Extraktion erfolgt lokal, nachdem die Bibliothek zu Ihrem Projekt hinzugefügt wurde. +- **Was bedeutet “read mkv metadata java”?** Es ist das programmgesteuerte Extrahieren von Matroska‑Container‑Metadaten (Titel, Codecs, Dauer usw.) aus MKV‑Dateien mittels Java. +- **Welche Bibliothek sollte ich verwenden?** GroupDocs.Metadata für Java bietet eine voll ausgestattete, leistungsstarke API für Matroska und über 50 weitere Formate. +- **Brauche ich eine Lizenz?** Eine kostenlose Testversion ist für die Evaluierung ausreichend; eine kommerzielle Lizenz entfernt alle Testbeschränkungen. +- **Kann ich andere Formate lesen?** Ja – dieselbe API liest MP4, AVI, MOV, MP3 und viele weitere Container. +- **Ist Internetzugriff zur Laufzeit erforderlich?** Nein – die gesamte Extraktion erfolgt lokal, nachdem das JAR im Klassenpfad ist. -## Was ist Matroska (MKV) Metadaten? -Matroska ist ein offenes, flexibles Container‑Format. Seine Metadaten umfassen den EBML‑Header (Dateiversion, Dokumenttyp), Segmentdetails (Dauer, Mux‑Anwendung), Tags (Titel, Beschreibungen) und Track‑Spezifikationen (Audio/Video‑Codecs, Sprache). Der Zugriff auf diese Daten ermöglicht es Ihnen, Medienkataloge zu erstellen, die Dateiintegrität zu prüfen oder automatisch Thumbnails zu erzeugen. +## Was sind Matroska (MKV)-Metadaten? -## Warum read mkv metadata java? -- **Automation** – Details automatisch für große Videobibliotheken abrufen. -- **Quality control** – Codec‑IDs, Dauer und Track‑Sprachen vor der Veröffentlichung validieren. -- **Search & discovery** – Durchsuchbare Datenbanken mit Titeln, Sprachen und Zeitstempeln füllen. -- **Cross‑format consistency** – Verwenden Sie denselben Code‑Base, um Video‑Metadata‑Java aus anderen Containern (MP4, AVI usw.) zu extrahieren. +Matroska (MKV)-Metadaten sind die Sammlung struktureller und beschreibender Informationen, die in einem Matroska‑Container gespeichert sind, einschließlich des EBML‑Headers (Dateiversion und Dokumenttyp), Segmentdetails (Dauer, Mux‑Anwendung), benutzerdefinierter Tags (Titel, Beschreibungen) und Track‑Spezifikationen (Audio/Video‑Codec‑IDs, Sprache, Bitrate). Der Zugriff auf diese Daten ermöglicht es Ihnen, durchsuchbare Kataloge zu erstellen, die Dateiintegrität zu prüfen oder automatisierte Workflows wie die Thumbnail‑Erstellung zu steuern. + +## Warum mkv-Metadaten in Java lesen? + +Das Lesen von MKV‑Metadaten mit Java ermöglicht es Ihnen, die Katalogisierung von Tausenden von Videodateien zu **automatisieren**, Codec‑ und Sprachanforderungen vor der Veröffentlichung zu **validieren** und durchsuchbare Datenbanken mit Titeln, Laufzeiten und Track‑Sprachen zu **befüllen**. Es bietet zudem eine **einzige Codebasis** zum Extrahieren von Videometadaten aus mehreren Containern, reduziert den Wartungsaufwand und sorgt für konsistente Qualitätsprüfungen in Ihrer Medienpipeline. ## Warum GroupDocs.Metadata für Java verwenden? -- **Full‑featured API** – Verarbeitet EBML, Segmente, Tags und Tracks ohne Low‑Level‑Parsing. -- **Performance‑optimized** – Arbeitet effizient selbst bei Multi‑Gigabyte‑Dateien. -- **Cross‑format support** – Dasselbe Code‑Muster gilt für viele Audio/Video‑Container. -- **Simple Maven integration** – Fügen Sie eine einzige Abhängigkeit hinzu und beginnen Sie mit dem Extrahieren. + +GroupDocs.Metadata für Java ist eine ausgereifte Bibliothek, die **über 50 Eingabe‑ und Ausgabeformate** unterstützt, darunter Matroska, MP4, AVI und MOV. Sie streamt Container‑Strukturen, sodass der Speicherverbrauch selbst bei mehrgigabyte‑großen Dateien gering bleibt. Die API abstrahiert das Low‑Level‑EBML‑Parsing, sodass Sie sich auf die Geschäftslogik konzentrieren können. Die Integration ist so einfach wie das Hinzufügen einer einzigen Maven‑Abhängigkeit, und die Bibliothek wird kontinuierlich aktualisiert, um die neuesten Codec‑Spezifikationen zu unterstützen. ## Voraussetzungen -- **GroupDocs.Metadata for Java** Version 24.12 oder neuer. -- Java Development Kit (JDK) installiert. -- Maven (oder manuelle JAR‑Verwaltung). -- Eine MKV‑Datei zum Experimentieren (legen Sie sie in `YOUR_DOCUMENT_DIRECTORY`). +- **GroupDocs.Metadata für Java** Version 24.12 oder neuer. +- Java Development Kit (JDK) 8 oder neuer installiert. +- Maven (oder manuelle JAR‑Verwaltung) zur Verwaltung der Abhängigkeiten. +- Eine MKV‑Datei zum Testen, abgelegt in einem Ordner, den Sie aus Ihrem Code referenzieren können (z. B. `YOUR_DOCUMENT_DIRECTORY`). ## Einrichtung von GroupDocs.Metadata für Java -Fügen Sie die Bibliothek Ihrem Projekt mittels Maven hinzu oder laden Sie das JAR direkt herunter. -**Maven:** +GroupDocs.Metadata für Java ist eine Bibliothek, die das Lesen von Metadaten aus über 50 Dateiformaten ermöglicht, darunter Matroska (MKV). Fügen Sie sie Ihrem Projekt mit Maven hinzu oder laden Sie das JAR manuell herunter. + +**Maven:** ```xml @@ -70,10 +105,12 @@ Fügen Sie die Bibliothek Ihrem Projekt mittels Maven hinzu oder laden Sie das J Wenn Sie Maven nicht verwenden möchten, laden Sie die neueste Version von [GroupDocs.Metadata for Java releases](https://releases.groupdocs.com/metadata/java/) herunter. ### Lizenzbeschaffung -Beginnen Sie mit einer kostenlosen Testversion, um die Funktionen zu erkunden. Für den Produktionseinsatz kaufen Sie eine Lizenz oder erhalten Sie eine temporäre Lizenz von [GroupDocs](https://purchase.groupdocs.com/temporary-license/), um die Testbeschränkungen zu entfernen. + +Beginnen Sie mit einer kostenlosen Testversion, um die Funktionen zu erkunden. Für den Produktionseinsatz erwerben Sie eine Lizenz oder erhalten Sie eine temporäre Lizenz von [GroupDocs](https://purchase.groupdocs.com/temporary-license/), um die Testbeschränkungen zu entfernen. ### Grundlegende Initialisierung und Einrichtung -Unten finden Sie den minimalen Code, der benötigt wird, um eine MKV‑Datei mit GroupDocs.Metadata zu öffnen. + +Unten finden Sie den minimalen Code, der zum Öffnen einer MKV‑Datei mit GroupDocs.Metadata erforderlich ist. ```java import com.groupdocs.metadata.Metadata; @@ -89,11 +126,15 @@ public class MetadataExtraction { } ``` -## Wie man read mkv metadata java mit GroupDocs.Metadata liest -Jetzt tauchen wir in jeden Metadaten‑Bereich ein, den Sie lesen können. +## Wie man mkv-Metadaten in Java mit GroupDocs.Metadata liest + +`Metadata` ist die Hauptklasse, die eine MKV‑Datei repräsentiert und Zugriff auf deren Metadaten bietet. +Laden Sie Ihre MKV‑Datei mit `new Metadata("path/to/file.mkv")` und rufen Sie die entsprechenden Getter auf – `getRootPackageGeneric()`, `getSegments()`, `getTags()` und `getTracks()` – um jeden Metadatenabschnitt abzurufen. Diese einzelne Aufrufkette gibt Ihnen vollständige Einsicht in den EBML‑Header, Segmentinformationen, Benutzertags und einzelne Track‑Details, ohne Low‑Level‑Parsing‑Logik schreiben zu müssen. ### Lesen des Matroska EBML‑Headers -Der EBML‑Header speichert Kerninformationen der Datei wie Version und Dokumenttyp. + +Der EBML‑Header speichert grundlegende Dateiinformationen wie Version, Dokumenttyp und Dateigröße. +`getRootPackageGeneric()` gibt das EBML‑Header‑Paket der geöffneten Datei zurück. ```java import com.groupdocs.metadata.Metadata; @@ -117,11 +158,13 @@ public class ReadMatroskaEBMLHeader { ``` **Wichtige Punkte** -- `getRootPackageGeneric()` liefert den Einstiegspunkt des Matroska‑Pakets. -- EBML‑Eigenschaften (`docType`, `version` usw.) helfen Ihnen, die Dateikompatibilität zu prüfen. +- `getRootPackageGeneric()` gibt den Einstiegspunkt des Matroska‑Pakets zurück. +- `EBML`‑Eigenschaften (`docType`, `version` usw.) ermöglichen es Ihnen, die Dateikompatibilität vor einer tieferen Verarbeitung zu überprüfen. -### Lesen der Matroska Segment‑Informationen -Segmente beschreiben die gesamte Medienzeitlinie und die Erstellungs‑Werkzeuge. +### Lesen von Matroska‑Segmentinformationen + +Segmente beschreiben die gesamte Medienzeitlinie, Erstellungswerkzeuge und optionale Titelinformationen. +`getSegments()` ruft eine Sammlung von Segmentobjekten ab, die Dauer- und Erstellungsdetails enthalten. ```java import com.groupdocs.metadata.Metadata; @@ -150,11 +193,13 @@ public class ReadMatroskaSegmentInformation { ``` **Wichtige Punkte** -- `getSegments()` gibt eine Sammlung zurück; jedes Segment kann eigenen Titel, Dauer und Details zur Erstellungs‑App enthalten. -- Nützlich zum Erstellen von Playlists oder zum Validieren von Kodierungsparametern. +- `getSegments()` gibt eine Sammlung zurück; jedes Segment kann seinen eigenen Titel, seine Dauer und Details zur Erstellungs‑App enthalten. +- Diese Daten sind nützlich zum Erstellen von Playlists oder zum Validieren von Kodierungsparametern über eine Stapel von Dateien. + +### Lesen von Matroska‑Tag‑Metadaten -### Lesen der Matroska Tag‑Metadaten -Tags speichern menschenlesbare Informationen wie Titel, Künstler oder benutzerdefinierte Notizen. +Tags speichern menschenlesbare Informationen wie Titel, Künstler oder benutzerdefinierte Notizen. +`getTags()` gibt die Liste der mit der Datei verknüpften Tag‑Einträge zurück. ```java import com.groupdocs.metadata.Metadata; @@ -184,11 +229,13 @@ public class ReadMatroskaTagMetadata { ``` **Wichtige Punkte** -- Tags sind nach `targetType` organisiert (z. B. `movie`, `track`). +- Tags sind nach `targetType` (z. B. `movie`, `track`) organisiert. - `simpleTag`‑Einträge enthalten Schlüssel‑/Wert‑Paare wie `TITLE=My Video`. -### Lesen der Matroska Track‑Metadaten -Tracks repräsentieren einzelne Audio‑, Video‑ oder Untertitel‑Streams. +### Lesen von Matroska‑Track‑Metadaten + +Tracks repräsentieren einzelne Audio‑, Video‑ oder Untertitel‑Streams im Container. +`getTracks()` bietet Zugriff auf die technischen Spezifikationen jedes Tracks. ```java import com.groupdocs.metadata.Metadata; @@ -213,45 +260,50 @@ public class ReadMatroskaTrackMetadata { ``` **Wichtige Punkte** -- `track.getType()` gibt an, ob es sich um Video, Audio oder Untertitel handelt. -- `codecId` ermöglicht die Identifizierung des Codecs (z. B. `V_MPEG4/ISO/AVC`). -- Diese Daten sind für Transcoding‑Pipelines oder Qualitätsprüfungen essenziell. +- `track.getType()` gibt an, ob der Stream Video, Audio oder Untertitel ist. +- `codecId` identifiziert den Codec (z. B. `V_MPEG4/ISO/AVC`). +- Diese Informationen sind essenziell für Transcoding‑Pipelines, Qualitätsprüfungen und dynamische Streaming‑Entscheidungen. + +## Häufige Anwendungsfälle für das Lesen von mkv‑Metadaten in Java -## Häufige Anwendungsfälle für read mkv metadata java -- **Media catalogues** – Datenbanktabellen mit Titeln, Dauern und Sprachcodes füllen. -- **Automated QC** – Überprüfen, dass jede Datei die erforderlichen Tags vor der Veröffentlichung enthält. -- **Dynamic streaming** – Den richtigen Audio‑/Untertitel‑Track basierend auf Benutzerpräferenzen auswählen. -- **Content migration** – Metadaten einmal extrahieren und dann in ein neues Speichersystem einfügen. +- **Medienkataloge** – Befüllen Sie Datenbanktabellen mit Titeln, Laufzeiten und Sprachcodes für schnelle Suche. +- **Automatisierte Qualitätskontrolle** – Verifizieren Sie, dass jede Datei die erforderlichen Tags enthält und den Codec‑Standards vor der Veröffentlichung entspricht. +- **Dynamisches Streaming** – Wählen Sie den passenden Audio‑ oder Untertitel‑Track basierend auf den Benutzerpräferenzen zur Laufzeit aus. +- **Content‑Migration** – Extrahieren Sie Metadaten einmal und injizieren Sie sie anschließend in ein neues Speichersystem oder Content‑Delivery‑Network. ## Häufige Probleme & Fehlersuche + | Symptom | Wahrscheinliche Ursache | Lösung | |---------|--------------------------|--------| -| `NullPointerException` beim Zugriff auf `getEbmlHeader()` | Dateipfad ist falsch oder Datei nicht gefunden | Überprüfen Sie den Pfad in `new Metadata("...")` und stellen Sie sicher, dass die Datei existiert. | -| Keine Tags zurückgegeben | MKV-Datei enthält keine Tag-Elemente | Verwenden Sie eine Mediendatei, die Metadaten‑Tags enthält (z. B. hinzugefügt mit MKVToolNix). | +| `NullPointerException` beim Zugriff auf `getEbmlHeader()` | Dateipfad ist falsch oder Datei nicht gefunden | Überprüfen Sie den Pfad in `new Metadata("...")` und stellen Sie sicher, dass die Datei auf dem Datenträger existiert. | +| Keine Tags zurückgegeben | MKV‑Datei enthält keine Tag‑Elemente | Verwenden Sie eine Mediendatei, die Metadaten‑Tags enthält (z. B. hinzugefügt mit MKVToolNix). | | Langsame Verarbeitung bei großen Dateien | Unzureichender Heap‑Speicher | Erhöhen Sie den JVM‑Heap (`-Xmx2g` oder höher) oder verarbeiten Sie die Datei nach Möglichkeit in Teilen. | ## Häufig gestellte Fragen -**Q: Kann ich Metadaten aus anderen Videoformaten mit derselben Bibliothek extrahieren?** -A: Ja, GroupDocs.Metadata unterstützt MP4, AVI, MOV und viele weitere. Das API‑Muster ist ähnlich – verwenden Sie einfach die entsprechende Root‑Package‑Klasse. - -**Q: Ist eine Lizenz für den Produktionseinsatz erforderlich?** -A: Eine Lizenz entfernt die Testbeschränkungen und gewährt die volle Funktionalität. Die Bibliothek funktioniert im Testmodus zur Evaluierung. +**F: Kann ich Metadaten aus anderen Videoformaten mit derselben Bibliothek extrahieren?** +**A:** Ja, GroupDocs.Metadata unterstützt MP4, AVI, MOV und viele weitere. Das API‑Muster ist identisch – verwenden Sie einfach die entsprechende Root‑Package‑Klasse für das Format. -**Q: Erfolgt die Extraktion offline?** -A: Ja. Sobald das JAR im Klassenpfad ist, werden alle Metadaten‑Lesevorgänge lokal ohne Netzwerkaufrufe durchgeführt. +**F: Ist eine Lizenz für den Produktionseinsatz erforderlich?** +**A:** Eine kommerzielle Lizenz entfernt die Testbeschränkungen und schaltet die volle Funktionalität frei. Die Bibliothek funktioniert im Testmodus für Evaluierungszwecke. -**Q: Wie verhält sich das bei sehr großen MKV‑Dateien (mehrere GB)?** -A: Die Bibliothek streamt die Container‑Struktur, sodass der Speicherverbrauch gering bleibt, aber stellen Sie sicher, dass Ihre JVM über genügend Heap für große Tag‑Sammlungen verfügt. +**F: Erfolgt die Extraktion offline?** +**A:** Absolut. Sobald das JAR im Klassenpfad ist, werden alle Metadaten‑Lesevorgänge lokal ohne Netzwerkaufrufe durchgeführt. -**Q: Kann ich die Metadaten ändern und zurück in die Datei schreiben?** -A: GroupDocs.Metadata konzentriert sich hauptsächlich auf das Lesen. Schreibfunktionen sind eingeschränkt; prüfen Sie die neuesten API‑Dokumente für mögliche Schreibunterstützung. +**F: Wie verhält sich die Bibliothek bei sehr großen MKV‑Dateien (mehrere GB)?** +**A:** Die Bibliothek streamt die Container‑Struktur und hält den Speicherverbrauch moderat. Stellen Sie sicher, dass Ihre JVM über ausreichend Heap für große Tag‑Sammlungen verfügt, und erwägen Sie, `-Xmx` zu erhöhen, wenn Sie extrem große Dateien verarbeiten. -## Fazit -Sie haben nun einen vollständigen, produktionsbereiten Leitfaden für **read mkv metadata java** mit GroupDocs.Metadata. Durch das Auslesen von EBML‑Headern, Segmentinformationen, Tags und Track‑Details können Sie Medienkataloge betreiben, Qualitätsprüfungen automatisieren oder Video‑Streaming‑Dienste erweitern. Experimentieren Sie mit den Code‑Snippets, passen Sie sie an Ihre Workflows an und erkunden Sie die breitere Formatunterstützung der Bibliothek für noch mehr Möglichkeiten. +**F: Kann ich die Metadaten ändern und zurück in die Datei schreiben?** +**A:** GroupDocs.Metadata konzentriert sich hauptsächlich auf das Lesen. Schreibunterstützung ist begrenzt; siehe die aktuelle API‑Dokumentation für mögliche Schreib‑Back‑Funktionen. --- -**Zuletzt aktualisiert:** 2026-02-21 -**Getestet mit:** GroupDocs.Metadata 24.12 for Java -**Autor:** GroupDocs \ No newline at end of file +**Zuletzt aktualisiert:** 2026-09-02 +**Getestet mit:** GroupDocs.Metadata 24.12 für Java +**Autor:** GroupDocs + +## Verwandte Tutorials + +- [Wie man MKV-Untertitel stapelweise mit Java und GroupDocs.Metadata extrahiert](/metadata/java/audio-video-formats/extract-subtitles-mkv-files-java-groupdocs-metadata/) +- [Video‑Metadaten in Java mit GroupDocs.Metadata extrahieren](/metadata/java/audio-video-formats/mastering-avi-metadata-handling-groupdocs-java/) +- [Wie man FLV‑Metadaten in Java mit GroupDocs.Metadata extrahiert](/metadata/java/audio-video-formats/flv-metadata-extraction-groupdocs-java/) \ No newline at end of file diff --git a/content/greek/java/audio-video-formats/extract-matroska-metadata-groupdocs-java/_index.md b/content/greek/java/audio-video-formats/extract-matroska-metadata-groupdocs-java/_index.md index 513b99a7f..7a5022c4b 100644 --- a/content/greek/java/audio-video-formats/extract-matroska-metadata-groupdocs-java/_index.md +++ b/content/greek/java/audio-video-formats/extract-matroska-metadata-groupdocs-java/_index.md @@ -1,52 +1,83 @@ --- -date: '2026-02-21' -description: Μάθετε πώς να διαβάζετε μεταδεδομένα mkv Java χρησιμοποιώντας το GroupDocs.Metadata, - να εξάγετε μεταδεδομένα βίντεο Java και να διαχειρίζεστε τις κεφαλίδες EBML, τις - ετικέτες και τα κομμάτια. +date: '2026-09-02' +description: Μάθετε πώς να εξάγετε μεταδεδομένα mkv σε Java χρησιμοποιώντας το GroupDocs.Metadata, + καλύπτοντας κεφαλίδες EBML, ετικέτες, κομμάτια και πρακτικές περιπτώσεις χρήσης. keywords: -- extract mkv metadata java -- groupdocs.metadata java -- read matroska file -title: Ανάγνωση μεταδεδομένων MKV σε Java με το GroupDocs.Metadata – Πλήρης Οδηγός +- how to extract mkv +- groupdocs metadata java +- extract video metadata java +lastmod: '2026-09-02' +og_description: Πώς να εξάγετε μεταδεδομένα mkv σε Java χρησιμοποιώντας το GroupDocs.Metadata. + Λάβετε καθοδήγηση βήμα‑βήμα, γρήγορες απαντήσεις και παραδείγματα από την πραγματική + ζωή για την καταλογοποίηση βίντεο. +og_image_alt: Guide showing Java code extracting Matroska (MKV) metadata with GroupDocs.Metadata +og_title: Πώς να εξάγετε μεταδεδομένα mkv σε Java με το GroupDocs.Metadata +schemas: +- author: GroupDocs + dateModified: '2026-09-02' + description: Learn how to extract mkv metadata in Java using GroupDocs.Metadata, + covering EBML headers, tags, tracks, and practical use cases. + headline: How to extract mkv metadata in Java with GroupDocs.Metadata + type: TechArticle +- questions: + - answer: Yes, GroupDocs.Metadata supports MP4, AVI, MOV, and many more. The API + pattern is identical – just use the appropriate root package class for the format. + question: Can I extract metadata from other video formats with the same library? + - answer: A commercial license removes trial limits and unlocks full functionality. + The library works in trial mode for evaluation purposes. + question: Is a license required for production use? + - answer: Absolutely. Once the JAR is on your classpath, all metadata reads are + performed locally without any network calls. + question: Does the extraction happen offline? + - answer: The library streams the container structure, keeping memory usage modest. + Ensure your JVM has enough heap for any large tag collections, and consider + increasing `-Xmx` if you process extremely large files. + question: How does the library perform on very large MKV files (several GB)? + - answer: GroupDocs.Metadata primarily focuses on reading. Write support is limited; + refer to the latest API documentation for any write‑back capabilities. + question: Can I modify the metadata and write it back to the file? + type: FAQPage +tags: +- extract mkv +- groupdocs metadata +- java video processing +- matroska metadata +- metadata extraction +title: Πώς να εξάγετε μεταδεδομένα mkv σε Java με το GroupDocs.Metadata type: docs url: /el/java/audio-video-formats/extract-matroska-metadata-groupdocs-java/ weight: 1 --- -# Διαβάστε μεταδεδομένα MKV Java με το GroupDocs.Metadata +# Πώς να εξάγετε μεταδεδομένα mkv σε Java με το GroupDocs.Metadata -Τα αρχεία πολυμέσων είναι παντού, και η δυνατότητα **read mkv metadata java** είναι ουσιώδης για τη διαχείριση, την καταλογοποίηση και την ανάλυση μέσων. Σε αυτό το tutorial θα ανακαλύψετε γιατί η εξαγωγή μεταδεδομένων από τα κοντέινερ Matroska είναι σημαντική, πώς να ρυθμίσετε το GroupDocs.Metadata, και κώδικα βήμα‑βήμα για την ανάκτηση των κεφαλίδων EBML, των πληροφοριών τμημάτων, των ετικετών και των δεδομένων κομματιών. Είτε δημιουργείτε έναν κατάλογο βίντεο, είτε επαληθεύετε παραμέτρους κωδικοποίησης, είτε δημιουργείτε μικρογραφίες αυτόματα, αυτός ο οδηγός σας παρέχει όλα όσα χρειάζεστε. +Σε αυτόν τον ολοκληρωμένο οδηγό θα μάθετε **πώς να εξάγετε μεταδεδομένα mkv σε Java** χρησιμοποιώντας τη βιβλιοθήκη GroupDocs.Metadata. Είτε δημιουργείτε έναν κατάλογο μέσων, επαληθεύετε παραμέτρους κωδικοποίησης ή αυτοματοποιείτε τη δημιουργία μικρογραφιών, η προγραμματιστική ανάγνωση μεταδεδομένων Matroska (MKV) εξοικονομεί αμέτρητες ώρες χειροκίνητης εργασίας. Θα περάσουμε από το γιατί, τις προαπαιτούμενες, τα ακριβή βήματα εγκατάστασης και λεπτομερή αποσπάσματα κώδικα που εκθέτουν τις κεφαλίδες EBML, τις πληροφορίες τμημάτων, τις ετικέτες και τα δεδομένα κομματιών. -## Γρήγορες Απαντήσεις -- **Τι σημαίνει “read mkv metadata java”;** Είναι η διαδικασία προγραμματιστικής ανάγνωσης μεταδεδομένων από αρχεία MKV χρησιμοποιώντας Java. -- **Ποια βιβλιοθήκη πρέπει να χρησιμοποιήσω;** Το GroupDocs.Metadata for Java παρέχει ένα ολοκληρωμένο API για αρχεία Matroska. -- **Χρειάζομαι άδεια;** Μια δωρεάν δοκιμή λειτουργεί για αξιολόγηση· μια άδεια αφαιρεί τους περιορισμούς χρήσης. -- **Μπορώ να διαβάσω άλλες μορφές;** Ναι, η ίδια βιβλιοθήκη υποστηρίζει MP4, AVI, MP3 και πολλές άλλες. -- **Απαιτείται πρόσβαση στο διαδίκτυο κατά την εκτέλεση;** Όχι, η εξαγωγή γίνεται τοπικά αφού η βιβλιοθήκη προστεθεί στο έργο σας. +## Γρήγορες απαντήσεις +- **Τι σημαίνει “read mkv metadata java”;** Είναι η προγραμματιστική εξαγωγή των μεταδεδομένων του κοντέινερ Matroska (τίτλοι, κωδικοποιητές, διάρκειες κ.λπ.) από αρχεία MKV χρησιμοποιώντας Java. +- **Ποια βιβλιοθήκη πρέπει να χρησιμοποιήσω;** Το GroupDocs.Metadata για Java προσφέρει ένα πλήρες, υψηλής απόδοσης API για Matroska και 50+ άλλες μορφές. +- **Χρειάζομαι άδεια;** Μια δωρεάν δοκιμή λειτουργεί για αξιολόγηση· μια εμπορική άδεια αφαιρεί όλους τους περιορισμούς της δοκιμής. +- **Μπορώ να διαβάσω άλλες μορφές;** Ναι – το ίδιο API διαβάζει MP4, AVI, MOV, MP3 και πολλά άλλα κοντέινερ. +- **Απαιτείται πρόσβαση στο διαδίκτυο κατά την εκτέλεση;** Όχι – όλη η εξαγωγή γίνεται τοπικά αφού το JAR βρίσκεται στο classpath σας. ## Τι είναι τα μεταδεδομένα Matroska (MKV); -Το Matroska είναι ένα ανοιχτό, ευέλικτο φορμά κοντέινερ. Τα μεταδεδομένα του περιλαμβάνουν την κεφαλίδα EBML (έκδοση αρχείου, τύπος εγγράφου), τις λεπτομέρειες τμήματος (διάρκεια, εφαρμογή μιξάρισμα), τις ετικέτες (τίτλοι, περιγραφές) και τις προδιαγραφές κομματιών (κωδικοποιητές ήχου/βίντεο, γλώσσα). Η πρόσβαση σε αυτά τα δεδομένα σας επιτρέπει να δημιουργήσετε καταλόγους μέσων, να επαληθεύσετε την ακεραιότητα του αρχείου ή να δημιουργήσετε μικρογραφίες αυτόματα. +Τα μεταδεδομένα Matroska (MKV) είναι η συλλογή δομικών και περιγραφικών πληροφοριών που αποθηκεύονται μέσα σε ένα κοντέινερ Matroska, συμπεριλαμβανομένης της κεφαλίδας EBML (έκδοση αρχείου και τύπος εγγράφου), των λεπτομερειών τμήματος (διάρκεια, εφαρμογή μιξάρισμα), των ετικετών που ορίζονται από το χρήστη (τίτλοι, περιγραφές) και των προδιαγραφών κομματιών (κωδικοποιητές ήχου/βίντεο, γλώσσα, bitrate). Η πρόσβαση σε αυτά τα δεδομένα σας επιτρέπει να δημιουργήσετε αναζητήσιμους καταλόγους, να επαληθεύσετε την ακεραιότητα των αρχείων ή να τροφοδοτήσετε αυτοματοποιημένες ροές εργασίας όπως η δημιουργία μικρογραφιών. -## Γιατί να διαβάσετε mkv metadata java; -- **Αυτοματοποίηση** – Ανάκτηση λεπτομερειών αυτόματα για μεγάλες βιβλιοθήκες βίντεο. -- **Έλεγχος ποιότητας** – Επικύρωση κωδικών codec, διάρκειων και γλωσσών κομματιών πριν τη δημοσίευση. -- **Αναζήτηση & ανακάλυψη** – Συμπλήρωση βάσεων δεδομένων με δυνατότητα αναζήτησης με τίτλους, γλώσσες και χρονικές σήμανσεις. -- **Συνεπής διασυνοριακή μορφή** – Χρησιμοποιήστε την ίδια βάση κώδικα για εξαγωγή μεταδεδομένων βίντεο java από άλλα κοντέινερ (MP4, AVI κλπ). +## Γιατί να διαβάσετε μεταδεδομένα mkv σε Java; +Η ανάγνωση μεταδεδομένων MKV από Java σας επιτρέπει να **αυτοματοποιήσετε** την καταλογοποίηση χιλιάδων αρχείων βίντεο, να **επαληθεύσετε** τις απαιτήσεις κωδικοποιητών και γλωσσών πριν από τη δημοσίευση, και να **συμπληρώσετε** βάσεις δεδομένων με τίτλους, διάρκειες και γλώσσες κομματιών. Παρέχει επίσης **ενιαία βάση κώδικα** για την εξαγωγή μεταδεδομένων βίντεο από πολλαπλά κοντέινερ, μειώνοντας το κόστος συντήρησης και εξασφαλίζοντας συνεπείς ελέγχους ποιότητας σε όλη τη ροή μέσων σας. ## Γιατί να χρησιμοποιήσετε το GroupDocs.Metadata για Java; -- **Πλήρες API** – Διαχειρίζεται EBML, τμήματα, ετικέτες και κομμάτια χωρίς χαμηλού επιπέδου parsing. -- **Βελτιστοποιημένη απόδοση** – Λειτουργεί αποδοτικά ακόμη και με αρχεία πολλαπλών γιγαμπάιτ. -- **Υποστήριξη πολλαπλών μορφών** – Το ίδιο πρότυπο κώδικα ισχύει για πολλά κοντέινερ ήχου/βίντεο. -- **Απλή ενσωμάτωση Maven** – Προσθέστε μια εξάρτηση και ξεκινήστε την εξαγωγή. +Το GroupDocs.Metadata για Java είναι μια ώριμη βιβλιοθήκη που υποστηρίζει **50+ μορφές εισόδου και εξόδου**, συμπεριλαμβανομένων των Matroska, MP4, AVI και MOV. Μεταδίδει τις δομές των κοντέινερ, έτσι η κατανάλωση μνήμης παραμένει χαμηλή ακόμη και για αρχεία πολλαπλών gigabyte. Το API αφαιρεί την πολυπλοκότητα του χαμηλού επιπέδου parsing EBML, επιτρέποντάς σας να εστιάσετε στη λογική της εφαρμογής. Η ενσωμάτωση είναι τόσο απλή όσο η προσθήκη μιας εξάρτησης Maven, και η βιβλιοθήκη ενημερώνεται συνεχώς για να υποστηρίζει τις πιο πρόσφατες προδιαγραφές κωδικοποιητών. ## Προαπαιτούμενα -- **GroupDocs.Metadata for Java** έκδοση 24.12 ή νεότερη. -- Java Development Kit (JDK) εγκατεστημένο. -- Maven (ή χειροκίνητη διαχείριση JAR). -- Ένα αρχείο MKV για πειραματισμό (τοποθετήστε το στο `YOUR_DOCUMENT_DIRECTORY`). +- **GroupDocs.Metadata for Java** έκδοση 24.12 ή νεότερη. +- Java Development Kit (JDK) 8 ή νεότερο εγκατεστημένο. +- Maven (ή χειροκίνητη διαχείριση JAR) για τη διαχείριση εξαρτήσεων. +- Ένα αρχείο MKV για δοκιμή, τοποθετημένο σε φάκελο που μπορείτε να αναφέρετε από τον κώδικά σας (π.χ., `YOUR_DOCUMENT_DIRECTORY`). ## Ρύθμιση του GroupDocs.Metadata για Java -Προσθέστε τη βιβλιοθήκη στο έργο σας χρησιμοποιώντας Maven ή κατεβάστε το JAR απευθείας. + +Το GroupDocs.Metadata για Java είναι μια βιβλιοθήκη που επιτρέπει την ανάγνωση μεταδεδομένων από πάνω από 50 μορφές αρχείων, συμπεριλαμβανομένου του Matroska (MKV). Προσθέστε το στο έργο σας με Maven ή κατεβάστε το JAR χειροκίνητα. **Maven:** ```xml @@ -67,14 +98,14 @@ weight: 1 ``` -**Άμεση Λήψη:** -Αν προτιμάτε να μη χρησιμοποιήσετε Maven, κατεβάστε την τελευταία έκδοση από [GroupDocs.Metadata for Java releases](https://releases.groupdocs.com/metadata/java/). +**Άμεση λήψη:** +Αν προτιμάτε να μην χρησιμοποιήσετε Maven, κατεβάστε την τελευταία έκδοση από [εκδόσεις GroupDocs.Metadata για Java](https://releases.groupdocs.com/metadata/java/). -### Απόκτηση Άδειας +### Απόκτηση άδειας Ξεκινήστε με μια δωρεάν δοκιμή για να εξερευνήσετε τις δυνατότητες. Για παραγωγική χρήση, αγοράστε άδεια ή αποκτήστε προσωρινή από το [GroupDocs](https://purchase.groupdocs.com/temporary-license/) για να αφαιρέσετε τους περιορισμούς της δοκιμής. -### Βασική Αρχικοποίηση και Ρύθμιση -Ακολουθεί ο ελάχιστος κώδικας που απαιτείται για το άνοιγμα ενός αρχείου MKV με το GroupDocs.Metadata. +### Βασική αρχικοποίηση και ρύθμιση +Παρακάτω βρίσκεται ο ελάχιστος κώδικας που απαιτείται για το άνοιγμα ενός αρχείου MKV με το GroupDocs.Metadata. ```java import com.groupdocs.metadata.Metadata; @@ -90,11 +121,14 @@ public class MetadataExtraction { } ``` -## Πώς να διαβάσετε mkv metadata java με το GroupDocs.Metadata -Τώρα θα εμβαθύνουμε σε κάθε περιοχή μεταδεδομένων που μπορείτε να διαβάσετε. +## Πώς να διαβάσετε μεταδεδομένα mkv σε Java με το GroupDocs.Metadata + +`Metadata` είναι η κύρια κλάση που αντιπροσωπεύει ένα αρχείο MKV και παρέχει πρόσβαση στα μεταδεδομένα του. +Φορτώστε το αρχείο MKV με `new Metadata("path/to/file.mkv")` και καλέστε τα κατάλληλα getters – `getRootPackageGeneric()`, `getSegments()`, `getTags()`, και `getTracks()` – για να ανακτήσετε κάθε τμήμα μεταδεδομένων. Αυτή η αλυσίδα κλήσεων παρέχει πλήρη ορατότητα στην κεφαλίδα EBML, τις πληροφορίες τμήματος, τις ετικέτες χρήστη και τις λεπτομέρειες κάθε κομματιού χωρίς να γράψετε λογική χαμηλού επιπέδου parsing. -### Ανάγνωση κεφαλίδας Matroska EBML -Η κεφαλίδα EBML αποθηκεύει βασικές πληροφορίες του αρχείου όπως η έκδοση και ο τύπος εγγράφου. +### Ανάγνωση κεφαλίδας EBML Matroska +Η κεφαλίδα EBML αποθηκεύει βασικές πληροφορίες του αρχείου όπως έκδοση, τύπος εγγράφου και μέγεθος αρχείου. +`getRootPackageGeneric()` επιστρέφει το πακέτο κεφαλίδας EBML του ανοικτού αρχείου. ```java import com.groupdocs.metadata.Metadata; @@ -117,12 +151,13 @@ public class ReadMatroskaEBMLHeader { } ``` -**Βασικά Σημεία** -- `getRootPackageGeneric()` σας δίνει το σημείο εισόδου του πακέτου Matroska. -- Οι ιδιότητες EBML (`docType`, `version`, κλπ.) σας βοηθούν να επαληθεύσετε τη συμβατότητα του αρχείου. +**Βασικά σημεία** +- `getRootPackageGeneric()` επιστρέφει το σημείο εισόδου του πακέτου Matroska. +- Οι ιδιότητες EBML (`docType`, `version`, κλπ.) σας επιτρέπουν να επαληθεύσετε τη συμβατότητα του αρχείου πριν από πιο βαθιά επεξεργασία. -### Ανάγνωση Πληροφοριών Τμήματος Matroska -Τα τμήματα περιγράφουν τη συνολική χρονογραμμή των μέσων και τα εργαλεία δημιουργίας. +### Ανάγνωση πληροφοριών τμήματος Matroska +Τα τμήματα περιγράφουν τη συνολική χρονογραμμή μέσων, τα εργαλεία δημιουργίας και προαιρετικές πληροφορίες τίτλου. +`getSegments()` επιστρέφει μια συλλογή· κάθε τμήμα μπορεί να περιέχει τον δικό του τίτλο, διάρκεια και λεπτομέρειες εφαρμογής δημιουργίας. ```java import com.groupdocs.metadata.Metadata; @@ -150,12 +185,13 @@ public class ReadMatroskaSegmentInformation { } ``` -**Βασικά Σημεία** +**Βασικά σημεία** - `getSegments()` επιστρέφει μια συλλογή· κάθε τμήμα μπορεί να περιέχει τον δικό του τίτλο, διάρκεια και λεπτομέρειες εφαρμογής δημιουργίας. -- Χρήσιμο για τη δημιουργία λιστών αναπαραγωγής ή την επαλήθευση παραμέτρων κωδικοποίησης. +- Αυτά τα δεδομένα είναι χρήσιμα για τη δημιουργία λιστών αναπαραγωγής ή την επαλήθευση παραμέτρων κωδικοποίησης σε μια δέσμη αρχείων. -### Ανάγνωση Μεταδεδομένων Ετικετών Matroska -Οι ετικέτες αποθηκεύουν πληροφορίες αναγνώσιμες από άνθρωπο όπως τίτλους, καλλιτέχνες ή προσαρμοσμένες σημειώσεις. +### Ανάγνωση μεταδεδομένων ετικετών Matroska +Οι ετικέτες αποθηκεύουν πληροφορίες αναγνώσιμες από άνθρωπο όπως τίτλοι, καλλιτέχνες ή προσαρμοσμένες σημειώσεις. +`getTags()` επιστρέφει τη λίστα των εγγραφών ετικετών που σχετίζονται με το αρχείο. ```java import com.groupdocs.metadata.Metadata; @@ -184,12 +220,13 @@ public class ReadMatroskaTagMetadata { } ``` -**Βασικά Σημεία** +**Βασικά σημεία** - Οι ετικέτες οργανώνονται κατά `targetType` (π.χ., `movie`, `track`). - Οι καταχωρήσεις `simpleTag` περιέχουν ζεύγη κλειδί/τιμή όπως `TITLE=My Video`. -### Ανάγνωση Μεταδεδομένων Κομματιού Matroska -Τα κομμάτια αντιπροσωπεύουν μεμονωμένα ρεύματα ήχου, βίντεο ή υπότιτλων. +### Ανάγνωση μεταδεδομένων κομματιού Matroska +Τα κομμάτια αντιπροσωπεύουν μεμονωμένα ρεύματα ήχου, βίντεο ή υποτίτλων μέσα στο κοντέινερ. +`getTracks()` παρέχει πρόσβαση στις τεχνικές προδιαγραφές κάθε κομματιού. ```java import com.groupdocs.metadata.Metadata; @@ -213,47 +250,50 @@ public class ReadMatroskaTrackMetadata { } ``` -**Βασικά Σημεία** -- `track.getType()` σας λέει αν είναι βίντεο, ήχος ή υπότιτλοι. -- `codecId` σας επιτρέπει να αναγνωρίσετε τον κωδικοποιητή (π.χ., `V_MPEG4/ISO/AVC`). -- Αυτά τα δεδομένα είναι απαραίτητα για pipelines μετατροπής ή ελέγχους ποιότητας. +**Βασικά σημεία** +- `track.getType()` σας λέει αν η ροή είναι βίντεο, ήχος ή υπότιτλοι. +- `codecId` προσδιορίζει τον κωδικοποιητή (π.χ., `V_MPEG4/ISO/AVC`). +- Αυτές οι πληροφορίες είναι ουσιώδεις για τις διαδικασίες μετατροπής, ελέγχους ποιότητας και δυναμικές αποφάσεις ροής. -## Συνηθισμένες Περιπτώσεις Χρήσης για read mkv metadata java -- **Κατάλογοι μέσων** – Συμπλήρωση πινάκων βάσης δεδομένων με τίτλους, διάρκειες και κωδικούς γλώσσας. -- **Αυτοματοποιημένος Έλεγχος Ποιότητας (QC)** – Επαλήθευση ότι κάθε αρχείο περιέχει τις απαιτούμενες ετικέτες πριν τη δημοσίευση. -- **Δυναμική ροή** – Επιλογή του σωστού ήχου/υπότιτλου βάσει προτιμήσεων χρήστη. -- **Μεταφορά περιεχομένου** – Εξαγωγή μεταδεδομένων μία φορά, έπειτα ενσωμάτωση σε νέο σύστημα αποθήκευσης. +## Συνηθισμένες περιπτώσεις χρήσης για ανάγνωση μεταδεδομένων mkv σε Java +- **Κατάλογοι μέσων** – Συμπληρώστε πίνακες βάσης δεδομένων με τίτλους, διάρκειες και κωδικούς γλώσσας για γρήγορη αναζήτηση. +- **Αυτοματοποιημένος έλεγχος ποιότητας** – Επαληθεύστε ότι κάθε αρχείο περιέχει τις απαιτούμενες ετικέτες και συμμορφώνεται με τα πρότυπα κωδικοποιητών πριν από την κυκλοφορία. +- **Δυναμική ροή** – Επιλέξτε το κατάλληλο κομμάτι ήχου ή υπότιτλου βάσει των προτιμήσεων του χρήστη κατά την εκτέλεση. +- **Μεταφορά περιεχομένου** – Εξάγετε τα μεταδεδομένα μία φορά, στη συνέχεια ενσωματώστε τα σε νέο σύστημα αποθήκευσης ή δίκτυο διανομής περιεχομένου. -## Συνηθισμένα Προβλήματα & Επίλυση +## Συνηθισμένα προβλήματα & αντιμετώπιση -| Symptom | Likely Cause | Fix | -|---------|--------------|-----| -| `NullPointerException` when accessing `getEbmlHeader()` | Λάθος διαδρομή αρχείου ή αρχείο δεν βρέθηκε | Επαληθεύστε τη διαδρομή στο `new Metadata("...")` και βεβαιωθείτε ότι το αρχείο υπάρχει. | +| Σύμπτωμα | Πιθανή αιτία | Διόρθωση | +|----------|--------------|----------| +| `NullPointerException` when accessing `getEbmlHeader()` | Λάθος διαδρομή αρχείου ή αρχείο δεν βρέθηκε | Επαληθεύστε τη διαδρομή στο `new Metadata("...")` και βεβαιωθείτε ότι το αρχείο υπάρχει στο δίσκο. | | No tags returned | Το αρχείο MKV δεν περιέχει στοιχεία ετικετών | Χρησιμοποιήστε ένα αρχείο μέσου που περιέχει ετικέτες μεταδεδομένων (π.χ., προστέθηκαν μέσω MKVToolNix). | | Slow processing on large files | Ανεπαρκής μνήμη heap | Αυξήστε τη μνήμη heap της JVM (`-Xmx2g` ή μεγαλύτερη) ή επεξεργαστείτε το αρχείο σε τμήματα αν είναι δυνατόν. | -## Συχνές Ερωτήσεις - -**Q: Μπορώ να εξάγω μεταδεδομένα από άλλες μορφές βίντεο με την ίδια βιβλιοθήκη;** -A: Ναι, το GroupDocs.Metadata υποστηρίζει MP4, AVI, MOV και πολλές άλλες. Το μοτίβο του API είναι παρόμοιο—απλώς χρησιμοποιήστε την κατάλληλη κλάση ριζικού πακέτου. +## Συχνές ερωτήσεις -**Q: Απαιτείται άδεια για παραγωγική χρήση;** -A: Μια άδεια αφαιρεί τους περιορισμούς της δοκιμής και παρέχει πλήρη λειτουργικότητα. Η βιβλιοθήκη λειτουργεί σε λειτουργία δοκιμής για αξιολόγηση. +**Ε: Μπορώ να εξάγω μεταδεδομένα από άλλες μορφές βίντεο με την ίδια βιβλιοθήκη;** +Α: Ναι, το GroupDocs.Metadata υποστηρίζει MP4, AVI, MOV και πολλά άλλα. Το πρότυπο του API είναι το ίδιο – απλώς χρησιμοποιήστε την κατάλληλη κλάση root package για τη μορφή. -**Q: Η εξαγωγή γίνεται εκτός σύνδεσης;** -A: Απόλυτα. Μόλις το JAR είναι στο classpath σας, όλες οι αναγνώσεις μεταδεδομένων εκτελούνται τοπικά χωρίς κλήσεις δικτύου. +**Ε: Απαιτείται άδεια για παραγωγική χρήση;** +Α: Μια εμπορική άδεια αφαιρεί τους περιορισμούς της δοκιμής και ξεκλειδώνει πλήρη λειτουργικότητα. Η βιβλιοθήκη λειτουργεί σε λειτουργία δοκιμής για σκοπούς αξιολόγησης. -**Q: Πώς αποδίδει αυτό σε πολύ μεγάλα αρχεία MKV (πολλούς GB);** -A: Η βιβλιοθήκη ρέει τη δομή του κοντέινερ, έτσι η χρήση μνήμης παραμένει μέτρια, αλλά βεβαιωθείτε ότι η JVM σας έχει αρκετό heap για τυχόν μεγάλες συλλογές ετικετών. +**Ε: Η εξαγωγή γίνεται εκτός σύνδεσης;** +Α: Απόλυτα. Μόλις το JAR βρίσκεται στο classpath, όλες οι αναγνώσεις μεταδεδομένων εκτελούνται τοπικά χωρίς κλήσεις δικτύου. -**Q: Μπορώ να τροποποιήσω τα μεταδεδομένα και να τα γράψω πίσω στο αρχείο;** -A: Το GroupDocs.Metadata εστιάζει κυρίως στην ανάγνωση. Οι δυνατότητες εγγραφής είναι περιορισμένες· ελέγξτε την πιο πρόσφατη τεκμηρίωση API για τυχόν υποστήριξη εγγραφής. +**Ε: Πώς αποδίδει η βιβλιοθήκη σε πολύ μεγάλα αρχεία MKV (πολλά GB);** +Α: Η βιβλιοθήκη μεταδίδει τη δομή του κοντέινερ, διατηρώντας τη χρήση μνήμης μέτρια. Βεβαιωθείτε ότι η JVM σας έχει αρκετό heap για τυχόν μεγάλες συλλογές ετικετών και σκεφτείτε να αυξήσετε το `-Xmx` αν επεξεργάζεστε εξαιρετικά μεγάλα αρχεία. -## Συμπέρασμα -Τώρα έχετε έναν πλήρη, έτοιμο για παραγωγή οδηγό για **read mkv metadata java** χρησιμοποιώντας το GroupDocs.Metadata. Ενσωματώνοντας τις κεφαλίδες EBML, τις πληροφορίες τμημάτων, τις ετικέτες και τις λεπτομέρειες κομματιών, μπορείτε να τροφοδοτήσετε καταλόγους μέσων, να αυτοματοποιήσετε ελέγχους ποιότητας ή να εμπλουτίσετε υπηρεσίες ροής βίντεο. Πειραματιστείτε με τα αποσπάσματα κώδικα, προσαρμόστε τα στις ροές εργασίας σας και εξερευνήστε την ευρύτερη υποστήριξη μορφών της βιβλιοθήκης για ακόμη περισσότερες δυνατότητες. +**Ε: Μπορώ να τροποποιήσω τα μεταδεδομένα και να τα γράψω ξανά στο αρχείο;** +Α: Το GroupDocs.Metadata επικεντρώνεται κυρίως στην ανάγνωση. Η υποστήριξη εγγραφής είναι περιορισμένη· ανατρέξτε στην πιο πρόσφατη τεκμηρίωση API για τυχόν δυνατότητες επαναγραφής. --- -**Τελευταία ενημέρωση:** 2026-02-21 +**Τελευταία ενημέρωση:** 2026-09-02 **Δοκιμάστηκε με:** GroupDocs.Metadata 24.12 for Java -**Συγγραφέας:** GroupDocs \ No newline at end of file +**Συγγραφέας:** GroupDocs + +## Σχετικά Μαθήματα + +- [Πώς να εξάγετε μαζικά υπότιτλους mkv με Java και GroupDocs.Metadata](/metadata/java/audio-video-formats/extract-subtitles-mkv-files-java-groupdocs-metadata/) +- [Εξαγωγή μεταδεδομένων βίντεο java χρησιμοποιώντας GroupDocs.Metadata](/metadata/java/audio-video-formats/mastering-avi-metadata-handling-groupdocs-java/) +- [Πώς να εξάγετε μεταδεδομένα FLV Java με GroupDocs.Metadata](/metadata/java/audio-video-formats/flv-metadata-extraction-groupdocs-java/) \ No newline at end of file diff --git a/content/hindi/java/audio-video-formats/extract-matroska-metadata-groupdocs-java/_index.md b/content/hindi/java/audio-video-formats/extract-matroska-metadata-groupdocs-java/_index.md index fa85f9c04..ac2956706 100644 --- a/content/hindi/java/audio-video-formats/extract-matroska-metadata-groupdocs-java/_index.md +++ b/content/hindi/java/audio-video-formats/extract-matroska-metadata-groupdocs-java/_index.md @@ -1,51 +1,86 @@ --- -date: '2026-02-21' -description: GroupDocs.Metadata का उपयोग करके Java में mkv मेटाडेटा पढ़ना सीखें, वीडियो - मेटाडेटा Java में निकालें, और EBML हेडर, टैग और ट्रैक्स को संभालें। +date: '2026-09-02' +description: GroupDocs.Metadata का उपयोग करके Java में mkv मेटाडाटा निकालना सीखें, + जिसमें EBML headers, tags, tracks और व्यावहारिक उपयोग मामलों को कवर किया गया है। keywords: -- extract mkv metadata java -- groupdocs.metadata java -- read matroska file -title: Java में GroupDocs.Metadata के साथ MKV मेटाडेटा पढ़ें – पूर्ण गाइड +- how to extract mkv +- groupdocs metadata java +- extract video metadata java +lastmod: '2026-09-02' +og_description: GroupDocs.Metadata का उपयोग करके Java में mkv मेटाडाटा कैसे निकालें। + step‑by‑step मार्गदर्शन, quick answers, और real‑world examples प्राप्त करें video + cataloguing के लिए। +og_image_alt: Guide showing Java code extracting Matroska (MKV) metadata with GroupDocs.Metadata +og_title: GroupDocs.Metadata के साथ Java में mkv मेटाडाटा कैसे निकालें +schemas: +- author: GroupDocs + dateModified: '2026-09-02' + description: Learn how to extract mkv metadata in Java using GroupDocs.Metadata, + covering EBML headers, tags, tracks, and practical use cases. + headline: How to extract mkv metadata in Java with GroupDocs.Metadata + type: TechArticle +- questions: + - answer: Yes, GroupDocs.Metadata supports MP4, AVI, MOV, and many more. The API + pattern is identical – just use the appropriate root package class for the format. + question: Can I extract metadata from other video formats with the same library? + - answer: A commercial license removes trial limits and unlocks full functionality. + The library works in trial mode for evaluation purposes. + question: Is a license required for production use? + - answer: Absolutely. Once the JAR is on your classpath, all metadata reads are + performed locally without any network calls. + question: Does the extraction happen offline? + - answer: The library streams the container structure, keeping memory usage modest. + Ensure your JVM has enough heap for any large tag collections, and consider + increasing `-Xmx` if you process extremely large files. + question: How does the library perform on very large MKV files (several GB)? + - answer: GroupDocs.Metadata primarily focuses on reading. Write support is limited; + refer to the latest API documentation for any write‑back capabilities. + question: Can I modify the metadata and write it back to the file? + type: FAQPage +tags: +- extract mkv +- groupdocs metadata +- java video processing +- matroska metadata +- metadata extraction +title: GroupDocs.Metadata के साथ Java में mkv मेटाडाटा कैसे निकालें type: docs url: /hi/java/audio-video-formats/extract-matroska-metadata-groupdocs-java/ weight: 1 --- -# GroupDocs.Metadata के साथ MKV मेटाडाटा जावा पढ़ें +# Java में GroupDocs.Metadata के साथ mkv मेटाडेटा कैसे निकालें -Multimedia फ़ाइलें हर जगह हैं, और **read mkv metadata java** करने में सक्षम होना मीडिया प्रबंधन, कैटलॉगिंग और विश्लेषण के लिए आवश्यक है। इस ट्यूटोरियल में आप जानेंगे कि Matroska कंटेनरों से मेटाडाटा निकालना क्यों महत्वपूर्ण है, GroupDocs.Metadata को कैसे सेटअप करें, और EBML हेडर, सेगमेंट जानकारी, टैग और ट्रैक डेटा को निकालने के लिए चरण‑दर‑चरण कोड। चाहे आप वीडियो कैटलॉग बना रहे हों, एन्कोडिंग पैरामीटर को वैलिडेट कर रहे हों, या थंबनेल्स स्वचालित रूप से जनरेट कर रहे हों, यह गाइड आपको सभी आवश्यक चीज़ें प्रदान करता है। +इस व्यापक गाइड में आप GroupDocs.Metadata लाइब्रेरी का उपयोग करके **Java में mkv मेटाडेटा कैसे निकालें** सीखेंगे। चाहे आप मीडिया कैटलॉग बना रहे हों, एन्कोडिंग पैरामीटर की वैधता जांच रहे हों, या थंबनेल जनरेशन को स्वचालित कर रहे हों, Matroska (MKV) मेटाडेटा को प्रोग्रामेटिक रूप से पढ़ना अनगिनत मैन्युअल घंटे बचाता है। हम कारण, पूर्वापेक्षाएँ, सटीक सेटअप चरण, और विस्तृत कोड स्निपेट्स के माध्यम से चलेंगे जो EBML हेडर, सेगमेंट जानकारी, टैग्स, और ट्रैक डेटा को उजागर करते हैं। ## त्वरित उत्तर -- **“read mkv metadata java” का क्या अर्थ है?** यह जावा का उपयोग करके MKV फ़ाइलों से प्रोग्रामेटिक रूप से मेटाडाटा पढ़ने की प्रक्रिया है। -- **मैं कौनसी लाइब्रेरी उपयोग करूँ?** जावा के लिए GroupDocs.Metadata Matroska फ़ाइलों के लिए एक व्यापक API प्रदान करता है। -- **क्या मुझे लाइसेंस चाहिए?** मूल्यांकन के लिए एक फ्री ट्रायल काम करता है; लाइसेंस उपयोग सीमा को हटा देता है। -- **क्या मैं अन्य फ़ॉर्मेट पढ़ सकता हूँ?** हाँ, वही लाइब्रेरी MP4, AVI, MP3 और कई अन्य को सपोर्ट करती है। -- **क्या रनटाइम पर इंटरनेट एक्सेस आवश्यक है?** नहीं, लाइब्रेरी को प्रोजेक्ट में जोड़ने के बाद सभी एक्सट्रैक्शन स्थानीय रूप से होते हैं। - -## Matroska (MKV) मेटाडाटा क्या है? -Matroska एक ओपन, लचीला कंटेनर फ़ॉर्मेट है। इसका मेटाडाटा EBML हेडर (फ़ाइल संस्करण, डॉक्यूमेंट टाइप), सेगमेंट विवरण (अवधि, मक्सिंग एप्लिकेशन), टैग (शीर्षक, विवरण), और ट्रैक विशिष्टताएँ (ऑडियो/वीडियो कोडेक्स, भाषा) शामिल करता है। इस डेटा तक पहुँचने से आप मीडिया कैटलॉग बना सकते हैं, फ़ाइल की अखंडता सत्यापित कर सकते हैं, या थंबनेल्स स्वचालित रूप से जनरेट कर सकते हैं। - -## क्यों पढ़ें mkv metadata java? -- **ऑटोमेशन** – बड़े वीडियो लाइब्रेरीज़ के लिए विवरण स्वचालित रूप से प्राप्त करें। -- **क्वालिटी कंट्रोल** – प्रकाशित करने से पहले कोडेक आईडी, अवधि, और ट्रैक भाषाओं को वैलिडेट करें। -- **सर्च और डिस्कवरी** – शीर्षक, भाषाएँ और टाइमस्टैम्प के साथ सर्चेबल डेटाबेस भरें। -- **क्रॉस‑फ़ॉर्मेट कंसिस्टेंसी** – अन्य कंटेनरों (MP4, AVI, आदि) से वीडियो मेटाडाटा जावा निकालने के लिए वही कोड बेस उपयोग करें। - -## जावा के लिए GroupDocs.Metadata क्यों उपयोग करें? -- **फ़ुल‑फ़ीचर API** – लो‑लेवल पार्सिंग के बिना EBML, सेगमेंट, टैग और ट्रैक को संभालता है। -- **परफ़ॉर्मेंस‑ऑप्टिमाइज़्ड** – मल्टी‑गिगाबाइट फ़ाइलों के साथ भी कुशलता से काम करता है। -- **क्रॉस‑फ़ॉर्मेट सपोर्ट** – कई ऑडियो/वीडियो कंटेनरों पर समान कोड पैटर्न लागू होता है। -- **सिंपल Maven इंटीग्रेशन** – एक ही डिपेंडेंसी जोड़ें और एक्सट्रैक्शन शुरू करें। +- **“read mkv metadata java” का क्या अर्थ है?** यह Matroska कंटेनर मेटाडेटा (शीर्षक, कोडेक, अवधि, आदि) को Java का उपयोग करके प्रोग्रामेटिक रूप से निकालने की प्रक्रिया है। +- **मैं कौन सी लाइब्रेरी उपयोग करूँ?** GroupDocs.Metadata for Java Matroska और 50+ अन्य फ़ॉर्मैट्स के लिए पूर्ण‑विशेषताओं वाला, उच्च‑प्रदर्शन API प्रदान करता है। +- **क्या मुझे लाइसेंस चाहिए?** एक मुफ्त ट्रायल मूल्यांकन के लिए काम करता है; एक वाणिज्यिक लाइसेंस सभी ट्रायल सीमाओं को हटा देता है। +- **क्या मैं अन्य फ़ॉर्मैट पढ़ सकता हूँ?** हाँ – वही API MP4, AVI, MOV, MP3, और कई अन्य कंटेनर पढ़ता है। +- **क्या रनटाइम पर इंटरनेट एक्सेस आवश्यक है?** नहीं – JAR आपके क्लासपाथ पर होने के बाद सभी एक्सट्रैक्शन स्थानीय रूप से होते हैं। + +## Matroska (MKV) मेटाडेटा क्या है? + +Matroska (MKV) मेटाडेटा वह संरचनात्मक और वर्णनात्मक जानकारी का संग्रह है जो Matroska कंटेनर के भीतर संग्रहीत होती है, जिसमें EBML हेडर (फ़ाइल संस्करण और दस्तावेज़ प्रकार), सेगमेंट विवरण (अवधि, मक्सिंग एप्लिकेशन), उपयोगकर्ता‑परिभाषित टैग्स (शीर्षक, विवरण), और ट्रैक विशिष्टताएँ (ऑडियो/वीडियो कोडेक IDs, भाषा, बिटरेट) शामिल हैं। इस डेटा तक पहुंचने से आप खोज योग्य कैटलॉग बना सकते हैं, फ़ाइल की अखंडता सत्यापित कर सकते हैं, या थंबनेल जनरेशन जैसे स्वचालित वर्कफ़्लो चला सकते हैं। + +## Java में mkv मेटाडेटा क्यों पढ़ें? + +Java से MKV मेटाडेटा पढ़ने से आप हजारों वीडियो फ़ाइलों की कैटलॉगिंग को **स्वचालित** कर सकते हैं, प्रकाशन से पहले कोडेक और भाषा आवश्यकताओं को **सत्यापित** कर सकते हैं, और शीर्षक, अवधि, और ट्रैक भाषाओं के साथ खोज योग्य डेटाबेस को **भरा** सकते हैं। यह कई कंटेनरों से वीडियो मेटाडेटा निकालने के लिए **एकल कोड बेस** भी प्रदान करता है, रखरखाव ओवरहेड को कम करता है और आपके मीडिया पाइपलाइन में निरंतर गुणवत्ता जांच सुनिश्चित करता है। + +## Java के लिए GroupDocs.Metadata का उपयोग क्यों करें? + +Java के लिए GroupDocs.Metadata एक परिपक्व लाइब्रेरी है जो **50+ इनपुट और आउटपुट फ़ॉर्मैट्स** का समर्थन करती है, जिसमें Matroska, MP4, AVI, और MOV शामिल हैं। यह कंटेनर संरचनाओं को स्ट्रीम करता है, इसलिए मल्टी‑गिगाबाइट फ़ाइलों के लिए भी मेमोरी उपयोग कम रहता है। API लो‑लेवल EBML पार्सिंग को एब्स्ट्रैक्ट करती है, जिससे आप व्यापार लॉजिक पर ध्यान केंद्रित कर सकते हैं। इंटीग्रेशन केवल एक Maven डिपेंडेंसी जोड़ने जितना सरल है, और लाइब्रेरी लगातार अपडेट होती रहती है ताकि नवीनतम कोडेक स्पेसिफिकेशन को संभाला जा सके। ## पूर्वापेक्षाएँ -- **GroupDocs.Metadata for Java** संस्करण 24.12 या बाद का। -- Java Development Kit (JDK) स्थापित हो। -- Maven (या मैन्युअल JAR हैंडलिंग)। -- प्रयोग के लिए एक MKV फ़ाइल (इसे `YOUR_DOCUMENT_DIRECTORY` में रखें)। +- **GroupDocs.Metadata for Java** संस्करण 24.12 या बाद का। +- Java Development Kit (JDK) 8 या नया स्थापित हो। +- निर्भरताओं को प्रबंधित करने के लिए Maven (या मैन्युअल JAR हैंडलिंग)। +- परीक्षण के लिए एक MKV फ़ाइल, जिसे आप अपने कोड से संदर्भित कर सकें (जैसे, `YOUR_DOCUMENT_DIRECTORY`) में रखें। + +## Java के लिए GroupDocs.Metadata सेटअप करना -## GroupDocs.Metadata को जावा के लिए सेटअप करना -Maven का उपयोग करके या JAR को सीधे डाउनलोड करके लाइब्रेरी को अपने प्रोजेक्ट में जोड़ें। +GroupDocs.Metadata for Java एक लाइब्रेरी है जो Matroska (MKV) सहित 50 से अधिक फ़ाइल फ़ॉर्मैट्स से मेटाडेटा पढ़ने में सक्षम बनाती है। इसे Maven के साथ अपने प्रोजेक्ट में जोड़ें या JAR मैन्युअल रूप से डाउनलोड करें। **Maven:** ```xml @@ -66,14 +101,16 @@ Maven का उपयोग करके या JAR को सीधे डा ``` -**Direct Download:** -यदि आप Maven का उपयोग नहीं करना चाहते हैं, तो नवीनतम संस्करण [GroupDocs.Metadata for Java releases](https://releases.groupdocs.com/metadata/java/) से डाउनलोड करें। +**सीधे डाउनलोड:** +यदि आप Maven का उपयोग नहीं करना पसंद करते हैं, तो नवीनतम संस्करण [GroupDocs.Metadata for Java releases](https://releases.groupdocs.com/metadata/java/) से डाउनलोड करें। ### लाइसेंस प्राप्ति -फ़ीचर को एक्सप्लोर करने के लिए फ्री ट्रायल से शुरू करें। प्रोडक्शन उपयोग के लिए, लाइसेंस खरीदें या ट्रायल सीमाओं को हटाने के लिए [GroupDocs](https://purchase.groupdocs.com/temporary-license/) से एक टेम्पररी लाइसेंस प्राप्त करें। -### बेसिक इनिशियलाइज़ेशन और सेटअप -नीचे वह न्यूनतम कोड है जो GroupDocs.Metadata के साथ एक MKV फ़ाइल खोलने के लिए आवश्यक है। +फ़ीचर का पता लगाने के लिए मुफ्त ट्रायल से शुरू करें। उत्पादन उपयोग के लिए, एक लाइसेंस खरीदें या ट्रायल सीमाओं को हटाने के लिए [GroupDocs](https://purchase.groupdocs.com/temporary-license/) से एक अस्थायी लाइसेंस प्राप्त करें। + +### बुनियादी इनिशियलाइज़ेशन और सेटअप + +नीचे GroupDocs.Metadata के साथ MKV फ़ाइल खोलने के लिए आवश्यक न्यूनतम कोड दिया गया है। ```java import com.groupdocs.metadata.Metadata; @@ -89,11 +126,15 @@ public class MetadataExtraction { } ``` -## GroupDocs.Metadata के साथ mkv metadata java कैसे पढ़ें -अब हम प्रत्येक मेटाडाटा क्षेत्र में डुबकी लगाएंगे जिसे आप पढ़ सकते हैं। +## GroupDocs.Metadata के साथ Java में mkv मेटाडेटा कैसे पढ़ें + +`Metadata` वह मुख्य क्लास है जो MKV फ़ाइल का प्रतिनिधित्व करता है और इसके मेटाडेटा तक पहुंच प्रदान करता है। +`new Metadata("path/to/file.mkv")` के साथ अपनी MKV फ़ाइल लोड करें और उपयुक्त गेटर्स को कॉल करें – `getRootPackageGeneric()`, `getSegments()`, `getTags()`, और `getTracks()` – प्रत्येक मेटाडेटा सेक्शन को प्राप्त करने के लिए। यह एकल कॉल चेन आपको EBML हेडर, सेगमेंट जानकारी, उपयोगकर्ता टैग्स, और व्यक्तिगत ट्रैक विवरणों की पूरी दृश्यता देती है बिना किसी लो‑लेवल पार्सिंग लॉजिक के लिखे। ### Matroska EBML हेडर पढ़ना -EBML हेडर में फ़ाइल की मूल जानकारी जैसे संस्करण और डॉक्यूमेंट टाइप संग्रहीत होती है। + +EBML हेडर संस्करण, दस्तावेज़ प्रकार, और फ़ाइल आकार जैसी कोर फ़ाइल जानकारी संग्रहीत करता है। +`getRootPackageGeneric()` खुले फ़ाइल का EBML हेडर पैकेज लौटाता है। ```java import com.groupdocs.metadata.Metadata; @@ -117,11 +158,13 @@ public class ReadMatroskaEBMLHeader { ``` **मुख्य बिंदु** -- `getRootPackageGeneric()` आपको Matroska पैकेज एंट्री पॉइंट देता है। -- EBML प्रॉपर्टीज़ (`docType`, `version`, आदि) फ़ाइल संगतता सत्यापित करने में मदद करती हैं। +- `getRootPackageGeneric()` Matroska पैकेज एंट्री पॉइंट लौटाता है। +- EBML प्रॉपर्टीज़ (`docType`, `version`, आदि) आपको गहरी प्रोसेसिंग से पहले फ़ाइल संगतता सत्यापित करने देती हैं। ### Matroska सेगमेंट जानकारी पढ़ना -सेगमेंट समग्र मीडिया टाइमलाइन और निर्माण टूल्स का वर्णन करते हैं। + +सेगमेंट समग्र मीडिया टाइमलाइन, निर्माण टूल्स, और वैकल्पिक शीर्षक जानकारी का वर्णन करते हैं। +`getSegments()` अवधि और निर्माण विवरण वाले सेगमेंट ऑब्जेक्ट्स का संग्रह प्राप्त करता है। ```java import com.groupdocs.metadata.Metadata; @@ -150,11 +193,13 @@ public class ReadMatroskaSegmentInformation { ``` **मुख्य बिंदु** -- `getSegments()` एक कलेक्शन लौटाता है; प्रत्येक सेगमेंट अपना शीर्षक, अवधि, और निर्माण एप्लिकेशन विवरण रख सकता है। -- प्लेलिस्ट बनाने या एन्कोडिंग पैरामीटर वैलिडेट करने में उपयोगी। +- `getSegments()` एक संग्रह लौटाता है; प्रत्येक सेगमेंट अपना शीर्षक, अवधि, और निर्माण एप्लिकेशन विवरण रख सकता है। +- यह डेटा प्लेलिस्ट बनाने या फ़ाइलों के बैच में एन्कोडिंग पैरामीटर वैधता के लिए उपयोगी है। + +### Matroska टैग मेटाडेटा पढ़ना -### Matroska टैग मेटाडाटा पढ़ना -टैग मानव‑पठनीय जानकारी जैसे शीर्षक, कलाकार, या कस्टम नोट्स संग्रहीत करते हैं। +टैग शीर्षक, कलाकार, या कस्टम नोट्स जैसी मानव‑पठनीय जानकारी संग्रहीत करते हैं। +`getTags()` फ़ाइल से जुड़े टैग एंट्रीज़ की सूची लौटाता है। ```java import com.groupdocs.metadata.Metadata; @@ -184,11 +229,13 @@ public class ReadMatroskaTagMetadata { ``` **मुख्य बिंदु** -- टैग `targetType` (जैसे `movie`, `track`) द्वारा व्यवस्थित होते हैं। -- `simpleTag` एंट्रीज़ `TITLE=My Video` जैसी कुंजी/मान जोड़े रखती हैं। +- टैग `targetType` (जैसे, `movie`, `track`) द्वारा व्यवस्थित होते हैं। +- `simpleTag` एंट्रीज़ `TITLE=My Video` जैसे कुंजी/मान जोड़े रखती हैं। -### Matroska ट्रैक मेटाडाटा पढ़ना -ट्रैक व्यक्तिगत ऑडियो, वीडियो, या सबटाइटल स्ट्रीम्स का प्रतिनिधित्व करते हैं। +### Matroska ट्रैक मेटाडेटा पढ़ना + +ट्रैक कंटेनर के भीतर व्यक्तिगत ऑडियो, वीडियो, या सबटाइटल स्ट्रीम का प्रतिनिधित्व करते हैं। +`getTracks()` प्रत्येक ट्रैक की तकनीकी विशिष्टताओं तक पहुंच प्रदान करता है। ```java import com.groupdocs.metadata.Metadata; @@ -213,45 +260,50 @@ public class ReadMatroskaTrackMetadata { ``` **मुख्य बिंदु** -- `track.getType()` बताता है कि यह वीडियो, ऑडियो या सबटाइटल है। -- `codecId` आपको कोडेक पहचानने में मदद करता है (जैसे `V_MPEG4/ISO/AVC`)। -- यह डेटा ट्रांसकोडिंग पाइपलाइन या क्वालिटी चेक्स के लिए आवश्यक है। +- `track.getType()` बताता है कि स्ट्रीम वीडियो, ऑडियो, या सबटाइटल है। +- `codecId` कोडेक को पहचानता है (जैसे, `V_MPEG4/ISO/AVC`)। +- यह जानकारी ट्रांसकोडिंग पाइपलाइन, गुणवत्ता जांच, और डायनेमिक स्ट्रीमिंग निर्णयों के लिए आवश्यक है। + +## Java में mkv मेटाडेटा पढ़ने के सामान्य उपयोग केस -## mkv metadata java पढ़ने के सामान्य उपयोग केस -- **मीडिया कैटलॉग** – डेटाबेस टेबल्स को शीर्षक, अवधि, और भाषा कोड से भरें। -- **ऑटोमेटेड QC** – प्रकाशित करने से पहले सुनिश्चित करें कि प्रत्येक फ़ाइल में आवश्यक टैग मौजूद हैं। -- **डायनामिक स्ट्रीमिंग** – उपयोगकर्ता प्राथमिकताओं के आधार पर सही ऑडियो/सबटाइटल ट्रैक चुनें। -- **कंटेंट माइग्रेशन** – मेटाडाटा एक बार निकालें, फिर इसे नए स्टोरेज सिस्टम में इन्जेक्ट करें। +- **मीडिया कैटलॉग** – तेज़ खोज के लिए शीर्षक, अवधि, और भाषा कोड के साथ डेटाबेस टेबल्स भरें। +- **स्वचालित गुणवत्ता नियंत्रण** – रिलीज़ से पहले सुनिश्चित करें कि प्रत्येक फ़ाइल में आवश्यक टैग हों और कोडेक मानकों के अनुरूप हो। +- **डायनेमिक स्ट्रीमिंग** – रनटाइम पर उपयोगकर्ता प्राथमिकताओं के आधार पर उपयुक्त ऑडियो या सबटाइटल ट्रैक चुनें। +- **कंटेंट माइग्रेशन** – मेटाडेटा एक बार निकालें, फिर इसे नई स्टोरेज सिस्टम या कंटेंट‑डिलीवरी नेटवर्क में इंजेक्ट करें। ## सामान्य समस्याएँ और ट्रबलशूटिंग + | लक्षण | संभावित कारण | समाधान | |---------|--------------|-----| -| `NullPointerException` जब `getEbmlHeader()` एक्सेस किया जाता है | फ़ाइल पाथ गलत है या फ़ाइल नहीं मिली | `new Metadata("...")` में पाथ सत्यापित करें और सुनिश्चित करें कि फ़ाइल मौजूद है। | -| कोई टैग नहीं मिला | MKV फ़ाइल में टैग एलिमेंट नहीं हैं | ऐसी मीडिया फ़ाइल उपयोग करें जिसमें मेटाडाटा टैग हों (जैसे, MKVToolNix द्वारा जोड़े गए)। | -| बड़ी फ़ाइलों पर धीमी प्रोसेसिंग | हिप मेमोरी अपर्याप्त | JVM हिप बढ़ाएँ (`-Xmx2g` या अधिक) या संभव हो तो फ़ाइल को चंक्स में प्रोसेस करें। | +| `NullPointerException` जब `getEbmlHeader()` तक पहुंच रहे हों | फ़ाइल पाथ गलत है या फ़ाइल नहीं मिली | पाथ को `new Metadata("...")` में सत्यापित करें और सुनिश्चित करें कि फ़ाइल डिस्क पर मौजूद है। | +| कोई टैग नहीं मिला | MKV फ़ाइल में टैग तत्व नहीं हैं | ऐसी मीडिया फ़ाइल उपयोग करें जिसमें मेटाडेटा टैग हों (जैसे, MKVToolNix द्वारा जोड़े गए)। | +| बड़ी फ़ाइलों पर धीमी प्रोसेसिंग | हिप मेमोरी अपर्याप्त | JVM हिप बढ़ाएँ (`-Xmx2g` या अधिक) या संभव हो तो फ़ाइल को हिस्सों में प्रोसेस करें। | ## अक्सर पूछे जाने वाले प्रश्न -**Q: क्या मैं उसी लाइब्रेरी से अन्य वीडियो फ़ॉर्मेट्स का मेटाडाटा निकाल सकता हूँ?** -A: हाँ, GroupDocs.Metadata MP4, AVI, MOV, और कई अन्य को सपोर्ट करता है। API पैटर्न समान है—सिर्फ उपयुक्त रूट पैकेज क्लास उपयोग करें। +**Q: क्या मैं उसी लाइब्रेरी से अन्य वीडियो फ़ॉर्मैट्स का मेटाडेटा निकाल सकता हूँ?** +A: हाँ, GroupDocs.Metadata MP4, AVI, MOV, और कई अन्य को समर्थन देता है। API पैटर्न समान है – बस फ़ॉर्मैट के लिए उपयुक्त रूट पैकेज क्लास उपयोग करें। -**Q: प्रोडक्शन उपयोग के लिए लाइसेंस आवश्यक है?** -A: लाइसेंस ट्रायल सीमाओं को हटाता है और पूरी कार्यक्षमता प्रदान करता है। लाइब्रेरी मूल्यांकन के लिए ट्रायल मोड में काम करती है। +**Q: क्या उत्पादन उपयोग के लिए लाइसेंस आवश्यक है?** +A: एक वाणिज्यिक लाइसेंस ट्रायल सीमाओं को हटाता है और पूर्ण कार्यक्षमता अनलॉक करता है। लाइब्रेरी मूल्यांकन उद्देश्यों के लिए ट्रायल मोड में काम करती है। **Q: क्या एक्सट्रैक्शन ऑफ़लाइन होता है?** -A: बिल्कुल। एक बार JAR आपके क्लासपाथ पर हो जाने पर, सभी मेटाडाटा रीड्स स्थानीय रूप से बिना नेटवर्क कॉल के किए जाते हैं। - -**Q: बहुत बड़ी MKV फ़ाइलों (कई GB) पर यह कैसे प्रदर्शन करता है?** -A: लाइब्रेरी कंटेनर स्ट्रक्चर को स्ट्रीम करती है, इसलिए मेमोरी उपयोग सीमित रहता है, लेकिन सुनिश्चित करें कि आपके JVM में बड़े टैग कलेक्शन्स के लिए पर्याप्त हिप हो। +A: बिल्कुल। एक बार JAR आपके क्लासपाथ पर हो जाने पर, सभी मेटाडेटा रीड्स स्थानीय रूप से किए जाते हैं बिना किसी नेटवर्क कॉल के। -**Q: क्या मैं मेटाडाटा को संशोधित करके फ़ाइल में वापस लिख सकता हूँ?** -A: GroupDocs.Metadata मुख्यतः पढ़ने पर केंद्रित है। लिखने की क्षमताएँ सीमित हैं; किसी भी लिखने के समर्थन के लिए नवीनतम API दस्तावेज़ देखें। +**Q: लाइब्रेरी बहुत बड़ी MKV फ़ाइलों (कई GB) पर कैसे प्रदर्शन करती है?** +A: लाइब्रेरी कंटेनर संरचना को स्ट्रीम करती है, जिससे मेमोरी उपयोग सीमित रहता है। सुनिश्चित करें कि आपका JVM बड़े टैग संग्रहों के लिए पर्याप्त हिप रखता है, और यदि आप अत्यधिक बड़ी फ़ाइलें प्रोसेस करते हैं तो `-Xmx` बढ़ाने पर विचार करें। -## निष्कर्ष -अब आपके पास GroupDocs.Metadata का उपयोग करके **read mkv metadata java** के लिए एक पूर्ण, प्रोडक्शन‑रेडी गाइड है। EBML हेडर, सेगमेंट जानकारी, टैग और ट्रैक विवरण को उपयोग करके आप मीडिया कैटलॉग को शक्ति दे सकते हैं, क्वालिटी चेक्स को ऑटोमेट कर सकते हैं, या वीडियो स्ट्रीमिंग सेवाओं को समृद्ध बना सकते हैं। स्निपेट्स के साथ प्रयोग करें, उन्हें अपने वर्कफ़्लो में अनुकूलित करें, और लाइब्रेरी के व्यापक फ़ॉर्मेट सपोर्ट को और अधिक संभावनाओं के लिए एक्सप्लोर करें। +**Q: क्या मैं मेटाडेटा को संशोधित करके फ़ाइल में वापस लिख सकता हूँ?** +A: GroupDocs.Metadata मुख्यतः पढ़ने पर केंद्रित है। लिखने का समर्थन सीमित है; किसी भी लिख‑बैक क्षमता के लिए नवीनतम API दस्तावेज़ देखें। --- -**अंतिम अपडेट:** 2026-02-21 +**अंतिम अपडेट:** 2026-09-02 **परीक्षण किया गया:** GroupDocs.Metadata 24.12 for Java -**लेखक:** GroupDocs \ No newline at end of file +**लेखक:** GroupDocs + +## संबंधित ट्यूटोरियल + +- [Java और GroupDocs.Metadata के साथ बैच में mkv सबटाइटल निकालना](/metadata/java/audio-video-formats/extract-subtitles-mkv-files-java-groupdocs-metadata/) +- [GroupDocs.Metadata का उपयोग करके Java में वीडियो मेटाडेटा निकालें](/metadata/java/audio-video-formats/mastering-avi-metadata-handling-groupdocs-java/) +- [GroupDocs.Metadata के साथ Java में FLV मेटाडेटा निकालना](/metadata/java/audio-video-formats/flv-metadata-extraction-groupdocs-java/) \ No newline at end of file diff --git a/content/hongkong/java/audio-video-formats/extract-matroska-metadata-groupdocs-java/_index.md b/content/hongkong/java/audio-video-formats/extract-matroska-metadata-groupdocs-java/_index.md index 36d3b5fb1..76c7bc024 100644 --- a/content/hongkong/java/audio-video-formats/extract-matroska-metadata-groupdocs-java/_index.md +++ b/content/hongkong/java/audio-video-formats/extract-matroska-metadata-groupdocs-java/_index.md @@ -1,52 +1,85 @@ --- -date: '2026-02-21' -description: 學習如何使用 GroupDocs.Metadata 讀取 mkv 元資料(Java),提取影片元資料(Java),以及處理 EBML 標頭、標籤與軌道。 +date: '2026-09-02' +description: 了解如何在 Java 中使用 GroupDocs.Metadata 提取 mkv 元資料,涵蓋 EBML 標頭、標籤、軌道以及實務案例。 keywords: -- extract mkv metadata java -- groupdocs.metadata java -- read matroska file -title: 使用 GroupDocs.Metadata 讀取 MKV 元資料(Java) – 完整指南 +- how to extract mkv +- groupdocs metadata java +- extract video metadata java +lastmod: '2026-09-02' +og_description: 如何在 Java 中使用 GroupDocs.Metadata 提取 mkv 元資料。提供逐步指引、快速解答,以及影片目錄編制的實務範例。 +og_image_alt: Guide showing Java code extracting Matroska (MKV) metadata with GroupDocs.Metadata +og_title: 如何在 Java 中使用 GroupDocs.Metadata 提取 mkv 元資料 +schemas: +- author: GroupDocs + dateModified: '2026-09-02' + description: Learn how to extract mkv metadata in Java using GroupDocs.Metadata, + covering EBML headers, tags, tracks, and practical use cases. + headline: How to extract mkv metadata in Java with GroupDocs.Metadata + type: TechArticle +- questions: + - answer: Yes, GroupDocs.Metadata supports MP4, AVI, MOV, and many more. The API + pattern is identical – just use the appropriate root package class for the format. + question: Can I extract metadata from other video formats with the same library? + - answer: A commercial license removes trial limits and unlocks full functionality. + The library works in trial mode for evaluation purposes. + question: Is a license required for production use? + - answer: Absolutely. Once the JAR is on your classpath, all metadata reads are + performed locally without any network calls. + question: Does the extraction happen offline? + - answer: The library streams the container structure, keeping memory usage modest. + Ensure your JVM has enough heap for any large tag collections, and consider + increasing `-Xmx` if you process extremely large files. + question: How does the library perform on very large MKV files (several GB)? + - answer: GroupDocs.Metadata primarily focuses on reading. Write support is limited; + refer to the latest API documentation for any write‑back capabilities. + question: Can I modify the metadata and write it back to the file? + type: FAQPage +tags: +- extract mkv +- groupdocs metadata +- java video processing +- matroska metadata +- metadata extraction +title: 如何在 Java 中使用 GroupDocs.Metadata 提取 mkv 元資料 type: docs url: /zh-hant/java/audio-video-formats/extract-matroska-metadata-groupdocs-java/ weight: 1 --- -# 使用 GroupDocs.Metadata 讀取 MKV Metadata(Java) +# 如何在 Java 中使用 GroupDocs.Metadata 提取 mkv 元資料 -Multimedia files are everywhere, and being able to **read mkv metadata java** is essential for media management, cataloguing, and analytics. In this tutorial you’ll discover why extracting metadata from Matroska containers matters, how to set up GroupDocs.Metadata, and step‑by‑step code for pulling EBML headers, segment info, tags, and track data. Whether you’re building a video catalog, validating encoding parameters, or generating thumbnails automatically, this guide gives you everything you need. +在本完整指南中,您將學習 **如何在 Java 中提取 mkv 元資料**,使用 GroupDocs.Metadata 函式庫。無論您是建立媒體目錄、驗證編碼參數,或自動產生縮圖,程式化讀取 Matroska(MKV)元資料都能節省大量手動時間。我們將說明原因、前置條件、具體設定步驟,以及展示 EBML 標頭、段落資訊、標籤與軌道資料的詳細程式碼片段。 ## 快速解答 -- **「read mkv metadata java」是什麼意思?** 它是使用 Java 程式化讀取 MKV 檔案的 metadata 的過程。 -- **Which library should I use?** GroupDocs.Metadata for Java provides a comprehensive API for Matroska files. -- **Do I need a license?** A free trial works for evaluation; a license removes usage limits. -- **Can I read other formats?** Yes, the same library supports MP4, AVI, MP3, and many more. -- **Is internet access required at runtime?** No, all extraction happens locally after the library is added to your project. - -## Matroska(MKV)Metadata 是什麼? -Matroska is an open, flexible container format. Its metadata includes the EBML header (file version, document type), segment details (duration, muxing application), tags (titles, descriptions), and track specifications (audio/video codecs, language). Accessing this data lets you build media catalogs, verify file integrity, or generate thumbnails automatically. - -## 為什麼要 read mkv metadata java? -- **Automation** – 自動化 – 為大型影片庫自動抓取詳細資訊。 -- **Quality control** – 品質控制 – 在發佈前驗證編解碼器 ID、持續時間與軌道語言。 -- **Search & discovery** – 搜尋與發現 – 填充可搜尋的資料庫,包含標題、語言與時間戳記。 -- **Cross‑format consistency** – 跨格式一致性 – 使用相同的程式碼基礎,從其他容器(MP4、AVI 等)提取 video metadata java。 - -## 為什麼使用 GroupDocs.Metadata(Java)? -- **Full‑featured API** – Handles EBML, segments, tags, and tracks without low‑level parsing. -- **Performance‑optimized** – Works efficiently even with multi‑gigabyte files. -- **Cross‑format support** – Same code pattern applies to many audio/video containers. -- **Simple Maven integration** – Add a single dependency and start extracting. +- **「read mkv metadata java」是什麼意思?** 這是使用 Java 程式化提取 MKV 檔案中 Matroska 容器的元資料(標題、編解碼器、時長等)。 +- **我應該使用哪個函式庫?** GroupDocs.Metadata for Java 提供完整功能、高效能的 API,支援 Matroska 以及超過 50 種其他格式。 +- **我需要授權嗎?** 免費試用可用於評估;商業授權則移除所有試用限制。 +- **我可以讀取其他格式嗎?** 可以——相同的 API 可讀取 MP4、AVI、MOV、MP3 以及更多容器。 +- **執行時需要網路連線嗎?** 不需要——所有提取皆在本機完成,只要 JAR 已放在 classpath 中即可。 + +## 什麼是 Matroska (MKV) 元資料? + +Matroska(MKV)元資料是儲存在 Matroska 容器內的結構與描述資訊集合,包含 EBML 標頭(檔案版本與文件類型)、段落細節(時長、混流應用程式)、使用者自訂標籤(標題、描述)以及軌道規格(音訊/視訊編解碼器 ID、語言、位元率)。存取這些資料可讓您建立可搜尋的目錄、驗證檔案完整性,或驅動自動化工作流程,例如產生縮圖。 + +## 為什麼要在 Java 中讀取 mkv 元資料? + +在 Java 中讀取 MKV 元資料可讓您 **自動化** 數千個影片檔案的目錄建立、在發佈前 **驗證** 編解碼器與語言需求,並 **填充** 可搜尋的資料庫,包含標題、時長與軌道語言。它同時提供 **單一程式碼基礎** 以從多種容器提取影片元資料,降低維護負擔,確保在媒體流程中執行一致的品質檢查。 + +## 為什麼使用 GroupDocs.Metadata for Java? + +GroupDocs.Metadata for Java 是成熟的函式庫,支援 **超過 50 種輸入與輸出格式**,包括 Matroska、MP4、AVI 與 MOV。它以串流方式處理容器結構,即使是多 GB 的檔案也能保持低記憶體使用量。API 抽象化低階 EBML 解析,讓您專注於業務邏輯。整合只需加入一個 Maven 依賴,且函式庫持續更新以因應最新的編解碼規範。 ## 前置條件 -- **GroupDocs.Metadata for Java** version 24.12 or later. -- Java Development Kit (JDK) installed. -- Maven (or manual JAR handling). -- An MKV file to experiment with (place it in `YOUR_DOCUMENT_DIRECTORY`). +- **GroupDocs.Metadata for Java** 版本 24.12 或更新。 +- 已安裝 Java Development Kit (JDK) 8 或更新版本。 +- 使用 Maven(或手動 JAR 管理)來處理相依性。 +- 一個用於測試的 MKV 檔案,放置於程式碼可參考的資料夾中(例如 `YOUR_DOCUMENT_DIRECTORY`)。 + +## 設定 GroupDocs.Metadata for Java -## 設定 GroupDocs.Metadata(Java) -使用 Maven 或直接下載 JAR,將函式庫加入您的專案。 +GroupDocs.Metadata for Java 是一個函式庫,可讀取超過 50 種檔案格式的元資料,包括 Matroska(MKV)。可透過 Maven 加入專案,或手動下載 JAR。 -**Maven:** +**Maven:** ```xml @@ -65,13 +98,15 @@ Matroska is an open, flexible container format. Its metadata includes the EBML h ``` -**Direct Download:** -如果您不想使用 Maven,可從 [GroupDocs.Metadata for Java releases](https://releases.groupdocs.com/metadata/java/) 下載最新版本。 +**直接下載:** +如果您不想使用 Maven,請從 [GroupDocs.Metadata for Java releases](https://releases.groupdocs.com/metadata/java/) 下載最新版本。 ### 取得授權 -先使用免費試用版來探索功能。若於正式環境使用,請購買授權或從 [GroupDocs](https://purchase.groupdocs.com/temporary-license/) 取得臨時授權,以移除試用限制。 + +先使用免費試用版探索功能。若投入正式環境,請購買授權或從 [GroupDocs](https://purchase.groupdocs.com/temporary-license/) 取得臨時授權,以移除試用限制。 ### 基本初始化與設定 + 以下是使用 GroupDocs.Metadata 開啟 MKV 檔案所需的最小程式碼。 ```java @@ -88,11 +123,15 @@ public class MetadataExtraction { } ``` -## 如何使用 GroupDocs.Metadata read mkv metadata java -現在我們將深入探討您可以讀取的每個 metadata 領域。 +## 如何使用 GroupDocs.Metadata 在 Java 中讀取 mkv 元資料 + +`Metadata` 是代表 MKV 檔案的主要類別,提供存取其元資料的功能。 +使用 `new Metadata("path/to/file.mkv")` 載入您的 MKV 檔案,然後呼叫相應的 getter —— `getRootPackageGeneric()`、`getSegments()`、`getTags()` 與 `getTracks()` —— 以取得每個元資料區段。這一串呼叫即可完整檢視 EBML 標頭、段落資訊、使用者標籤與各軌道細節,無需自行編寫低階解析程式。 ### 讀取 Matroska EBML 標頭 -EBML header stores core file information such as version and document type. + +EBML 標頭儲存檔案的核心資訊,例如版本、文件類型與檔案大小。 +`getRootPackageGeneric()` 會回傳已開啟檔案的 EBML 標頭套件。 ```java import com.groupdocs.metadata.Metadata; @@ -115,12 +154,14 @@ public class ReadMatroskaEBMLHeader { } ``` -**關鍵要點** -- `getRootPackageGeneric()` 會提供 Matroska 套件的入口點。 -- EBML 屬性(`docType`、`version` 等)協助您驗證檔案相容性。 +**重點** +- `getRootPackageGeneric()` 回傳 Matroska 套件的入口點。 +- EBML 屬性(`docType`、`version` 等)讓您在進一步處理前驗證檔案相容性。 ### 讀取 Matroska 段落資訊 -Segments describe the overall media timeline and creation tools. + +段落描述整體媒體時間軸、建立工具以及可選的標題資訊。 +`getSegments()` 會取得包含時長與建立細節的段落物件集合。 ```java import com.groupdocs.metadata.Metadata; @@ -148,12 +189,14 @@ public class ReadMatroskaSegmentInformation { } ``` -**關鍵要點** -- `getSegments()` 回傳集合;每個段落可包含其標題、持續時間與建立應用程式的詳細資訊。 -- 對於建立播放清單或驗證編碼參數非常有用。 +**重點** +- `getSegments()` 回傳集合;每個段落可包含其自身的標題、時長與建立應用程式細節。 +- 此資料對於建立播放清單或在一批檔案中驗證編碼參數非常有用。 + +### 讀取 Matroska 標籤元資料 -### 讀取 Matroska 標籤 Metadata -Tags store human‑readable information like titles, artists, or custom notes. +標籤儲存人類可讀的資訊,如標題、藝術家或自訂備註。 +`getTags()` 回傳與檔案相關的標籤條目清單。 ```java import com.groupdocs.metadata.Metadata; @@ -182,12 +225,14 @@ public class ReadMatroskaTagMetadata { } ``` -**關鍵要點** +**重點** - 標籤依 `targetType`(例如 `movie`、`track`)組織。 -- `simpleTag` 條目保存鍵/值對,例如 `TITLE=My Video`。 +- `simpleTag` 條目保存鍵/值對,例如 `TITLE=My Video`。 -### 讀取 Matroska 軌道 Metadata -Tracks represent individual audio, video, or subtitle streams. +### 讀取 Matroska 軌道元資料 + +軌道代表容器內的單一音訊、視訊或字幕串流。 +`getTracks()` 提供對每條軌道技術規格的存取。 ```java import com.groupdocs.metadata.Metadata; @@ -211,46 +256,51 @@ public class ReadMatroskaTrackMetadata { } ``` -**關鍵要點** -- `track.getType()` 告訴您它是視訊、音訊或字幕。 -- `codecId` 讓您辨識編解碼器(例如 `V_MPEG4/ISO/AVC`)。 -- 此資料對於轉碼流程或品質檢查至關重要。 +**重點** +- `track.getType()` 告訴您該串流是視訊、音訊或字幕。 +- `codecId` 識別編解碼器(例如 `V_MPEG4/ISO/AVC`)。 +- 此資訊對於轉碼流程、品質檢查與動態串流決策至關重要。 + +## 讀取 mkv 元資料的常見使用情境 -## 常見使用情境:read mkv metadata java -- **Media catalogues** – 媒體目錄 – 使用標題、持續時間與語言代碼填充資料庫表格。 -- **Automated QC** – 自動化品質檢查 – 在發佈前驗證每個檔案是否包含必要的標籤。 -- **Dynamic streaming** – 動態串流 – 根據使用者偏好選擇正確的音訊/字幕軌道。 -- **Content migration** – 內容遷移 – 先提取 metadata,然後將其注入新儲存系統。 +- **媒體目錄** – 填充資料庫表格,包含標題、時長與語言代碼,以加速搜尋。 +- **自動化品質控制** – 在發佈前驗證每個檔案是否包含必要標籤且符合編解碼標準。 +- **動態串流** – 在執行時根據使用者偏好選擇適當的音訊或字幕軌道。 +- **內容遷移** – 先提取元資料,然後將其注入新儲存系統或內容傳遞網路。 ## 常見問題與故障排除 + | 症狀 | 可能原因 | 解決方法 | |---------|--------------|-----| -| `NullPointerException` 在存取 `getEbmlHeader()` 時發生 | 檔案路徑不正確或找不到檔案 | 確認 `new Metadata("...")` 中的路徑正確,且檔案確實存在。 | -| 未返回標籤 | MKV 檔案缺少標籤元素 | 使用包含 metadata 標籤的媒體檔案(例如透過 MKVToolNix 添加的)。 | +| `NullPointerException` 在存取 `getEbmlHeader()` 時發生 | 檔案路徑不正確或找不到檔案 | 確認 `new Metadata("...")` 中的路徑,並確保檔案實際存在於磁碟上。 | +| 未返回標籤 | MKV 檔案缺少標籤元素 | 使用包含元資料標籤的媒體檔案(例如透過 MKVToolNix 添加的)。 | | 大型檔案處理緩慢 | 堆積記憶體不足 | 增加 JVM 堆積大小(`-Xmx2g` 或更高),或在可能的情況下分塊處理檔案。 | ## 常見問答 -**Q: 我可以使用相同的函式庫從其他影片格式提取 metadata 嗎?** -A: 是的,GroupDocs.Metadata 支援 MP4、AVI、MOV 等多種格式。API 模式相似,只需使用相應的根套件類別。 +**Q: 我可以使用相同的函式庫從其他影片格式提取元資料嗎?** +A: 可以,GroupDocs.Metadata 支援 MP4、AVI、MOV 等多種格式。API 使用方式相同——只需使用對應格式的根套件類別即可。 **Q: 正式環境使用是否需要授權?** -A: 授權可移除試用限制並提供完整功能。此函式庫在試用模式下亦可用於評估。 +A: 商業授權會移除試用限制並解鎖全部功能。函式庫在試用模式下可用於評估目的。 **Q: 提取過程是否離線進行?** -A: 絕對是。只要 JAR 已加入 classpath,所有 metadata 讀取皆在本機完成,無需網路呼叫。 - -**Q: 在非常大型的 MKV 檔案(數 GB)上效能如何?** -A: 函式庫會串流容器結構,因而記憶體使用保持在適度水平,但請確保 JVM 有足夠的堆積以處理大型標籤集合。 +A: 完全離線。只要 JAR 已放在 classpath 中,所有元資料讀取皆在本機執行,無需任何網路呼叫。 -**Q: 我可以修改 metadata 並寫回檔案嗎?** -A: GroupDocs.Metadata 主要聚焦於讀取。寫入功能有限,請查閱最新的 API 文件以了解是否支援寫入。 +**Q: 函式庫在非常大的 MKV 檔案(數 GB)上表現如何?** +A: 函式庫以串流方式處理容器結構,保持記憶體使用量適中。確保 JVM 有足夠的堆積以容納大型標籤集合,若處理極大檔案,請考慮增加 `-Xmx` 設定。 -## 結論 -您現在擁有一份完整、可投入生產環境的 **read mkv metadata java** 使用指南,透過存取 EBML 標頭、段落資訊、標籤與軌道細節,您可以驅動媒體目錄、自動化品質檢查,或豐富影片串流服務。請嘗試這些程式碼片段,將其套用於您的工作流程,並探索函式庫更廣泛的格式支援,以獲得更多可能性。 +**Q: 我可以修改元資料並寫回檔案嗎?** +A: GroupDocs.Metadata 主要聚焦於讀取。寫入支援有限,請參考最新的 API 文件以了解任何寫回功能。 --- -**最後更新:** 2026-02-21 +**最後更新:** 2026-09-02 **測試環境:** GroupDocs.Metadata 24.12 for Java -**作者:** GroupDocs \ No newline at end of file +**作者:** GroupDocs + +## 相關教學 + +- [如何使用 Java 與 GroupDocs.Metadata 批次提取 mkv 字幕](/metadata/java/audio-video-formats/extract-subtitles-mkv-files-java-groupdocs-metadata/) +- [使用 GroupDocs.Metadata 提取影片元資料(Java)](/metadata/java/audio-video-formats/mastering-avi-metadata-handling-groupdocs-java/) +- [如何使用 GroupDocs.Metadata 提取 FLV 元資料(Java)](/metadata/java/audio-video-formats/flv-metadata-extraction-groupdocs-java/) \ No newline at end of file diff --git a/content/hungarian/java/audio-video-formats/extract-matroska-metadata-groupdocs-java/_index.md b/content/hungarian/java/audio-video-formats/extract-matroska-metadata-groupdocs-java/_index.md index 4f3a5fe36..388350396 100644 --- a/content/hungarian/java/audio-video-formats/extract-matroska-metadata-groupdocs-java/_index.md +++ b/content/hungarian/java/audio-video-formats/extract-matroska-metadata-groupdocs-java/_index.md @@ -1,53 +1,84 @@ --- -date: '2026-02-21' -description: Tanulja meg, hogyan olvassa el az mkv metaadatokat Java-ban a GroupDocs.Metadata - használatával, hogyan vonja ki a videó metaadatokat Java-ban, és hogyan kezelje - az EBML fejléceket, címkéket és sávokat. +date: '2026-09-02' +description: Ismerje meg, hogyan lehet mkv metaadatokat kinyerni Java-ban a GroupDocs.Metadata + használatával, beleértve az EBML fejléceket, címkéket, sávokat és a gyakorlati felhasználási + eseteket. keywords: -- extract mkv metadata java -- groupdocs.metadata java -- read matroska file -title: MKV metaadatok olvasása Java-ban a GroupDocs.Metadata segítségével – Teljes - útmutató +- how to extract mkv +- groupdocs metadata java +- extract video metadata java +lastmod: '2026-09-02' +og_description: Hogyan lehet mkv metaadatokat kinyerni Java-ban a GroupDocs.Metadata + használatával. Kapjon lépésről‑lépésre útmutatót, gyors válaszokat és valós példákat + a videók katalógizálásához. +og_image_alt: Guide showing Java code extracting Matroska (MKV) metadata with GroupDocs.Metadata +og_title: Hogyan lehet mkv metaadatokat kinyerni Java-ban a GroupDocs.Metadata segítségével +schemas: +- author: GroupDocs + dateModified: '2026-09-02' + description: Learn how to extract mkv metadata in Java using GroupDocs.Metadata, + covering EBML headers, tags, tracks, and practical use cases. + headline: How to extract mkv metadata in Java with GroupDocs.Metadata + type: TechArticle +- questions: + - answer: Yes, GroupDocs.Metadata supports MP4, AVI, MOV, and many more. The API + pattern is identical – just use the appropriate root package class for the format. + question: Can I extract metadata from other video formats with the same library? + - answer: A commercial license removes trial limits and unlocks full functionality. + The library works in trial mode for evaluation purposes. + question: Is a license required for production use? + - answer: Absolutely. Once the JAR is on your classpath, all metadata reads are + performed locally without any network calls. + question: Does the extraction happen offline? + - answer: The library streams the container structure, keeping memory usage modest. + Ensure your JVM has enough heap for any large tag collections, and consider + increasing `-Xmx` if you process extremely large files. + question: How does the library perform on very large MKV files (several GB)? + - answer: GroupDocs.Metadata primarily focuses on reading. Write support is limited; + refer to the latest API documentation for any write‑back capabilities. + question: Can I modify the metadata and write it back to the file? + type: FAQPage +tags: +- extract mkv +- groupdocs metadata +- java video processing +- matroska metadata +- metadata extraction +title: Hogyan lehet mkv metaadatokat kinyerni Java-ban a GroupDocs.Metadata segítségével type: docs url: /hu/java/audio-video-formats/extract-matroska-metadata-groupdocs-java/ weight: 1 --- -# MKV metaadatok olvasása Java-val a GroupDocs.Metadata segítségével +# Hogyan lehet mkv metaadatokat kinyerni Java-ban a GroupDocs.Metadata segítségével -A multimédia fájlok mindenütt jelen vannak, és a **read mkv metadata java** képesség elengedhetetlen a média kezeléséhez, katalogizálásához és elemzéséhez. Ebben az útmutatóban megtudod, miért fontos a Matroska konténerek metaadatainak kinyerése, hogyan állítsd be a GroupDocs.Metadata‑t, valamint lépésről‑lépésre bemutatjuk a kódot az EBML fejlécek, szegmensinformációk, címkék és sávadatok lekéréséhez. Akár videókatalógust építesz, kódolási paramétereket ellenőrzöl, vagy automatikusan generálsz bélyegképeket, ez az útmutató mindent tartalmaz, amire szükséged lehet. +Ebben az átfogó útmutatóban megtanulja, **hogyan lehet mkv metaadatokat kinyerni Java-ban** a GroupDocs.Metadata könyvtár segítségével. Akár médiakatalógust épít, kódolási paramétereket ellenőriz, vagy automatikusan generál bélyegképeket, a Matroska (MKV) metaadatok programozott kiolvasása számtalan manuális órát takarít meg. Áttekintjük az okokat, az előfeltételeket, a pontos beállítási lépéseket, és részletes kódrészleteket, amelyek az EBML fejléceket, szegmensinformációkat, címkéket és sávadatokat mutatják. ## Gyors válaszok -- **Mit jelent a “read mkv metadata java”?** Ez a folyamat, amikor programozottan olvasod a metaadatokat MKV fájlokból Java használatával. -- **Melyik könyvtárat használjam?** A GroupDocs.Metadata for Java átfogó API‑t biztosít Matroska fájlokhoz. -- **Szükségem van licencre?** Egy ingyenes próbaidőszak elegendő a kiértékeléshez; a licenc eltávolítja a használati korlátokat. -- **Olvashatok más formátumokat is?** Igen, ugyanaz a könyvtár támogatja az MP4, AVI, MP3 és még sok más formátumot. -- **Szükséges internetkapcsolat a futásidőben?** Nem, a kinyerés helyben történik, miután a könyvtárat hozzáadtad a projektedhez. - -## Mi az a Matroska (MKV) metaadat? -A Matroska egy nyílt, rugalmas konténerformátum. Metaadatai közé tartozik az EBML fejléc (fájlverzió, dokumentumtípus), a szegmens részletei (időtartam, multiplexelő alkalmazás), a címkék (címek, leírások) és a sávspecifikációk (audio/video kodekek, nyelv). Ennek az adathalmaznak a elérése lehetővé teszi média katalógusok építését, a fájl integritásának ellenőrzését vagy bélyegképek automatikus generálását. - -## Miért olvassuk a mkv metadata java‑t? -- **Automatizálás** – Részletek automatikus lekérése nagy videókönyvtárakhoz. -- **Minőség‑ellenőrzés** – Kodek‑azonosítók, időtartamok és sávnyelvek validálása közzététel előtt. -- **Keresés és felfedezés** – Kereshető adatbázisok feltöltése címekkel, nyelvekkel és időbélyegekkel. -- **Formátumközi konzisztencia** – Ugyanazt a kódbázist használhatod video metaadatok Java‑ban más konténerekből (MP4, AVI stb.) kinyerésére. - -## Miért a GroupDocs.Metadata for Java? -- **Teljes körű API** – Kezeli az EBML‑t, szegmenseket, címkéket és sávokat alacsony szintű elemzés nélkül. -- **Teljesítmény‑optimalizált** – Hatékonyan működik még több gigabájtos fájlok esetén is. -- **Formátumközi támogatás** – Ugyanaz a kódminta alkalmazható számos audio/video konténerre. -- **Egyszerű Maven integráció** – Egyetlen függőség hozzáadásával elkezdheted a kinyerést. +- **Mit jelent a “read mkv metadata java”?** Ez a Matroska konténer metaadatainak (címek, kodekek, időtartamok stb.) programozott kinyerése MKV fájlokból Java használatával. +- **Melyik könyvtárat kell használnom?** A GroupDocs.Metadata for Java teljes körű, nagy teljesítményű API-t kínál Matroska és 50+ egyéb formátumhoz. +- **Szükségem van licencre?** Az ingyenes próba a kiértékeléshez működik; egy kereskedelmi licenc eltávolítja a próba korlátait. +- **Olvashatok más formátumokat is?** Igen – ugyanaz az API képes MP4, AVI, MOV, MP3 és sok más konténer olvasására. +- **Szükséges-e internetkapcsolat a futásidőben?** Nem – minden kinyerés helyben történik, miután a JAR a classpath-on van. + +## Mi a Matroska (MKV) metaadat? +Matroska (MKV) metaadat a strukturális és leíró információk gyűjteménye, amely a Matroska konténerben tárolódik, beleértve az EBML fejléceket (fájlverzió és dokumentumtípus), szegmens részleteket (időtartam, multiplexelő alkalmazás), felhasználó által definiált címkéket (címek, leírások) és sáv specifikációkat (audio/video kodek azonosítók, nyelv, bitráta). Ennek az adatoknak a hozzáférése lehetővé teszi kereshető katalógusok építését, a fájl integritásának ellenőrzését, vagy automatizált munkafolyamatok, például bélyegkép generálás irányítását. + +## Miért olvassuk a mkv metaadatokat Java-ban? +Az MKV metaadatok Java-ból történő olvasása lehetővé teszi, hogy **automatizálja** több ezer videófájl katalogizálását, **ellenőrizze** a kodek és nyelvi követelményeket a közzététel előtt, és **feltöltse** kereshető adatbázisokba a címeket, időtartamokat és a sáv nyelveket. Emellett egy **egységes kódbázist** biztosít a videó metaadatok kinyeréséhez több konténerből, csökkentve a karbantartási terhet és biztosítva a konzisztens minőségellenőrzést a médiacsővezetékben. + +## Miért használjuk a GroupDocs.Metadata for Java-t? +A GroupDocs.Metadata for Java egy kiforrott könyvtár, amely **50+ bemeneti és kimeneti formátumot** támogat, beleértve a Matroskát, MP4-et, AVI-t és MOV-t. A konténer struktúrákat streameli, így a memóriahasználat alacsony marad még több gigabájtos fájlok esetén is. Az API elrejti az alacsony szintű EBML elemzést, lehetővé téve, hogy az üzleti logikára koncentráljon. Az integráció olyan egyszerű, mint egy Maven függőség hozzáadása, és a könyvtár folyamatosan frissül a legújabb kodek specifikációk kezelésére. ## Előfeltételek -- **GroupDocs.Metadata for Java** 24.12 vagy újabb verzió. -- Telepített Java Development Kit (JDK). -- Maven (vagy kézi JAR kezelés). -- Egy MKV fájl a kísérletezéshez (helyezd el a `YOUR_DOCUMENT_DIRECTORY` könyvtárban). +- **GroupDocs.Metadata for Java** verzió 24.12 vagy újabb. +- Java Development Kit (JDK) 8 vagy újabb telepítve. +- Maven (vagy manuális JAR kezelés) a függőségek kezeléséhez. +- Egy MKV fájl teszteléshez, amely egy olyan mappában van, amelyre a kódból hivatkozhat (például `YOUR_DOCUMENT_DIRECTORY`). ## A GroupDocs.Metadata for Java beállítása -Add hozzá a könyvtárat a projektedhez Maven‑nel vagy töltsd le közvetlenül a JAR‑t. + +A GroupDocs.Metadata for Java egy könyvtár, amely lehetővé teszi metaadatok olvasását több mint 50 fájlformátumból, beleértve a Matroskát (MKV). Adja hozzá a projektjéhez Maven-nel vagy töltse le manuálisan a JAR-t. **Maven:** ```xml @@ -69,13 +100,15 @@ Add hozzá a könyvtárat a projektedhez Maven‑nel vagy töltsd le közvetlen ``` **Közvetlen letöltés:** -Ha nem szeretnél Maven‑t használni, töltsd le a legújabb verziót a [GroupDocs.Metadata for Java releases](https://releases.groupdocs.com/metadata/java/) oldalról. +Ha nem szeretne Maven-t használni, töltse le a legújabb verziót a [GroupDocs.Metadata for Java releases](https://releases.groupdocs.com/metadata/java/) oldalról. -### Licenc megszerzése -Kezdd egy ingyenes próbaidőszakkal a funkciók felfedezéséhez. Termeléshez vásárolj licencet, vagy szerezz ideiglenes licencet a [GroupDocs](https://purchase.groupdocs.com/temporary-license/) oldalról a próba korlátainak eltávolításához. +### Licenc beszerzése + +Kezdje egy ingyenes próbaidőszakkal a funkciók felfedezéséhez. Termeléshez vásároljon licencet vagy szerezzen ideiglenes licencet a [GroupDocs](https://purchase.groupdocs.com/temporary-license/) oldalról a próba korlátok eltávolításához. ### Alapvető inicializálás és beállítás -Az alábbi minimális kód elegendő egy MKV fájl megnyitásához a GroupDocs.Metadata‑val. + +Az alábbi minimális kód szükséges egy MKV fájl megnyitásához a GroupDocs.Metadata segítségével. ```java import com.groupdocs.metadata.Metadata; @@ -91,11 +124,13 @@ public class MetadataExtraction { } ``` -## Hogyan olvassuk a mkv metadata java‑t a GroupDocs.Metadata‑val -Most minden metaadat‑területet részletesen megvizsgálunk, amelyet olvashatsz. +## Hogyan olvassuk a mkv metaadatokat Java-ban a GroupDocs.Metadata segítségével + +`Metadata` a fő osztály, amely egy MKV fájlt képvisel és hozzáférést biztosít a metaadataihoz. Töltse be az MKV fájlt a `new Metadata("path/to/file.mkv")` segítségével, és hívja meg a megfelelő gettereket – `getRootPackageGeneric()`, `getSegments()`, `getTags()`, és `getTracks()` – hogy lekérje az egyes metaadat szekciókat. Ez az egyetlen híváslánc teljes láthatóságot biztosít az EBML fejléc, a szegmensinformációk, a felhasználói címkék és az egyes sáv részletek felett anélkül, hogy alacsony szintű elemzési logikát kellene írnia. ### Matroska EBML fejléc olvasása -Az EBML fejléc tárolja a fájl alapvető információit, például a verziót és a dokumentumtípust. + +Az EBML fejléc tárolja a fájl alapinformációit, mint a verzió, dokumentumtípus és fájlméret. `getRootPackageGeneric()` visszaadja a megnyitott fájl EBML fejléc csomagját. ```java import com.groupdocs.metadata.Metadata; @@ -119,11 +154,12 @@ public class ReadMatroskaEBMLHeader { ``` **Kulcspontok** -- `getRootPackageGeneric()` adja meg a Matroska csomag belépési pontját. -- Az EBML tulajdonságok (`docType`, `version`, stb.) segítenek a fájl kompatibilitásának ellenőrzésében. +- `getRootPackageGeneric()` visszaadja a Matroska csomag belépési pontját. +- Az EBML tulajdonságok (`docType`, `version`, stb.) lehetővé teszik a fájl kompatibilitásának ellenőrzését a mélyebb feldolgozás előtt. -### Matroska szegmensinformációk olvasása -A szegmensek leírják a teljes média idővonalát és a létrehozó eszközöket. +### Matroska szegmensinformáció olvasása + +A szegmensek leírják a teljes média idővonalát, a létrehozó eszközöket és az opcionális cím információkat. `getSegments()` egy szegmens objektumok gyűjteményét adja vissza, amely tartalmazza az időtartamot és a létrehozási részleteket. ```java import com.groupdocs.metadata.Metadata; @@ -152,11 +188,12 @@ public class ReadMatroskaSegmentInformation { ``` **Kulcspontok** -- `getSegments()` egy gyűjteményt ad vissza; minden szegmens saját címmel, időtartammal és létrehozó alkalmazás részletekkel rendelkezhet. -- Hasznos lejátszási listák építéséhez vagy kódolási paraméterek validálásához. +- `getSegments()` egy gyűjteményt ad vissza; minden szegmens saját címet, időtartamot és létrehozó alkalmazás részleteket tartalmazhat. +- Ez az adat hasznos lejátszási listák építéséhez vagy a kódolási paraméterek ellenőrzéséhez egy fájlkészletben. + +### Matroska címke metaadat olvasása -### Matroska címke metaadatok olvasása -A címkék emberi olvasásra szánt információkat tárolnak, mint például címek, előadók vagy egyedi megjegyzések. +A címkék ember által olvasható információkat tárolnak, mint címek, előadók vagy egyéni megjegyzések. `getTags()` visszaadja a fájlhoz kapcsolódó címke bejegyzések listáját. ```java import com.groupdocs.metadata.Metadata; @@ -186,11 +223,12 @@ public class ReadMatroskaTagMetadata { ``` **Kulcspontok** -- A címkék `targetType` szerint vannak rendezve (pl. `movie`, `track`). -- A `simpleTag` bejegyzések kulcs/érték párokat tartalmaznak, például `TITLE=My Video`. +- A címkék a `targetType` szerint vannak szervezve (pl. `movie`, `track`). +- `simpleTag` bejegyzések kulcs/érték párokat tartalmaznak, például `TITLE=My Video`. -### Matroska sáv metaadatok olvasása -A sávok egyedi audio, video vagy felirat adatfolyamokat képviselnek. +### Matroska sáv metaadat olvasása + +A sávok a konténeren belüli egyedi audio, video vagy felirat adatfolyamokat képviselik. `getTracks()` hozzáférést biztosít minden sáv technikai specifikációjához. ```java import com.groupdocs.metadata.Metadata; @@ -215,45 +253,50 @@ public class ReadMatroskaTrackMetadata { ``` **Kulcspontok** -- `track.getType()` megmutatja, hogy video, audio vagy felirat-e. -- `codecId` segít azonosítani a kodeket (pl. `V_MPEG4/ISO/AVC`). -- Ezek az adatok elengedhetetlenek a transzkódolási folyamatokhoz vagy minőség‑ellenőrzéshez. +- `track.getType()` megmondja, hogy a stream video, audio vagy felirat. +- `codecId` azonosítja a kodeket (pl. `V_MPEG4/ISO/AVC`). +- Ez az információ elengedhetetlen a transzkódolási folyamatokhoz, minőségellenőrzéshez és dinamikus streaming döntésekhez. + +## Gyakori felhasználási esetek mkv metaadatok Java-ban történő olvasásához -## Gyakori felhasználási esetek a read mkv metadata java‑hoz -- **Média katalógusok** – Adatbázistáblák feltöltése címekkel, időtartamokkal és nyelvkódokkal. -- **Automatizált QC** – Ellenőrizd, hogy minden fájl tartalmazza a szükséges címkéket a közzététel előtt. -- **Dinamikus streaming** – A felhasználói preferenciák alapján válaszd ki a megfelelő audio/felirat sávot. -- **Tartalom migráció** – Metaadatok egyszeri kinyerése, majd beillesztése egy új tárolórendszerbe. +- **Médiakatalógusok** – Adattáblák feltöltése címekkel, időtartamokkal és nyelvkódokkal a gyors kereséshez. +- **Automatizált minőségellenőrzés** – Ellenőrizze, hogy minden fájl tartalmazza a szükséges címkéket és megfelel a kodek szabványoknak a kiadás előtt. +- **Dinamikus streaming** – Válassza ki a megfelelő audio vagy felirat sávot a felhasználói beállítások alapján futásidőben. +- **Tartalom migráció** – Egyszer kinyerni a metaadatokat, majd beilleszteni egy új tárolórendszerbe vagy tartalom‑szállító hálózatba. ## Gyakori problémák és hibaelhárítás + | Tünet | Valószínű ok | Megoldás | -|---------|--------------|-----| -| `NullPointerException` a `getEbmlHeader()` hívásakor | Helytelen fájlútvonal vagy a fájl nem található | Ellenőrizd a `new Metadata("...")` útvonalát, és győződj meg róla, hogy a fájl létezik. | -| Nem térnek vissza címkék | Az MKV fájl nem tartalmaz címkeelemeket | Használj olyan médiafájlt, amely metaadatcímkéket tartalmaz (pl. MKVToolNix‑szel hozzáadva). | -| Lassú feldolgozás nagy fájloknál | Nem elegendő heap memória | Növeld a JVM heap méretét (`-Xmx2g` vagy nagyobb), vagy ha lehetséges, dolgozd fel a fájlt darabokban. | +|-------|--------------|----------| +| `NullPointerException` a `getEbmlHeader()` elérésekor | A fájl útvonala helytelen vagy a fájl nem található | Ellenőrizze az útvonalat a `new Metadata("...")` hívásban, és győződjön meg róla, hogy a fájl létezik a lemezen. | +| Nincsenek visszaadott címkék | Az MKV fájl nem tartalmaz címke elemeket | Használjon olyan médiafájlt, amely metaadat címkéket tartalmaz (pl. MKVToolNix-szel hozzáadva). | +| Lassú feldolgozás nagy fájlok esetén | Nem elegendő heap memória | Növelje a JVM heap méretét (`-Xmx2g` vagy nagyobb), vagy ha lehetséges, dolgozza fel a fájlt darabokban. | ## Gyakran feltett kérdések -**K: Kinyerhetek metaadatot más videóformátumokból ugyanazzal a könyvtárral?** -V: Igen, a GroupDocs.Metadata támogatja az MP4, AVI, MOV és még sok más formátumot. Az API‑minta hasonló – csak a megfelelő gyökércsomag osztályt kell használni. - -**K: Szükséges licenc a termeléshez?** -V: A licenc eltávolítja a próbaidőszak korlátait és teljes funkcionalitást biztosít. A könyvtár próba‑módban is működik kiértékelés céljából. +**Q: Kinyerhetek metaadatokat más videóformátumokból ugyanazzal a könyvtárral?** +A: Igen, a GroupDocs.Metadata támogatja az MP4, AVI, MOV és sok más formátumot. Az API minta azonos – csak a megfelelő root package osztályt kell használni a formátumhoz. -**K: Offline történik a kinyerés?** -V: Teljesen igen. Miután a JAR a classpath‑on van, minden metaadat‑olvasás helyben, hálózati hívás nélkül történik. +**Q: Szükséges licenc a termeléshez?** +A: A kereskedelmi licenc eltávolítja a próba korlátait és feloldja a teljes funkcionalitást. A könyvtár próba módban is működik kiértékelési célokra. -**K: Hogyan teljesít ez nagyon nagy MKV fájloknál (több GB)?** -V: A könyvtár a konténer struktúráját streameli, így a memóriahasználat alacsony marad, de ügyelj arra, hogy a JVM‑nek elegendő heapje legyen a nagyobb címke‑gyűjteményekhez. +**Q: Offline történik a kinyerés?** +A: Teljesen. Miután a JAR a classpath-on van, minden metaadatolvasás helyben történik, hálózati hívás nélkül. -**K: Módosíthatom a metaadatot és visszaírhatom a fájlba?** -V: A GroupDocs.Metadata elsősorban az olvasásra fókuszál. Az írási lehetőségek korlátozottak; a legújabb API‑dokumentációban ellenőrizd a lehetséges írási támogatást. +**Q: Hogyan teljesít a könyvtár nagyon nagy MKV fájlok (több GB) esetén?** +A: A könyvtár streameli a konténer struktúráját, így a memóriahasználat mérsékelt marad. Győződjön meg róla, hogy a JVM elegendő heap memóriával rendelkezik a nagy címke gyűjteményekhez, és fontolja meg a `-Xmx` növelését, ha extrém nagy fájlokat dolgoz fel. -## Összegzés -Most már egy teljes, termelés‑kész útmutatód van a **read mkv metadata java** feladathoz a GroupDocs.Metadata használatával. Az EBML fejlécek, szegmensinformációk, címkék és sávadatok kihasználásával médiakatalógusokat építhetsz, automatizálhatod a minőség‑ellenőrzést, vagy gazdagíthatod a videó‑streaming szolgáltatásokat. Kísérletezz a kódrészletekkel, igazítsd őket a saját folyamataidhoz, és fedezd fel a könyvtár szélesebb formátumtámogatását további lehetőségekért. +**Q: Módosíthatom a metaadatokat és visszaírhatom a fájlba?** +A: A GroupDocs.Metadata elsősorban az olvasásra fókuszál. Az írási támogatás korlátozott; tekintse meg a legújabb API dokumentációt az esetleges visszaírási lehetőségekért. --- -**Utoljára frissítve:** 2026-02-21 -**Tesztelt verzió:** GroupDocs.Metadata 24.12 for Java -**Szerző:** GroupDocs \ No newline at end of file +**Utolsó frissítés:** 2026-09-02 +**Tesztelve a következővel:** GroupDocs.Metadata 24.12 for Java +**Szerző:** GroupDocs + +## Kapcsolódó oktatóanyagok + +- [Hogyan lehet kötegelt módon kinyerni mkv feliratokat Java-val és a GroupDocs.Metadata segítségével](/metadata/java/audio-video-formats/extract-subtitles-mkv-files-java-groupdocs-metadata/) +- [Videó metaadatok kinyerése Java-ban a GroupDocs.Metadata segítségével](/metadata/java/audio-video-formats/mastering-avi-metadata-handling-groupdocs-java/) +- [Hogyan kell FLV metaadatokat kinyerni Java-val a GroupDocs.Metadata segítségével](/metadata/java/audio-video-formats/flv-metadata-extraction-groupdocs-java/) \ No newline at end of file diff --git a/content/indonesian/java/audio-video-formats/extract-matroska-metadata-groupdocs-java/_index.md b/content/indonesian/java/audio-video-formats/extract-matroska-metadata-groupdocs-java/_index.md index 483dce6d8..35e166cf8 100644 --- a/content/indonesian/java/audio-video-formats/extract-matroska-metadata-groupdocs-java/_index.md +++ b/content/indonesian/java/audio-video-formats/extract-matroska-metadata-groupdocs-java/_index.md @@ -1,53 +1,88 @@ --- -date: '2026-02-21' -description: Pelajari cara membaca metadata MKV dengan Java menggunakan GroupDocs.Metadata, - mengekstrak metadata video Java, dan menangani header EBML, tag, serta trek. +date: '2026-09-02' +description: Pelajari cara mengekstrak metadata mkv di Java menggunakan GroupDocs.Metadata, + mencakup EBML headers, tags, tracks, dan contoh penggunaan praktis. keywords: -- extract mkv metadata java -- groupdocs.metadata java -- read matroska file -title: Baca Metadata MKV Java dengan GroupDocs.Metadata – Panduan Lengkap +- how to extract mkv +- groupdocs metadata java +- extract video metadata java +lastmod: '2026-09-02' +og_description: Cara mengekstrak metadata mkv di Java menggunakan GroupDocs.Metadata. + Dapatkan step‑by‑step guidance, quick answers, dan real‑world examples untuk video + cataloguing. +og_image_alt: Guide showing Java code extracting Matroska (MKV) metadata with GroupDocs.Metadata +og_title: Cara mengekstrak metadata mkv di Java dengan GroupDocs.Metadata +schemas: +- author: GroupDocs + dateModified: '2026-09-02' + description: Learn how to extract mkv metadata in Java using GroupDocs.Metadata, + covering EBML headers, tags, tracks, and practical use cases. + headline: How to extract mkv metadata in Java with GroupDocs.Metadata + type: TechArticle +- questions: + - answer: Yes, GroupDocs.Metadata supports MP4, AVI, MOV, and many more. The API + pattern is identical – just use the appropriate root package class for the format. + question: Can I extract metadata from other video formats with the same library? + - answer: A commercial license removes trial limits and unlocks full functionality. + The library works in trial mode for evaluation purposes. + question: Is a license required for production use? + - answer: Absolutely. Once the JAR is on your classpath, all metadata reads are + performed locally without any network calls. + question: Does the extraction happen offline? + - answer: The library streams the container structure, keeping memory usage modest. + Ensure your JVM has enough heap for any large tag collections, and consider + increasing `-Xmx` if you process extremely large files. + question: How does the library perform on very large MKV files (several GB)? + - answer: GroupDocs.Metadata primarily focuses on reading. Write support is limited; + refer to the latest API documentation for any write‑back capabilities. + question: Can I modify the metadata and write it back to the file? + type: FAQPage +tags: +- extract mkv +- groupdocs metadata +- java video processing +- matroska metadata +- metadata extraction +title: Cara mengekstrak metadata mkv di Java dengan GroupDocs.Metadata type: docs url: /id/java/audio-video-formats/extract-matroska-metadata-groupdocs-java/ weight: 1 --- -# Baca Metadata MKV Java dengan GroupDocs.Metadata +# Cara mengekstrak metadata mkv di Java dengan GroupDocs.Metadata -File multimedia ada di mana-mana, dan kemampuan untuk **read mkv metadata java** sangat penting untuk manajemen media, katalog, dan analitik. Dalam tutorial ini Anda akan menemukan mengapa mengekstrak metadata dari kontainer Matroska penting, cara menyiapkan GroupDocs.Metadata, dan kode langkah‑demi‑langkah untuk mengambil header EBML, informasi segmen, tag, dan data trek. Baik Anda membangun katalog video, memvalidasi parameter enkoding, atau menghasilkan thumbnail secara otomatis, panduan ini memberi Anda semua yang diperlukan. +Di panduan komprehensif ini Anda akan belajar **cara mengekstrak metadata mkv di Java** menggunakan pustaka GroupDocs.Metadata. Baik Anda sedang membangun katalog media, memvalidasi parameter enkoding, atau mengotomatisasi pembuatan thumbnail, membaca metadata Matroska (MKV) secara programatik menghemat banyak jam kerja manual. Kami akan membahas mengapa, prasyarat, langkah‑langkah penyiapan yang tepat, dan potongan kode terperinci yang menampilkan header EBML, informasi segmen, tag, dan data trek. ## Jawaban Cepat -- **Apa arti “read mkv metadata java”?** Ini adalah proses membaca metadata secara programatik dari file MKV menggunakan Java. -- **Library mana yang harus saya gunakan?** GroupDocs.Metadata for Java menyediakan API komprehensif untuk file Matroska. -- **Apakah saya memerlukan lisensi?** Versi percobaan gratis dapat digunakan untuk evaluasi; lisensi menghilangkan batasan penggunaan. -- **Bisakah saya membaca format lain?** Ya, library yang sama mendukung MP4, AVI, MP3, dan banyak lagi. -- **Apakah akses internet diperlukan saat runtime?** Tidak, semua ekstraksi terjadi secara lokal setelah library ditambahkan ke proyek Anda. - -## Apa itu Metadata Matroska (MKV)? -Matroska adalah format kontainer terbuka dan fleksibel. Metadata-nya mencakup header EBML (versi file, tipe dokumen), detail segmen (durasi, aplikasi muxing), tag (judul, deskripsi), dan spesifikasi trek (codec audio/video, bahasa). Mengakses data ini memungkinkan Anda membangun katalog media, memverifikasi integritas file, atau menghasilkan thumbnail secara otomatis. - -## Mengapa membaca mkv metadata java? -- **Otomasi** – Mengambil detail secara otomatis untuk perpustakaan video besar. -- **Kontrol kualitas** – Memvalidasi ID codec, durasi, dan bahasa trek sebelum dipublikasikan. -- **Pencarian & penemuan** – Mengisi basis data yang dapat dicari dengan judul, bahasa, dan cap waktu. -- **Konsistensi lintas format** – Menggunakan basis kode yang sama untuk mengekstrak video metadata java dari kontainer lain (MP4, AVI, dll.). - -## Mengapa Menggunakan GroupDocs.Metadata untuk Java? -- **API lengkap** – Menangani EBML, segmen, tag, dan trek tanpa parsing tingkat rendah. -- **Dioptimalkan untuk kinerja** – Bekerja secara efisien bahkan dengan file berukuran multi‑gigabyte. -- **Dukungan lintas format** – Pola kode yang sama berlaku untuk banyak kontainer audio/video. -- **Integrasi Maven sederhana** – Tambahkan satu dependensi dan mulai mengekstrak. - -## Prerequisites -- **GroupDocs.Metadata for Java** versi 24.12 atau lebih baru. -- Java Development Kit (JDK) terpasang. -- Maven (atau penanganan JAR manual). -- File MKV untuk percobaan (letakkan di `YOUR_DOCUMENT_DIRECTORY`). +- **What does “read mkv metadata java” mean?** Ini adalah ekstraksi programatik metadata kontainer Matroska (judul, codec, durasi, dll.) dari file MKV menggunakan Java. +- **Which library should I use?** GroupDocs.Metadata untuk Java menawarkan API lengkap, berperforma tinggi untuk Matroska dan lebih dari 50 format lainnya. +- **Do I need a license?** Versi percobaan gratis dapat digunakan untuk evaluasi; lisensi komersial menghapus semua batas percobaan. +- **Can I read other formats?** Ya – API yang sama dapat membaca MP4, AVI, MOV, MP3, dan banyak kontainer lainnya. +- **Is internet access required at runtime?** Tidak – semua ekstraksi terjadi secara lokal setelah JAR berada di classpath Anda. + +## Apa itu metadata Matroska (MKV)? + +Metadata Matroska (MKV) adalah kumpulan informasi struktural dan deskriptif yang disimpan di dalam kontainer Matroska, termasuk header EBML (versi file dan tipe dokumen), detail segmen (durasi, aplikasi multiplexing), tag yang ditentukan pengguna (judul, deskripsi), dan spesifikasi trek (ID codec audio/video, bahasa, bitrate). Mengakses data ini memungkinkan Anda membangun katalog yang dapat dicari, memverifikasi integritas file, atau menggerakkan alur kerja otomatis seperti pembuatan thumbnail. + +## Mengapa membaca metadata mkv di Java? + +Membaca metadata MKV dari Java memungkinkan Anda **mengotomatiskan** katalogisasi ribuan file video, **memvalidasi** persyaratan codec dan bahasa sebelum dipublikasikan, dan **mengisi** basis data yang dapat dicari dengan judul, durasi, dan bahasa trek. Ini juga menyediakan **basis kode tunggal** untuk mengekstrak metadata video dari berbagai kontainer, mengurangi beban pemeliharaan dan memastikan pemeriksaan kualitas yang konsisten di seluruh alur media Anda. + +## Mengapa menggunakan GroupDocs.Metadata untuk Java? + +GroupDocs.Metadata untuk Java adalah pustaka matang yang mendukung **lebih dari 50 format input dan output**, termasuk Matroska, MP4, AVI, dan MOV. Ia melakukan streaming struktur kontainer, sehingga konsumsi memori tetap rendah bahkan untuk file multi‑gigabyte. API mengabstraksi parsing EBML tingkat rendah, memungkinkan Anda fokus pada logika bisnis. Integrasi semudah menambahkan satu dependensi Maven, dan pustaka terus diperbarui untuk menangani spesifikasi codec terbaru. + +## Prasyarat +- **GroupDocs.Metadata for Java** versi 24.12 atau lebih baru. +- Java Development Kit (JDK) 8 atau lebih baru terpasang. +- Maven (atau penanganan JAR manual) untuk mengelola dependensi. +- File MKV untuk pengujian, ditempatkan dalam folder yang dapat Anda referensikan dari kode (misalnya `YOUR_DOCUMENT_DIRECTORY`). ## Menyiapkan GroupDocs.Metadata untuk Java -Tambahkan library ke proyek Anda menggunakan Maven atau unduh JAR secara langsung. -**Maven:** +GroupDocs.Metadata untuk Java adalah pustaka yang memungkinkan membaca metadata dari lebih dari 50 format file, termasuk Matroska (MKV). Tambahkan ke proyek Anda dengan Maven atau unduh JAR secara manual. + +**Maven:** ```xml @@ -66,13 +101,15 @@ Tambahkan library ke proyek Anda menggunakan Maven atau unduh JAR secara langsun ``` -**Direct Download:** +**Direct download:** Jika Anda lebih memilih tidak menggunakan Maven, unduh versi terbaru dari [GroupDocs.Metadata for Java releases](https://releases.groupdocs.com/metadata/java/). -### License Acquisition -Mulailah dengan percobaan gratis untuk menjelajahi fitur. Untuk penggunaan produksi, beli lisensi atau dapatkan lisensi sementara dari [GroupDocs](https://purchase.groupdocs.com/temporary-license/) untuk menghilangkan batasan percobaan. +### Akuisisi Lisensi + +Mulailah dengan percobaan gratis untuk menjelajahi fitur. Untuk penggunaan produksi, beli lisensi atau dapatkan lisensi sementara dari [GroupDocs](https://purchase.groupdocs.com/temporary-license/) untuk menghapus batasan percobaan. + +### Inisialisasi dan Penyiapan Dasar -### Basic Initialization and Setup Berikut adalah kode minimal yang diperlukan untuk membuka file MKV dengan GroupDocs.Metadata. ```java @@ -89,11 +126,15 @@ public class MetadataExtraction { } ``` -## Cara membaca mkv metadata java dengan GroupDocs.Metadata -Sekarang kita akan menyelami setiap area metadata yang dapat Anda baca. +## Cara membaca metadata mkv di Java dengan GroupDocs.Metadata + +`Metadata` adalah kelas utama yang mewakili file MKV dan menyediakan akses ke metadata-nya. +Muat file MKV Anda dengan `new Metadata("path/to/file.mkv")` dan panggil getter yang sesuai – `getRootPackageGeneric()`, `getSegments()`, `getTags()`, dan `getTracks()` – untuk mengambil setiap bagian metadata. Rantai pemanggilan tunggal ini memberi Anda visibilitas penuh ke header EBML, informasi segmen, tag pengguna, dan detail trek individual tanpa menulis logika parsing tingkat rendah. + +### Membaca header EBML Matroska -### Membaca Header EBML Matroska -Header EBML menyimpan informasi inti file seperti versi dan tipe dokumen. +Header EBML menyimpan informasi inti file seperti versi, tipe dokumen, dan ukuran file. +`getRootPackageGeneric()` mengembalikan paket header EBML dari file yang dibuka. ```java import com.groupdocs.metadata.Metadata; @@ -116,12 +157,14 @@ public class ReadMatroskaEBMLHeader { } ``` -**Poin Penting** -- `getRootPackageGeneric()` memberikan Anda titik masuk paket Matroska. -- Properti EBML (`docType`, `version`, dll.) membantu Anda memverifikasi kompatibilitas file. +**Key points** +- `getRootPackageGeneric()` mengembalikan titik masuk paket Matroska. +- Properti EBML (`docType`, `version`, dll.) memungkinkan Anda memverifikasi kompatibilitas file sebelum pemrosesan lebih lanjut. -### Membaca Informasi Segmen Matroska -Segmen menggambarkan garis waktu media secara keseluruhan dan alat pembuatannya. +### Membaca informasi segmen Matroska + +Segmen menggambarkan garis waktu media secara keseluruhan, alat pembuatan, dan informasi judul opsional. +`getSegments()` mengambil koleksi objek segmen yang berisi durasi dan detail pembuatan. ```java import com.groupdocs.metadata.Metadata; @@ -149,12 +192,14 @@ public class ReadMatroskaSegmentInformation { } ``` -**Poin Penting** -- `getSegments()` mengembalikan koleksi; setiap segmen dapat memiliki judul, durasi, dan detail aplikasi pembuatannya sendiri. -- Berguna untuk membuat playlist atau memvalidasi parameter enkoding. +**Key points** +- `getSegments()` mengembalikan koleksi; setiap segmen dapat memiliki judul, durasi, dan detail aplikasi pembuatan masing‑masing. +- Data ini berguna untuk membangun playlist atau memvalidasi parameter enkoding pada sekumpulan file. + +### Membaca metadata tag Matroska -### Membaca Metadata Tag Matroska -Tag menyimpan informasi yang dapat dibaca manusia seperti judul, artis, atau catatan khusus. +Tag menyimpan informasi yang dapat dibaca manusia seperti judul, artis, atau catatan khusus. +`getTags()` mengembalikan daftar entri tag yang terkait dengan file. ```java import com.groupdocs.metadata.Metadata; @@ -183,12 +228,14 @@ public class ReadMatroskaTagMetadata { } ``` -**Poin Penting** -- Tag diatur berdasarkan `targetType` (mis., `movie`, `track`). +**Key points** +- Tag diatur berdasarkan `targetType` (misalnya, `movie`, `track`). - Entri `simpleTag` menyimpan pasangan kunci/nilai seperti `TITLE=My Video`. -### Membaca Metadata Trek Matroska -Trek mewakili aliran audio, video, atau subtitle individual. +### Membaca metadata trek Matroska + +Trek mewakili aliran audio, video, atau subtitle individual di dalam kontainer. +`getTracks()` memberikan akses ke spesifikasi teknis setiap trek. ```java import com.groupdocs.metadata.Metadata; @@ -212,46 +259,49 @@ public class ReadMatroskaTrackMetadata { } ``` -**Poin Penting** -- `track.getType()` memberi tahu Anda apakah itu video, audio, atau subtitle. -- `codecId` memungkinkan Anda mengidentifikasi codec (mis., `V_MPEG4/ISO/AVC`). -- Data ini penting untuk pipeline transcoding atau pemeriksaan kualitas. +**Key points** +- `track.getType()` memberi tahu Anda apakah aliran tersebut video, audio, atau subtitle. +- `codecId` mengidentifikasi codec (misalnya, `V_MPEG4/ISO/AVC`). +- Informasi ini penting untuk pipeline transcoding, pemeriksaan kualitas, dan keputusan streaming dinamis. -## Kasus Penggunaan Umum untuk membaca mkv metadata java -- **Media catalogues** – Mengisi tabel basis data dengan judul, durasi, dan kode bahasa. -- **Automated QC** – Memverifikasi bahwa setiap file berisi tag yang diperlukan sebelum dipublikasikan. -- **Dynamic streaming** – Memilih trek audio/subtitle yang tepat berdasarkan preferensi pengguna. -- **Content migration** – Mengekstrak metadata sekali, lalu menyuntikkannya ke sistem penyimpanan baru. +## Contoh penggunaan umum untuk membaca metadata mkv di Java -## Masalah Umum & Pemecahan Masalah -| Gejala | Penyebab Kemungkinan | Solusi | -|---------|--------------|-----| -| `NullPointerException` saat mengakses `getEbmlHeader()` | Jalur file tidak benar atau file tidak ditemukan | Verifikasi jalur di `new Metadata("...")` dan pastikan file ada. | -| Tidak ada tag yang dikembalikan | File MKV tidak memiliki elemen tag | Gunakan file media yang berisi tag metadata (mis., ditambahkan melalui MKVToolNix). | -| Proses lambat pada file besar | Memori heap tidak cukup | Tingkatkan heap JVM (`-Xmx2g` atau lebih tinggi) atau proses file dalam potongan jika memungkinkan. | +- **Media catalogs** – Isi tabel basis data dengan judul, durasi, dan kode bahasa untuk pencarian cepat. +- **Automated quality control** – Verifikasi bahwa setiap file berisi tag yang diperlukan dan sesuai dengan standar codec sebelum dirilis. +- **Dynamic streaming** – Pilih trek audio atau subtitle yang sesuai berdasarkan preferensi pengguna pada waktu berjalan. +- **Content migration** – Ekstrak metadata sekali, lalu sisipkan ke sistem penyimpanan baru atau jaringan distribusi konten. -## Pertanyaan yang Sering Diajukan +## Masalah umum & pemecahan masalah -**Q: Bisakah saya mengekstrak metadata dari format video lain dengan library yang sama?** -A: Ya, GroupDocs.Metadata mendukung MP4, AVI, MOV, dan banyak lagi. Pola API serupa—cukup gunakan kelas paket root yang sesuai. +| Gejala | Penyebab kemungkinan | Solusi | +|---------|----------------------|--------| +| `NullPointerException` saat mengakses `getEbmlHeader()` | Jalur file tidak benar atau file tidak ditemukan | Verifikasi jalur di `new Metadata("...")` dan pastikan file ada di disk. | +| Tidak ada tag yang dikembalikan | File MKV tidak memiliki elemen tag | Gunakan file media yang berisi tag metadata (misalnya, ditambahkan melalui MKVToolNix). | +| Pemrosesan lambat pada file besar | Memori heap tidak cukup | Tingkatkan heap JVM (`-Xmx2g` atau lebih tinggi) atau proses file dalam potongan jika memungkinkan. | -**Q: Apakah lisensi diperlukan untuk penggunaan produksi?** -A: Lisensi menghilangkan batasan percobaan dan memberikan fungsionalitas penuh. Library berfungsi dalam mode percobaan untuk evaluasi. +## Pertanyaan yang sering diajukan -**Q: Apakah ekstraksi terjadi secara offline?** -A: Tentu saja. Setelah JAR berada di classpath Anda, semua pembacaan metadata dilakukan secara lokal tanpa panggilan jaringan. +**Q: Can I extract metadata from other video formats with the same library?** +A: Ya, GroupDocs.Metadata mendukung MP4, AVI, MOV, dan banyak lagi. Pola API identik – cukup gunakan kelas paket root yang sesuai untuk format tersebut. -**Q: Bagaimana kinerjanya pada file MKV yang sangat besar (beberapa GB)?** -A: Library men-stream struktur kontainer, sehingga penggunaan memori tetap wajar, namun pastikan JVM Anda memiliki heap yang cukup untuk koleksi tag yang besar. +**Q: Is a license required for production use?** +A: Lisensi komersial menghapus batas percobaan dan membuka semua fungsi. Pustaka berfungsi dalam mode percobaan untuk tujuan evaluasi. -**Q: Bisakah saya memodifikasi metadata dan menulisnya kembali ke file?** -A: GroupDocs.Metadata terutama fokus pada pembacaan. Kemampuan menulis terbatas; periksa dokumentasi API terbaru untuk dukungan penulisan. +**Q: Does the extraction happen offline?** +A: Tentu saja. Setelah JAR berada di classpath Anda, semua pembacaan metadata dilakukan secara lokal tanpa panggilan jaringan apa pun. -## Kesimpulan -Anda kini memiliki panduan lengkap dan siap produksi untuk **read mkv metadata java** menggunakan GroupDocs.Metadata. Dengan memanfaatkan header EBML, informasi segmen, tag, dan detail trek, Anda dapat memperkuat katalog media, mengotomatiskan pemeriksaan kualitas, atau memperkaya layanan streaming video. Bereksperimenlah dengan potongan kode, sesuaikan dengan alur kerja Anda, dan jelajahi dukungan format yang lebih luas dari library untuk lebih banyak kemungkinan. +**Q: How does the library perform on very large MKV files (several GB)?** +A: Pustaka melakukan streaming struktur kontainer, menjaga penggunaan memori tetap wajar. Pastikan JVM Anda memiliki heap yang cukup untuk koleksi tag besar, dan pertimbangkan meningkatkan `-Xmx` jika Anda memproses file yang sangat besar. ---- +**Q: Can I modify the metadata and write it back to the file?** +A: GroupDocs.Metadata terutama fokus pada pembacaan. Dukungan penulisan terbatas; lihat dokumentasi API terbaru untuk kemampuan menulis kembali. -**Terakhir Diperbarui:** 2026-02-21 +**Terakhir Diperbarui:** 2026-09-02 **Diuji Dengan:** GroupDocs.Metadata 24.12 for Java -**Penulis:** GroupDocs \ No newline at end of file +**Penulis:** GroupDocs + +## Tutorial Terkait + +- [Cara mengekstrak subtitle mkv secara batch dengan Java dan GroupDocs.Metadata](/metadata/java/audio-video-formats/extract-subtitles-mkv-files-java-groupdocs-metadata/) +- [Ekstrak metadata video java menggunakan GroupDocs.Metadata](/metadata/java/audio-video-formats/mastering-avi-metadata-handling-groupdocs-java/) +- [Cara Mengekstrak Metadata FLV Java dengan GroupDocs.Metadata](/metadata/java/audio-video-formats/flv-metadata-extraction-groupdocs-java/) \ No newline at end of file diff --git a/content/italian/java/audio-video-formats/extract-matroska-metadata-groupdocs-java/_index.md b/content/italian/java/audio-video-formats/extract-matroska-metadata-groupdocs-java/_index.md index ed43ddb23..68addc7e4 100644 --- a/content/italian/java/audio-video-formats/extract-matroska-metadata-groupdocs-java/_index.md +++ b/content/italian/java/audio-video-formats/extract-matroska-metadata-groupdocs-java/_index.md @@ -1,53 +1,87 @@ --- -date: '2026-02-21' -description: Impara come leggere i metadati MKV in Java usando GroupDocs.Metadata, - estrarre i metadati video in Java e gestire le intestazioni EBML, i tag e le tracce. +date: '2026-09-02' +description: Scopri come estrarre i metadati mkv in Java usando GroupDocs.Metadata, + coprendo le intestazioni EBML, i tag, le tracce e casi d'uso pratici. keywords: -- extract mkv metadata java -- groupdocs.metadata java -- read matroska file -title: Leggi i metadati MKV in Java con GroupDocs.Metadata – Guida completa +- how to extract mkv +- groupdocs metadata java +- extract video metadata java +lastmod: '2026-09-02' +og_description: Come estrarre i metadati mkv in Java usando GroupDocs.Metadata. Ottieni + una guida passo‑passo, risposte rapide e esempi concreti per la catalogazione video. +og_image_alt: Guide showing Java code extracting Matroska (MKV) metadata with GroupDocs.Metadata +og_title: Come estrarre i metadati mkv in Java con GroupDocs.Metadata +schemas: +- author: GroupDocs + dateModified: '2026-09-02' + description: Learn how to extract mkv metadata in Java using GroupDocs.Metadata, + covering EBML headers, tags, tracks, and practical use cases. + headline: How to extract mkv metadata in Java with GroupDocs.Metadata + type: TechArticle +- questions: + - answer: Yes, GroupDocs.Metadata supports MP4, AVI, MOV, and many more. The API + pattern is identical – just use the appropriate root package class for the format. + question: Can I extract metadata from other video formats with the same library? + - answer: A commercial license removes trial limits and unlocks full functionality. + The library works in trial mode for evaluation purposes. + question: Is a license required for production use? + - answer: Absolutely. Once the JAR is on your classpath, all metadata reads are + performed locally without any network calls. + question: Does the extraction happen offline? + - answer: The library streams the container structure, keeping memory usage modest. + Ensure your JVM has enough heap for any large tag collections, and consider + increasing `-Xmx` if you process extremely large files. + question: How does the library perform on very large MKV files (several GB)? + - answer: GroupDocs.Metadata primarily focuses on reading. Write support is limited; + refer to the latest API documentation for any write‑back capabilities. + question: Can I modify the metadata and write it back to the file? + type: FAQPage +tags: +- extract mkv +- groupdocs metadata +- java video processing +- matroska metadata +- metadata extraction +title: Come estrarre i metadati mkv in Java con GroupDocs.Metadata type: docs url: /it/java/audio-video-formats/extract-matroska-metadata-groupdocs-java/ weight: 1 --- -# Leggi i Metadati MKV Java con GroupDocs.Metadata +# Come estrarre i metadati mkv in Java con GroupDocs.Metadata -I file multimediali sono ovunque, e la capacità di **leggere i metadati mkv java** è essenziale per la gestione dei media, la catalogazione e l'analisi. In questo tutorial scoprirai perché l'estrazione dei metadati dai contenitori Matroska è importante, come configurare GroupDocs.Metadata e il codice passo‑passo per estrarre le intestazioni EBML, le informazioni del segmento, i tag e i dati delle tracce. Che tu stia creando un catalogo video, convalidando i parametri di codifica o generando miniature automaticamente, questa guida ti fornisce tutto il necessario. +In questa guida completa imparerai **come estrarre i metadati mkv in Java** utilizzando la libreria GroupDocs.Metadata. Che tu stia costruendo un catalogo multimediale, validando i parametri di codifica o automatizzando la generazione di miniature, leggere i metadati Matroska (MKV) in modo programmatico consente di risparmiare innumerevoli ore di lavoro manuale. Ti guideremo attraverso il perché, i prerequisiti, i passaggi di configurazione esatti e snippet di codice dettagliati che espongono gli header EBML, le informazioni del segmento, i tag e i dati delle tracce. -## Risposte Rapide -- **Cosa significa “read mkv metadata java”?** È il processo di lettura programmatica dei metadati dai file MKV usando Java. -- **Quale libreria dovrei usare?** GroupDocs.Metadata per Java fornisce un'API completa per i file Matroska. -- **È necessaria una licenza?** Una prova gratuita è sufficiente per la valutazione; una licenza rimuove i limiti di utilizzo. -- **Posso leggere altri formati?** Sì, la stessa libreria supporta MP4, AVI, MP3 e molti altri. -- **È necessario l'accesso a Internet durante l'esecuzione?** No, tutta l'estrazione avviene localmente dopo aver aggiunto la libreria al tuo progetto. +## Risposte rapide +- **Cosa significa “read mkv metadata java”?** È l'estrazione programmatica dei metadati del contenitore Matroska (titoli, codec, durate, ecc.) dai file MKV usando Java. +- **Quale libreria dovrei usare?** GroupDocs.Metadata per Java offre un'API completa, ad alte prestazioni per Matroska e oltre 50 altri formati. +- **Ho bisogno di una licenza?** Una prova gratuita è sufficiente per la valutazione; una licenza commerciale rimuove tutti i limiti della versione di prova. +- **Posso leggere altri formati?** Sì – la stessa API legge MP4, AVI, MOV, MP3 e molti altri contenitori. +- **È necessario l'accesso a Internet durante l'esecuzione?** No – tutta l'estrazione avviene localmente dopo che il JAR è nel classpath. -## Cos'è i Metadati Matroska (MKV)? -Matroska è un formato di contenitore aperto e flessibile. I suoi metadati includono l'intestazione EBML (versione del file, tipo di documento), i dettagli del segmento (durata, applicazione di multiplexing), i tag (titoli, descrizioni) e le specifiche delle tracce (codec audio/video, lingua). Accedere a questi dati ti consente di creare cataloghi multimediali, verificare l'integrità dei file o generare miniature automaticamente. +## Cos'è i metadati Matroska (MKV)? -## Perché leggere i metadati mkv java? -- **Automazione** – Estrai i dettagli automaticamente per grandi librerie video. -- **Controllo qualità** – Convalida gli ID dei codec, le durate e le lingue delle tracce prima della pubblicazione. -- **Ricerca e scoperta** – Popola database ricercabili con titoli, lingue e timestamp. -- **Coerenza cross‑format** – Usa la stessa base di codice per estrarre i metadati video java da altri contenitori (MP4, AVI, ecc.). +I metadati Matroska (MKV) sono la raccolta di informazioni strutturali e descrittive memorizzate all'interno di un contenitore Matroska, inclusi l'header EBML (versione del file e tipo di documento), i dettagli del segmento (durata, applicazione di muxing), i tag definiti dall'utente (titoli, descrizioni) e le specifiche delle tracce (ID codec audio/video, lingua, bitrate). Accedere a questi dati consente di creare cataloghi ricercabili, verificare l'integrità dei file o alimentare flussi di lavoro automatizzati come la generazione di miniature. + +## Perché leggere i metadati mkv in Java? + +Leggere i metadati MKV da Java ti permette di **automatizzare** il catalogo di migliaia di file video, **validare** i requisiti di codec e lingua prima della pubblicazione e **popolare** database ricercabili con titoli, durate e lingue delle tracce. Fornisce inoltre una **base di codice unica** per estrarre i metadati video da più contenitori, riducendo il carico di manutenzione e garantendo controlli di qualità coerenti lungo la tua pipeline multimediale. ## Perché usare GroupDocs.Metadata per Java? -- **API completa** – Gestisce EBML, segmenti, tag e tracce senza parsing a basso livello. -- **Ottimizzata per le prestazioni** – Funziona in modo efficiente anche con file multi‑gigabyte. -- **Supporto cross‑format** – Lo stesso schema di codice si applica a molti contenitori audio/video. -- **Integrazione Maven semplice** – Aggiungi una singola dipendenza e inizia a estrarre. + +GroupDocs.Metadata per Java è una libreria maturo che supporta **oltre 50 formati di input e output**, inclusi Matroska, MP4, AVI e MOV. Trasmette le strutture dei contenitori, quindi il consumo di memoria rimane basso anche per file multi‑gigabyte. L'API astrae il parsing a basso livello di EBML, permettendoti di concentrarti sulla logica di business. L'integrazione è semplice come aggiungere una dipendenza Maven, e la libreria è costantemente aggiornata per gestire le ultime specifiche dei codec. ## Prerequisiti -- **GroupDocs.Metadata per Java** versione 24.12 o successiva. -- Java Development Kit (JDK) installato. -- Maven (o gestione manuale dei JAR). -- Un file MKV per sperimentare (posizionalo in `YOUR_DOCUMENT_DIRECTORY`). +- **GroupDocs.Metadata per Java** versione 24.12 o successiva. +- Java Development Kit (JDK) 8 o successivo installato. +- Maven (o gestione manuale dei JAR) per gestire le dipendenze. +- Un file MKV per i test, posizionato in una cartella a cui puoi fare riferimento dal tuo codice (ad esempio `YOUR_DOCUMENT_DIRECTORY`). + +## Configurare GroupDocs.Metadata per Java -## Configurazione di GroupDocs.Metadata per Java -Aggiungi la libreria al tuo progetto usando Maven o scarica direttamente il JAR. +GroupDocs.Metadata per Java è una libreria che consente la lettura dei metadati da oltre 50 formati di file, inclusi Matroska (MKV). Aggiungila al tuo progetto con Maven o scarica manualmente il JAR. -**Maven:** +**Maven:** ```xml @@ -67,13 +101,15 @@ Aggiungi la libreria al tuo progetto usando Maven o scarica direttamente il JAR. ``` **Download diretto:** -Se preferisci non usare Maven, scarica l'ultima versione da [GroupDocs.Metadata for Java releases](https://releases.groupdocs.com/metadata/java/). +Se preferisci non usare Maven, scarica l'ultima versione da [Versioni di GroupDocs.Metadata per Java](https://releases.groupdocs.com/metadata/java/). -### Acquisizione della Licenza -Inizia con una prova gratuita per esplorare le funzionalità. Per l'uso in produzione, acquista una licenza o ottieni una temporanea da [GroupDocs](https://purchase.groupdocs.com/temporary-license/) per rimuovere le limitazioni della prova. +### Acquisizione della licenza -### Inizializzazione e Configurazione di Base -Di seguito il codice minimo necessario per aprire un file MKV con GroupDocs.Metadata. +Inizia con una prova gratuita per esplorare le funzionalità. Per l'uso in produzione, acquista una licenza o ottieni una temporanea da [GroupDocs](https://purchase.groupdocs.com/temporary-license/) per rimuovere le limitazioni della versione di prova. + +### Inizializzazione e configurazione di base + +Di seguito trovi il codice minimo necessario per aprire un file MKV con GroupDocs.Metadata. ```java import com.groupdocs.metadata.Metadata; @@ -89,11 +125,15 @@ public class MetadataExtraction { } ``` -## Come leggere i metadati mkv java con GroupDocs.Metadata -Ora approfondiremo ogni area di metadati che puoi leggere. +## Come leggere i metadati mkv in Java con GroupDocs.Metadata + +`Metadata` è la classe principale che rappresenta un file MKV e fornisce l'accesso ai suoi metadati. +Carica il tuo file MKV con `new Metadata("path/to/file.mkv")` e chiama i getter appropriati – `getRootPackageGeneric()`, `getSegments()`, `getTags()` e `getTracks()` – per recuperare ogni sezione dei metadati. Questa catena di chiamate fornisce una visibilità completa sull'header EBML, le informazioni del segmento, i tag utente e i dettagli delle singole tracce senza scrivere alcuna logica di parsing a basso livello. -### Lettura dell'Intestazione EBML di Matroska -L'intestazione EBML memorizza le informazioni di base del file, come versione e tipo di documento. +### Lettura dell'header EBML di Matroska + +L'header EBML memorizza le informazioni di base del file come versione, tipo di documento e dimensione del file. +`getRootPackageGeneric()` restituisce il pacchetto header EBML del file aperto. ```java import com.groupdocs.metadata.Metadata; @@ -116,12 +156,14 @@ public class ReadMatroskaEBMLHeader { } ``` -**Punti Chiave** -- `getRootPackageGeneric()` fornisce il punto di ingresso del pacchetto Matroska. -- Le proprietà EBML (`docType`, `version`, ecc.) ti aiutano a verificare la compatibilità del file. +**Punti chiave** +- `getRootPackageGeneric()` restituisce il punto di ingresso del pacchetto Matroska. +- Le proprietà EBML (`docType`, `version`, ecc.) ti consentono di verificare la compatibilità del file prima di un'elaborazione più approfondita. + +### Lettura delle informazioni del segmento Matroska -### Lettura delle Informazioni del Segmento Matroska -I segmenti descrivono la timeline complessiva dei media e gli strumenti di creazione. +I segmenti descrivono la timeline complessiva dei media, gli strumenti di creazione e le informazioni opzionali sul titolo. +`getSegments()` recupera una collezione di oggetti segmento contenenti durata e dettagli di creazione. ```java import com.groupdocs.metadata.Metadata; @@ -149,12 +191,14 @@ public class ReadMatroskaSegmentInformation { } ``` -**Punti Chiave** +**Punti chiave** - `getSegments()` restituisce una collezione; ogni segmento può contenere il proprio titolo, durata e dettagli dell'app di creazione. -- Utile per creare playlist o convalidare i parametri di codifica. +- Questi dati sono utili per costruire playlist o validare i parametri di codifica su un batch di file. + +### Lettura dei metadati dei tag Matroska -### Lettura dei Metadati Tag Matroska -I tag memorizzano informazioni leggibili dall'uomo, come titoli, artisti o note personalizzate. +I tag memorizzano informazioni leggibili dall'uomo come titoli, artisti o note personalizzate. +`getTags()` restituisce l'elenco delle voci di tag associate al file. ```java import com.groupdocs.metadata.Metadata; @@ -183,12 +227,14 @@ public class ReadMatroskaTagMetadata { } ``` -**Punti Chiave** +**Punti chiave** - I tag sono organizzati per `targetType` (ad es., `movie`, `track`). - Le voci `simpleTag` contengono coppie chiave/valore come `TITLE=My Video`. -### Lettura dei Metadati delle Tracce Matroska -Le tracce rappresentano flussi audio, video o sottotitoli individuali. +### Lettura dei metadati delle tracce Matroska + +Le tracce rappresentano i singoli flussi audio, video o sottotitoli all'interno del contenitore. +`getTracks()` fornisce l'accesso alle specifiche tecniche di ciascuna traccia. ```java import com.groupdocs.metadata.Metadata; @@ -212,47 +258,51 @@ public class ReadMatroskaTrackMetadata { } ``` -**Punti Chiave** -- `track.getType()` indica se è video, audio o sottotitoli. -- `codecId` ti consente di identificare il codec (ad es., `V_MPEG4/ISO/AVC`). -- Questi dati sono essenziali per le pipeline di transcodifica o i controlli di qualità. +**Punti chiave** +- `track.getType()` indica se lo stream è video, audio o sottotitoli. +- `codecId` identifica il codec (ad es., `V_MPEG4/ISO/AVC`). +- Queste informazioni sono essenziali per pipeline di transcodifica, controlli di qualità e decisioni di streaming dinamico. -## Casi d'Uso Comuni per leggere i metadati mkv java -- **Cataloghi multimediali** – Popola tabelle di database con titoli, durate e codici lingua. -- **QC automatizzato** – Verifica che ogni file contenga i tag richiesti prima della pubblicazione. -- **Streaming dinamico** – Scegli la traccia audio/sottotitolo corretta in base alle preferenze dell'utente. -- **Migrazione dei contenuti** – Estrai i metadati una volta, poi inseriscili in un nuovo sistema di archiviazione. +## Casi d'uso comuni per leggere i metadati mkv in Java -## Problemi Comuni e Risoluzione +- **Cataloghi multimediali** – Popola le tabelle del database con titoli, durate e codici lingua per una ricerca veloce. +- **Controllo qualità automatizzato** – Verifica che ogni file contenga i tag richiesti e rispetti gli standard codec prima del rilascio. +- **Streaming dinamico** – Seleziona la traccia audio o sottotitolo appropriata in base alle preferenze dell'utente durante l'esecuzione. +- **Migrazione di contenuti** – Estrai i metadati una volta, quindi iniettali in un nuovo sistema di archiviazione o in una rete di distribuzione dei contenuti. -| Sintomo | Probabile Causa | Soluzione | -|---------|----------------|----------| -| `NullPointerException` quando si accede a `getEbmlHeader()` | Percorso del file errato o file non trovato | Verifica il percorso in `new Metadata("...")` e assicurati che il file esista. | -| Nessun tag restituito | Il file MKV non contiene elementi tag | Usa un file multimediale che contenga tag di metadati (ad es., aggiunti tramite MKVToolNix). | -| Elaborazione lenta su file grandi | Memoria heap insufficiente | Aumenta l'heap JVM (`-Xmx2g` o superiore) o elabora il file a blocchi se possibile. | +## Problemi comuni e risoluzione -## Domande Frequenti +| Sintomo | Probabile causa | Risoluzione | +|---------|-----------------|-------------| +| `NullPointerException` when accessing `getEbmlHeader()` | Percorso file errato o file non trovato | Verifica il percorso in `new Metadata("...")` e assicurati che il file esista sul disco. | +| No tags returned | Il file MKV non contiene elementi tag | Usa un file multimediale che contenga tag di metadati (ad es., aggiunti tramite MKVToolNix). | +| Slow processing on large files | Memoria heap insufficiente | Aumenta l'heap JVM (`-Xmx2g` o superiore) o elabora il file a blocchi se possibile. | -**D: Posso estrarre metadati da altri formati video con la stessa libreria?** -R: Sì, GroupDocs.Metadata supporta MP4, AVI, MOV e molti altri. Lo schema dell'API è simile—basta usare la classe di pacchetto radice appropriata. +## Domande frequenti -**D: È necessaria una licenza per l'uso in produzione?** -R: Una licenza rimuove i limiti della prova e garantisce la piena funzionalità. La libreria funziona in modalità prova per la valutazione. +**Q: Posso estrarre i metadati da altri formati video con la stessa libreria?** +A: Sì, GroupDocs.Metadata supporta MP4, AVI, MOV e molti altri. Il modello API è identico – basta utilizzare la classe del pacchetto radice appropriata per il formato. -**D: L'estrazione avviene offline?** -R: Assolutamente. Una volta che il JAR è nel tuo classpath, tutte le letture dei metadati vengono eseguite localmente senza chiamate di rete. +**Q: È necessaria una licenza per l'uso in produzione?** +A: Una licenza commerciale rimuove i limiti della versione di prova e sblocca tutte le funzionalità. La libreria funziona in modalità prova per scopi di valutazione. -**D: Come si comporta con file MKV molto grandi (diversi GB)?** -R: La libreria esegue lo streaming della struttura del contenitore, quindi l'uso della memoria rimane contenuto, ma assicurati che la JVM abbia abbastanza heap per eventuali grandi collezioni di tag. +**Q: L'estrazione avviene offline?** +A: Assolutamente. Una volta che il JAR è nel classpath, tutte le letture dei metadati vengono eseguite localmente senza chiamate di rete. -**D: Posso modificare i metadati e riscriverli nel file?** -R: GroupDocs.Metadata si concentra principalmente sulla lettura. Le capacità di scrittura sono limitate; controlla la documentazione API più recente per eventuali supporti di scrittura. +**Q: Come si comporta la libreria con file MKV molto grandi (diversi GB)?** +A: La libreria trasmette la struttura del contenitore, mantenendo l'uso della memoria contenuto. Assicurati che la JVM abbia abbastanza heap per eventuali grandi collezioni di tag e considera di aumentare `-Xmx` se elabori file estremamente grandi. -## Conclusione -Ora hai una guida completa e pronta per la produzione per **leggere i metadati mkv java** usando GroupDocs.Metadata. Accedendo alle intestazioni EBML, alle informazioni dei segmenti, ai tag e ai dettagli delle tracce, puoi alimentare cataloghi multimediali, automatizzare i controlli di qualità o arricchire i servizi di streaming video. Sperimenta con gli snippet, adattali ai tuoi flussi di lavoro e esplora il supporto a formati più ampio della libreria per ulteriori possibilità. +**Q: Posso modificare i metadati e riscriverli nel file?** +A: GroupDocs.Metadata si concentra principalmente sulla lettura. Il supporto alla scrittura è limitato; consulta la documentazione API più recente per eventuali capacità di scrittura. --- -**Ultimo aggiornamento:** 2026-02-21 +**Ultimo aggiornamento:** 2026-09-02 **Testato con:** GroupDocs.Metadata 24.12 per Java -**Autore:** GroupDocs \ No newline at end of file +**Autore:** GroupDocs + +## Tutorial correlati + +- [Come estrarre in batch i sottotitoli mkv con Java e GroupDocs.Metadata](/metadata/java/audio-video-formats/extract-subtitles-mkv-files-java-groupdocs-metadata/) +- [Estrarre i metadati video in Java usando GroupDocs.Metadata](/metadata/java/audio-video-formats/mastering-avi-metadata-handling-groupdocs-java/) +- [Come estrarre i metadati FLV in Java con GroupDocs.Metadata](/metadata/java/audio-video-formats/flv-metadata-extraction-groupdocs-java/) \ No newline at end of file diff --git a/content/japanese/java/audio-video-formats/extract-matroska-metadata-groupdocs-java/_index.md b/content/japanese/java/audio-video-formats/extract-matroska-metadata-groupdocs-java/_index.md index 5d2dedc0c..3665a4d71 100644 --- a/content/japanese/java/audio-video-formats/extract-matroska-metadata-groupdocs-java/_index.md +++ b/content/japanese/java/audio-video-formats/extract-matroska-metadata-groupdocs-java/_index.md @@ -1,54 +1,85 @@ --- -date: '2026-02-21' -description: GroupDocs.Metadata を使用して Java で mkv メタデータを読み取り、動画メタデータを抽出し、EBML ヘッダー、タグ、トラックを処理する方法を学びましょう。 +date: '2026-09-02' +description: JavaでGroupDocs.Metadataを使用してmkvメタデータを抽出する方法を学びます。EBMLヘッダー、tags、tracks、実用的なユースケースをカバーしています。 keywords: -- extract mkv metadata java -- groupdocs.metadata java -- read matroska file -title: GroupDocs.Metadata を使用した Java での MKV メタデータの読み取り – 完全ガイド +- how to extract mkv +- groupdocs metadata java +- extract video metadata java +lastmod: '2026-09-02' +og_description: JavaでGroupDocs.Metadataを使用してmkvメタデータを抽出する方法。ステップバイステップのガイダンス、迅速な回答、ビデオカタログ作成の実例を提供します。 +og_image_alt: Guide showing Java code extracting Matroska (MKV) metadata with GroupDocs.Metadata +og_title: JavaでGroupDocs.Metadataを使用してmkvメタデータを抽出する方法 +schemas: +- author: GroupDocs + dateModified: '2026-09-02' + description: Learn how to extract mkv metadata in Java using GroupDocs.Metadata, + covering EBML headers, tags, tracks, and practical use cases. + headline: How to extract mkv metadata in Java with GroupDocs.Metadata + type: TechArticle +- questions: + - answer: Yes, GroupDocs.Metadata supports MP4, AVI, MOV, and many more. The API + pattern is identical – just use the appropriate root package class for the format. + question: Can I extract metadata from other video formats with the same library? + - answer: A commercial license removes trial limits and unlocks full functionality. + The library works in trial mode for evaluation purposes. + question: Is a license required for production use? + - answer: Absolutely. Once the JAR is on your classpath, all metadata reads are + performed locally without any network calls. + question: Does the extraction happen offline? + - answer: The library streams the container structure, keeping memory usage modest. + Ensure your JVM has enough heap for any large tag collections, and consider + increasing `-Xmx` if you process extremely large files. + question: How does the library perform on very large MKV files (several GB)? + - answer: GroupDocs.Metadata primarily focuses on reading. Write support is limited; + refer to the latest API documentation for any write‑back capabilities. + question: Can I modify the metadata and write it back to the file? + type: FAQPage +tags: +- extract mkv +- groupdocs metadata +- java video processing +- matroska metadata +- metadata extraction +title: JavaでGroupDocs.Metadataを使用してmkvメタデータを抽出する方法 type: docs url: /ja/java/audio-video-formats/extract-matroska-metadata-groupdocs-java/ weight: 1 --- -. +# JavaでGroupDocs.Metadataを使用してMKVメタデータを抽出する方法 -# GroupDocs.Metadata を使用した MKV メタデータの読み取り(Java) - -マルチメディアファイルは至る所にあり、**read mkv metadata java** を実行できることは、メディア管理、カタログ作成、分析に不可欠です。このチュートリアルでは、Matroska コンテナからメタデータを抽出する重要性、GroupDocs.Metadata のセットアップ方法、EBML ヘッダー、セグメント情報、タグ、トラックデータを取得するためのステップバイステップのコードをご紹介します。ビデオカタログの構築、エンコードパラメータの検証、サムネイルの自動生成など、あらゆるニーズに対応できるガイドです。 +この包括的なガイドでは、GroupDocs.Metadataライブラリを使用して**JavaでMKVメタデータを抽出する方法**を学びます。メディアカタログの構築、エンコードパラメータの検証、サムネイル生成の自動化など、Matroska(MKV)メタデータをプログラムで読み取ることで、膨大な手作業の時間を節約できます。なぜそれが必要か、前提条件、正確なセットアップ手順、そしてEBMLヘッダー、セグメント情報、タグ、トラックデータを示す詳細なコードスニペットを順に解説します。 ## クイック回答 -- **“read mkv metadata java” とは何ですか?** Java を使用して MKV ファイルのメタデータをプログラムで読み取るプロセスです。 -- **どのライブラリを使用すべきですか?** GroupDocs.Metadata for Java は Matroska ファイル向けの包括的な API を提供します。 -- **ライセンスは必要ですか?** 無料トライアルで評価できますが、ライセンスを取得すると使用制限が解除されます。 -- **他のフォーマットも読み取れますか?** はい、同じライブラリで MP4、AVI、MP3 など多数のフォーマットをサポートしています。 -- **実行時にインターネット接続は必要ですか?** いいえ、ライブラリをプロジェクトに追加すれば、すべての抽出はローカルで行われます。 +- **「read mkv metadata java」とは何ですか?** これは、Javaを使用してMKVファイルからMatroskaコンテナのメタデータ(タイトル、コーデック、再生時間など)をプログラム的に抽出することです。 +- **どのライブラリを使用すべきですか?** GroupDocs.Metadata for Javaは、Matroskaおよび50以上の他のフォーマットに対応したフル機能で高性能なAPIを提供します。 +- **ライセンスは必要ですか?** 評価用には無料トライアルが利用でき、商用ライセンスを取得するとすべてのトライアル制限が解除されます。 +- **他のフォーマットも読み取れますか?** はい、同じAPIでMP4、AVI、MOV、MP3など多数のコンテナを読み取れます。 +- **実行時にインターネット接続は必要ですか?** いいえ、JARがクラスパスにある限り、すべての抽出はローカルで行われます。 ## Matroska(MKV)メタデータとは? -Matroska はオープンで柔軟なコンテナフォーマットです。そのメタデータには EBML ヘッダー(ファイルバージョン、ドキュメントタイプ)、セグメント詳細(再生時間、マクシングアプリケーション)、タグ(タイトル、説明)、トラック仕様(音声/動画コーデック、言語)が含まれます。これらのデータにアクセスすることで、メディアカタログの構築、ファイルの整合性検証、サムネイルの自動生成が可能になります。 -## なぜ read mkv metadata java を使用するのか? -- **Automation(自動化)** – 大規模なビデオライブラリの詳細を自動的に取得します。 -- **Quality control(品質管理)** – 公開前にコーデック ID、再生時間、トラック言語を検証します。 -- **Search & discovery(検索と発見)** – タイトル、言語、タイムスタンプを含む検索可能なデータベースを構築します。 -- **Cross‑format consistency(クロスフォーマットの一貫性)** – 同じコードベースで他のコンテナ(MP4、AVI など)から video metadata java を抽出できます。 +Matroska(MKV)メタデータは、Matroskaコンテナ内に保存されている構造的かつ記述的な情報の集合で、EBMLヘッダー(ファイルバージョンとドキュメントタイプ)、セグメント詳細(再生時間、マクシングアプリケーション)、ユーザー定義タグ(タイトル、説明)、トラック仕様(音声/動画コーデックID、言語、ビットレート)などが含まれます。このデータにアクセスすることで、検索可能なカタログの構築、ファイル整合性の検証、サムネイル生成などの自動化ワークフローを実現できます。 + +## なぜJavaでMKVメタデータを読み取るのか? + +JavaでMKVメタデータを読み取ることで、数千本の動画ファイルのカタログ化を**自動化**し、公開前にコーデックや言語の要件を**検証**し、タイトル、再生時間、トラック言語などを**検索可能なデータベースに登録**できます。また、複数のコンテナから動画メタデータを抽出する**単一コードベース**を提供し、保守コストを削減し、メディアパイプライン全体で一貫した品質チェックを実現します。 -## なぜ GroupDocs.Metadata for Java を使用するのか? -- **Full‑featured API(フル機能 API)** – 低レベルのパースなしで EBML、セグメント、タグ、トラックを処理します。 -- **Performance‑optimized(パフォーマンス最適化)** – マルチギガバイトのファイルでも効率的に動作します。 -- **Cross‑format support(クロスフォーマットサポート)** – 多くの音声/動画コンテナに同じコードパターンが適用できます。 -- **Simple Maven integration(シンプルな Maven 統合)** – 依存関係を一つ追加するだけで抽出を開始できます。 +## なぜGroupDocs.Metadata for Javaを使用するのか? + +GroupDocs.Metadata for Javaは、Matroska、MP4、AVI、MOVなど**50以上の入力および出力フォーマット**に対応した成熟したライブラリです。コンテナ構造をストリーミングで処理するため、マルチギガバイトのファイルでもメモリ使用量が低く抑えられます。APIは低レベルのEBML解析を抽象化し、ビジネスロジックに集中できるようにします。Maven依存関係を1つ追加するだけで統合でき、最新のコーデック仕様に対応するよう継続的に更新されています。 ## 前提条件 -- **GroupDocs.Metadata for Java** バージョン 24.12 以上。 -- Java Development Kit(JDK)をインストール済み。 -- Maven(または手動で JAR を扱う)。 -- 実験用の MKV ファイル(`YOUR_DOCUMENT_DIRECTORY` に配置)。 +- **GroupDocs.Metadata for Java** バージョン24.12以降。 +- Java Development Kit(JDK)8以降がインストールされていること。 +- 依存関係管理のためのMaven(または手動でのJAR処理)。 +- テスト用のMKVファイルを、コードから参照できるフォルダーに配置する(例:`YOUR_DOCUMENT_DIRECTORY`)。 ## GroupDocs.Metadata for Java の設定 -Maven を使用するか、JAR を直接ダウンロードしてプロジェクトにライブラリを追加します。 -**Maven:** +GroupDocs.Metadata for Javaは、Matroska(MKV)を含む50以上のファイル形式からメタデータを読み取ることができるライブラリです。Mavenで追加するか、JARを手動でダウンロードしてプロジェクトに組み込みます。 + +**Maven:** ```xml @@ -67,14 +98,16 @@ Maven を使用するか、JAR を直接ダウンロードしてプロジェク ``` -**Direct Download:** -Maven を使用したくない場合は、最新バージョンを [GroupDocs.Metadata for Java releases](https://releases.groupdocs.com/metadata/java/) からダウンロードしてください。 +**直接ダウンロード:** +Mavenを使用したくない場合は、最新バージョンを[GroupDocs.Metadata for Java releases](https://releases.groupdocs.com/metadata/java/)からダウンロードしてください。 ### ライセンス取得 -機能を試すにはまず無料トライアルから始めます。実運用では、ライセンスを購入するか、[GroupDocs](https://purchase.groupdocs.com/temporary-license/) から一時ライセンスを取得してトライアル制限を解除してください。 + +まずは無料トライアルで機能を試してください。本番環境で使用する場合は、ライセンスを購入するか、[GroupDocs](https://purchase.groupdocs.com/temporary-license/)から一時ライセンスを取得してトライアル制限を解除します。 ### 基本的な初期化と設定 -以下は GroupDocs.Metadata を使用して MKV ファイルを開くために必要な最小限のコードです。 + +以下は、GroupDocs.MetadataでMKVファイルを開くために必要な最小限のコードです。 ```java import com.groupdocs.metadata.Metadata; @@ -90,11 +123,15 @@ public class MetadataExtraction { } ``` -## GroupDocs.Metadata を使用した read mkv metadata java の読み取り方法 -それでは、読み取れる各メタデータ領域について詳しく見ていきます。 +## GroupDocs.Metadataを使用してJavaでMKVメタデータを読み取る方法 + +`Metadata` はMKVファイルを表す主要クラスで、メタデータへのアクセスを提供します。 +`new Metadata("path/to/file.mkv")` でMKVファイルをロードし、適切なゲッター(`getRootPackageGeneric()`、`getSegments()`、`getTags()`、`getTracks()`)を呼び出して各メタデータセクションを取得します。この単一の呼び出しチェーンにより、低レベルのパースロジックを書かずにEBMLヘッダー、セグメント情報、ユーザータグ、個々のトラック詳細を完全に把握できます。 + +### Matroska EBMLヘッダーの読み取り -### Matroska EBML ヘッダーの読み取り -EBML ヘッダーはバージョンやドキュメントタイプなど、ファイルの基本情報を保持しています。 +EBMLヘッダーは、バージョン、ドキュメントタイプ、ファイルサイズなどのコア情報を格納しています。 +`getRootPackageGeneric()` は、開いたファイルのEBMLヘッダーパッケージを返します。 ```java import com.groupdocs.metadata.Metadata; @@ -117,12 +154,14 @@ public class ReadMatroskaEBMLHeader { } ``` -**重要ポイント** -- `getRootPackageGeneric()` は Matroska パッケージのエントリーポイントを取得します。 -- EBML プロパティ(`docType`、`version` など)はファイルの互換性を確認するのに役立ちます。 +**重要ポイント** +- `getRootPackageGeneric()` はMatroskaパッケージのエントリーポイントを返します。 +- EBMLプロパティ(`docType`、`version` など)により、詳細な処理を行う前にファイルの互換性を確認できます。 -### Matroska セグメント情報の読み取り -セグメントは全体のメディアタイムラインと作成ツールを記述します。 +### Matroskaセグメント情報の読み取り + +セグメントは、全体のメディアタイムライン、作成ツール、オプションのタイトル情報を記述します。 +`getSegments()` は、再生時間や作成情報を含むセグメントオブジェクトのコレクションを取得します。 ```java import com.groupdocs.metadata.Metadata; @@ -150,12 +189,14 @@ public class ReadMatroskaSegmentInformation { } ``` -**重要ポイント** -- `getSegments()` はコレクションを返し、各セグメントは独自のタイトル、再生時間、作成アプリの詳細を保持できます。 -- プレイリストの構築やエンコードパラメータの検証に有用です。 +**重要ポイント** +- `getSegments()` はコレクションを返し、各セグメントは独自のタイトル、再生時間、作成アプリの詳細を保持できます。 +- このデータは、プレイリストの構築やファイルバッチ全体のエンコードパラメータの検証に役立ちます。 + +### Matroskaタグメタデータの読み取り -### Matroska タグメタデータの読み取り -タグはタイトル、アーティスト、カスタムメモなどの人間が読める情報を格納します。 +タグは、タイトル、アーティスト、カスタムメモなどの人間が読める情報を格納します。 +`getTags()` は、ファイルに関連付けられたタグエントリのリストを返します。 ```java import com.groupdocs.metadata.Metadata; @@ -184,12 +225,14 @@ public class ReadMatroskaTagMetadata { } ``` -**重要ポイント** -- タグは `targetType`(例:`movie`、`track`)で整理されます。 -- `simpleTag` エントリは `TITLE=My Video` のようなキー/バリューのペアを保持します。 +**重要ポイント** +- タグは `targetType`(例:`movie`、`track`)で整理されます。 +- `simpleTag` エントリは `TITLE=My Video` のようなキー/バリューのペアを保持します。 -### Matroska トラックメタデータの読み取り -トラックは個々の音声、動画、字幕ストリームを表します。 +### Matroskaトラックメタデータの読み取り + +トラックは、コンテナ内の個別の音声、動画、字幕ストリームを表します。 +`getTracks()` は各トラックの技術的仕様へのアクセスを提供します。 ```java import com.groupdocs.metadata.Metadata; @@ -213,46 +256,51 @@ public class ReadMatroskaTrackMetadata { } ``` -**重要ポイント** -- `track.getType()` はビデオ、音声、字幕のいずれかを示します。 -- `codecId` によりコーデックを特定できます(例:`V_MPEG4/ISO/AVC`)。 -- このデータはトランスコーディングパイプラインや品質チェックに不可欠です。 +**重要ポイント** +- `track.getType()` はストリームが動画、音声、または字幕のどれかを示します。 +- `codecId` はコーデックを識別します(例:`V_MPEG4/ISO/AVC`)。 +- この情報は、トランスコーディングパイプライン、品質チェック、動的ストリーミングの判断に不可欠です。 + +## JavaでMKVメタデータを読み取る一般的なユースケース -## read mkv metadata java の一般的なユースケース -- **Media catalogues(メディアカタログ)** – タイトル、再生時間、言語コードをデータベーステーブルに登録します。 -- **Automated QC(自動品質管理)** – 公開前にすべてのファイルが必要なタグを含んでいるか検証します。 -- **Dynamic streaming(動的ストリーミング)** – ユーザーの好みに応じて適切な音声/字幕トラックを選択します。 -- **Content migration(コンテンツ移行)** – メタデータを一度抽出し、新しいストレージシステムに注入します。 +- **メディアカタログ** – タイトル、再生時間、言語コードをデータベーステーブルに格納し、迅速な検索を実現します。 +- **自動品質管理** – すべてのファイルが必須タグを含み、リリース前にコーデック標準に準拠しているかを検証します。 +- **動的ストリーミング** – 実行時にユーザーの好みに応じて適切な音声または字幕トラックを選択します。 +- **コンテンツ移行** – メタデータを一度抽出し、新しいストレージシステムやコンテンツ配信ネットワークに注入します。 + +## 一般的な問題とトラブルシューティング -## よくある問題とトラブルシューティング | 症状 | 考えられる原因 | 対策 | -|---------|--------------|-----| -| `getEbmlHeader()` にアクセスしたときの `NullPointerException` | ファイルパスが間違っているか、ファイルが見つかりません | `new Metadata("...")` のパスを確認し、ファイルが存在することを確認してください。 | -| タグが返されません | MKV ファイルにタグ要素がありません | メタデータタグを含むメディアファイルを使用してください(例:MKVToolNix で追加されたもの)。 | -| 大きなファイルで処理が遅い | ヒープメモリが不足しています | JVM ヒープを増やす(`-Xmx2g` 以上)か、可能であればファイルをチャンクに分割して処理してください。 | +|------|----------------|------| +| `getEbmlHeader()` にアクセスしたときの `NullPointerException` | ファイルパスが間違っているか、ファイルが見つからない | `new Metadata("...")` のパスを確認し、ディスク上にファイルが存在することを確認してください。 | +| タグが返されない | MKVファイルにタグ要素がない | メタデータタグを含むメディアファイルを使用してください(例:MKVToolNixで追加されたもの)。 | +| 大きなファイルで処理が遅い | ヒープメモリが不足している | JVMヒープを増やす(`-Xmx2g` 以上)か、可能であればファイルをチャンクに分割して処理してください。 | ## よくある質問 **Q: 同じライブラリで他の動画フォーマットからメタデータを抽出できますか?** -A: はい、GroupDocs.Metadata は MP4、AVI、MOV など多数をサポートしています。API のパターンは同様で、適切なルートパッケージクラスを使用するだけです。 +A: はい、GroupDocs.MetadataはMP4、AVI、MOVなど多数のフォーマットをサポートしています。APIの使い方は同一で、フォーマットに応じたルートパッケージクラスを使用するだけです。 **Q: 本番環境での使用にライセンスは必要ですか?** -A: ライセンスを取得するとトライアル制限が解除され、フル機能が利用可能です。ライブラリは評価用にトライアルモードで動作します。 +A: 商用ライセンスを取得すればトライアル制限が解除され、すべての機能が利用可能になります。ライブラリは評価目的でトライアルモードでも動作します。 **Q: 抽出はオフラインで行われますか?** -A: 完全にオフラインです。JAR がクラスパスにあるだけで、メタデータの読み取りはすべてローカルで実行され、ネットワーク呼び出しは行われません。 +A: 完全にオフラインです。JARがクラスパスにある限り、すべてのメタデータ読み取りはローカルで行われ、ネットワーク呼び出しは発生しません。 -**Q: 数ギガバイト規模の非常に大きな MKV ファイルではどのように動作しますか?** -A: ライブラリはコンテナ構造をストリーミングするため、メモリ使用量は抑えられますが、大きなタグコレクションに備えて JVM のヒープを十分に確保してください。 +**Q: ライブラリは非常に大きなMKVファイル(数GB)でどのように動作しますか?** +A: ライブラリはコンテナ構造をストリーミングで処理するため、メモリ使用量は抑えられます。大きなタグコレクションを扱う場合はJVMのヒープが十分であることを確認し、極めて大きなファイルを処理する際は `-Xmx` の増加を検討してください。 **Q: メタデータを変更してファイルに書き戻すことはできますか?** -A: GroupDocs.Metadata は主に読み取りに焦点を当てており、書き込み機能は限定的です。書き込みサポートについては最新の API ドキュメントをご確認ください。 - -## 結論 -これで、GroupDocs.Metadata を使用した **read mkv metadata java** の完全な本番対応ガイドが手に入りました。EBML ヘッダー、セグメント情報、タグ、トラック詳細にアクセスすることで、メディアカタログの構築、品質チェックの自動化、動画ストリーミングサービスの強化が可能です。コードスニペットを試し、ワークフローに合わせてカスタマイズし、ライブラリが提供する幅広いフォーマットサポートを活用してさらなる可能性を探ってください。 +A: GroupDocs.Metadataは主に読み取りに焦点を当てています。書き込みサポートは限定的で、書き戻し機能については最新のAPIドキュメントをご参照ください。 --- -**最終更新日:** 2026-02-21 -**テスト済み:** GroupDocs.Metadata 24.12 for Java -**作者:** GroupDocs \ No newline at end of file +**Last Updated:** 2026-09-02 +**Tested With:** GroupDocs.Metadata 24.12 for Java +**Author:** GroupDocs + +## 関連チュートリアル + +- [JavaとGroupDocs.Metadataを使用したMKV字幕のバッチ抽出方法](/metadata/java/audio-video-formats/extract-subtitles-mkv-files-java-groupdocs-metadata/) +- [GroupDocs.Metadataを使用したJavaでの動画メタデータ抽出](/metadata/java/audio-video-formats/mastering-avi-metadata-handling-groupdocs-java/) +- [GroupDocs.Metadataを使用したJavaでのFLVメタデータ抽出方法](/metadata/java/audio-video-formats/flv-metadata-extraction-groupdocs-java/) \ No newline at end of file diff --git a/content/korean/java/audio-video-formats/extract-matroska-metadata-groupdocs-java/_index.md b/content/korean/java/audio-video-formats/extract-matroska-metadata-groupdocs-java/_index.md index 2a7ae11b5..9663c1ca5 100644 --- a/content/korean/java/audio-video-formats/extract-matroska-metadata-groupdocs-java/_index.md +++ b/content/korean/java/audio-video-formats/extract-matroska-metadata-groupdocs-java/_index.md @@ -1,51 +1,85 @@ --- -date: '2026-02-21' -description: GroupDocs.Metadata를 사용하여 Java에서 mkv 메타데이터를 읽는 방법, Java에서 비디오 메타데이터를 추출하는 - 방법, 그리고 EBML 헤더, 태그 및 트랙을 처리하는 방법을 배웁니다. +date: '2026-09-02' +description: GroupDocs.Metadata를 사용하여 Java에서 mkv 메타데이터를 추출하는 방법을 배우고, EBML headers, + tags, tracks 및 실용적인 사용 사례를 다룹니다. keywords: -- extract mkv metadata java -- groupdocs.metadata java -- read matroska file -title: GroupDocs.Metadata와 Java로 MKV 메타데이터 읽기 – 완전 가이드 +- how to extract mkv +- groupdocs metadata java +- extract video metadata java +lastmod: '2026-09-02' +og_description: GroupDocs.Metadata를 사용하여 Java에서 mkv 메타데이터를 추출하는 방법. step‑by‑step guidance, + quick answers, and real‑world examples for video cataloguing을 제공합니다. +og_image_alt: Guide showing Java code extracting Matroska (MKV) metadata with GroupDocs.Metadata +og_title: Java에서 GroupDocs.Metadata를 사용하여 mkv 메타데이터 추출하는 방법 +schemas: +- author: GroupDocs + dateModified: '2026-09-02' + description: Learn how to extract mkv metadata in Java using GroupDocs.Metadata, + covering EBML headers, tags, tracks, and practical use cases. + headline: How to extract mkv metadata in Java with GroupDocs.Metadata + type: TechArticle +- questions: + - answer: Yes, GroupDocs.Metadata supports MP4, AVI, MOV, and many more. The API + pattern is identical – just use the appropriate root package class for the format. + question: Can I extract metadata from other video formats with the same library? + - answer: A commercial license removes trial limits and unlocks full functionality. + The library works in trial mode for evaluation purposes. + question: Is a license required for production use? + - answer: Absolutely. Once the JAR is on your classpath, all metadata reads are + performed locally without any network calls. + question: Does the extraction happen offline? + - answer: The library streams the container structure, keeping memory usage modest. + Ensure your JVM has enough heap for any large tag collections, and consider + increasing `-Xmx` if you process extremely large files. + question: How does the library perform on very large MKV files (several GB)? + - answer: GroupDocs.Metadata primarily focuses on reading. Write support is limited; + refer to the latest API documentation for any write‑back capabilities. + question: Can I modify the metadata and write it back to the file? + type: FAQPage +tags: +- extract mkv +- groupdocs metadata +- java video processing +- matroska metadata +- metadata extraction +title: Java에서 GroupDocs.Metadata를 사용하여 mkv 메타데이터 추출하는 방법 type: docs url: /ko/java/audio-video-formats/extract-matroska-metadata-groupdocs-java/ weight: 1 --- -# GroupDocs.Metadata를 사용한 MKV 메타데이터 Java 읽기 +# Java와 GroupDocs.Metadata를 사용하여 mkv 메타데이터 추출하는 방법 -멀티미디어 파일은 어디에나 존재하며, **read mkv metadata java**를 수행할 수 있는 능력은 미디어 관리, 카탈로그화 및 분석에 필수적입니다. 이 튜토리얼에서는 Matroska 컨테이너에서 메타데이터를 추출하는 이유, GroupDocs.Metadata 설정 방법, EBML 헤더, 세그먼트 정보, 태그 및 트랙 데이터를 가져오는 단계별 코드를 알아봅니다. 비디오 카탈로그를 구축하거나 인코딩 파라미터를 검증하거나 자동으로 썸네일을 생성하는 경우에도 이 가이드는 필요한 모든 것을 제공합니다. +이 포괄적인 가이드에서는 GroupDocs.Metadata 라이브러리를 사용하여 **Java에서 mkv 메타데이터를 추출하는 방법**을 배웁니다. 미디어 카탈로그를 구축하거나 인코딩 매개변수를 검증하거나 썸네일 생성을 자동화하는 경우, 프로그래밍 방식으로 Matroska(MKV) 메타데이터를 읽으면 수많은 수작업 시간을 절약할 수 있습니다. 왜 필요한지, 전제 조건, 정확한 설정 단계, EBML 헤더, 세그먼트 정보, 태그 및 트랙 데이터를 노출하는 상세 코드 스니펫을 단계별로 살펴보겠습니다. ## 빠른 답변 -- **What does “read mkv metadata java” mean?** MKV 파일에서 메타데이터를 Java를 사용해 프로그래밍 방식으로 읽는 과정입니다. -- **Which library should I use?** GroupDocs.Metadata for Java는 Matroska 파일을 위한 포괄적인 API를 제공합니다. -- **Do I need a license?** 무료 체험으로 평가할 수 있으며, 라이선스를 구매하면 사용 제한이 해제됩니다. -- **Can I read other formats?** 예, 동일한 라이브러리가 MP4, AVI, MP3 등 다양한 포맷을 지원합니다. -- **Is internet access required at runtime?** 아니요, 라이브러리를 프로젝트에 추가하면 모든 추출이 로컬에서 수행됩니다. +- **“read mkv metadata java”는 무엇을 의미합니까?** 이것은 Java를 사용하여 MKV 파일에서 Matroska 컨테이너 메타데이터(제목, 코덱, 지속 시간 등)를 프로그래밍 방식으로 추출하는 것입니다. +- **어떤 라이브러리를 사용해야 합니까?** GroupDocs.Metadata for Java는 Matroska와 50개 이상의 다른 형식을 위한 전체 기능을 갖춘 고성능 API를 제공합니다. +- **라이선스가 필요합니까?** 무료 체험은 평가에 사용할 수 있으며, 상업용 라이선스를 구매하면 모든 체험 제한이 해제됩니다. +- **다른 형식을 읽을 수 있습니까?** 예 – 동일한 API로 MP4, AVI, MOV, MP3 및 기타 많은 컨테이너를 읽을 수 있습니다. +- **런타임에 인터넷 접속이 필요합니까?** 아니요 – JAR가 클래스패스에 있으면 모든 추출이 로컬에서 수행됩니다. ## Matroska (MKV) 메타데이터란? -Matroska는 오픈형이며 유연한 컨테이너 포맷입니다. 메타데이터에는 EBML 헤더(파일 버전, 문서 유형), 세그먼트 세부 정보(재생 시간, 멕싱 애플리케이션), 태그(제목, 설명) 및 트랙 사양(오디오/비디오 코덱, 언어)이 포함됩니다. 이 데이터를 활용하면 미디어 카탈로그를 구축하거나 파일 무결성을 검증하거나 자동으로 썸네일을 생성할 수 있습니다. -## 왜 read mkv metadata java를 읽어야 할까요? -- **Automation** – 대규모 비디오 라이브러리를 위해 세부 정보를 자동으로 가져옵니다. -- **Quality control** – 게시 전에 코덱 ID, 재생 시간 및 트랙 언어를 검증합니다. -- **Search & discovery** – 제목, 언어 및 타임스탬프를 포함한 검색 가능한 데이터베이스를 채웁니다. -- **Cross‑format consistency** – 동일한 코드 베이스를 사용해 다른 컨테이너(MP4, AVI 등)에서 비디오 메타데이터 java를 추출합니다. +Matroska (MKV) 메타데이터는 Matroska 컨테이너 내부에 저장된 구조적 및 설명적 정보의 모음으로, EBML 헤더(파일 버전 및 문서 유형), 세그먼트 세부 정보(지속 시간, 믹싱 애플리케이션), 사용자 정의 태그(제목, 설명) 및 트랙 사양(오디오/비디오 코덱 ID, 언어, 비트레이트) 등을 포함합니다. 이 데이터를 접근하면 검색 가능한 카탈로그를 구축하거나 파일 무결성을 확인하거나 썸네일 생성과 같은 자동화 워크플로를 구동할 수 있습니다. + +## 왜 Java에서 mkv 메타데이터를 읽어야 할까요? + +Java에서 MKV 메타데이터를 읽으면 **카탈로그 자동화**를 통해 수천 개의 비디오 파일을 관리하고, **코덱 및 언어 요구 사항을 검증**하여 게시 전에 확인하며, **제목, 지속 시간 및 트랙 언어**와 같은 정보를 검색 가능한 데이터베이스에 **채워 넣을** 수 있습니다. 또한 여러 컨테이너에서 비디오 메타데이터를 추출하기 위한 **단일 코드 베이스**를 제공하여 유지 관리 부담을 줄이고 미디어 파이프라인 전반에 걸쳐 일관된 품질 검사를 보장합니다. ## 왜 Java용 GroupDocs.Metadata를 사용해야 할까요? -- **Full‑featured API** – 저수준 파싱 없이 EBML, 세그먼트, 태그 및 트랙을 처리합니다. -- **Performance‑optimized** – 다중 기가바이트 파일에서도 효율적으로 작동합니다. -- **Cross‑format support** – 동일한 코드 패턴이 다양한 오디오/비디오 컨테이너에 적용됩니다. -- **Simple Maven integration** – 단일 의존성을 추가하면 추출을 시작할 수 있습니다. -## 사전 요구 사항 -- **GroupDocs.Metadata for Java** 버전 24.12 이상. -- Java Development Kit (JDK)가 설치되어 있어야 합니다. -- Maven(또는 수동 JAR 관리). -- 실험용 MKV 파일(`YOUR_DOCUMENT_DIRECTORY`에 배치). +Java용 GroupDocs.Metadata는 **50개 이상의 입력 및 출력 형식**을 지원하는 성숙한 라이브러리로, Matroska, MP4, AVI, MOV 등을 포함합니다. 컨테이너 구조를 스트리밍하므로 멀티 기가바이트 파일에서도 메모리 사용량이 낮게 유지됩니다. API는 저수준 EBML 파싱을 추상화하여 비즈니스 로직에 집중할 수 있게 해줍니다. Maven 의존성 하나만 추가하면 통합이 간단하며, 최신 코덱 사양을 처리하도록 지속적으로 업데이트됩니다. + +## 전제 조건 +- **GroupDocs.Metadata for Java** 버전 24.12 이상. +- Java Development Kit (JDK) 8 이상 설치. +- Maven(또는 수동 JAR 관리)를 사용하여 의존성을 관리. +- 테스트용 MKV 파일을 코드에서 참조할 수 있는 폴더에 배치합니다(예: `YOUR_DOCUMENT_DIRECTORY`). ## Java용 GroupDocs.Metadata 설정 -Maven을 사용하거나 JAR 파일을 직접 다운로드하여 프로젝트에 라이브러리를 추가합니다. + +Java용 GroupDocs.Metadata는 Matroska(MKV)를 포함한 50개 이상의 파일 형식에서 메타데이터를 읽을 수 있게 해주는 라이브러리입니다. Maven을 사용하거나 JAR를 직접 다운로드하여 프로젝트에 추가하십시오. **Maven:** ```xml @@ -66,14 +100,16 @@ Maven을 사용하거나 JAR 파일을 직접 다운로드하여 프로젝트에 ``` -**Direct Download:** -Maven을 사용하고 싶지 않다면, 최신 버전을 [GroupDocs.Metadata for Java releases](https://releases.groupdocs.com/metadata/java/)에서 다운로드하세요. +**직접 다운로드:** +Maven을 사용하지 않으려면 [GroupDocs.Metadata for Java releases](https://releases.groupdocs.com/metadata/java/)에서 최신 버전을 다운로드하십시오. ### 라이선스 획득 -무료 체험으로 기능을 살펴보세요. 프로덕션 환경에서는 라이선스를 구매하거나 [GroupDocs](https://purchase.groupdocs.com/temporary-license/)에서 임시 라이선스를 받아 체험 제한을 해제합니다. + +무료 체험으로 기능을 살펴보세요. 프로덕션 환경에서는 라이선스를 구매하거나 [GroupDocs](https://purchase.groupdocs.com/temporary-license/)에서 임시 라이선스를 받아 체험 제한을 해제하십시오. ### 기본 초기화 및 설정 -아래는 GroupDocs.Metadata를 사용해 MKV 파일을 여는 최소 코드 예시입니다. + +아래는 GroupDocs.Metadata를 사용하여 MKV 파일을 여는 최소 코드 예제입니다. ```java import com.groupdocs.metadata.Metadata; @@ -89,11 +125,13 @@ public class MetadataExtraction { } ``` -## GroupDocs.Metadata로 read mkv metadata java 수행하기 -이제 읽을 수 있는 각 메타데이터 영역을 자세히 살펴보겠습니다. +## GroupDocs.Metadata를 사용하여 Java에서 mkv 메타데이터를 읽는 방법 + +`Metadata`는 MKV 파일을 나타내는 주요 클래스이며 메타데이터에 접근할 수 있게 합니다. `new Metadata("path/to/file.mkv")`으로 MKV 파일을 로드하고 적절한 getter(`getRootPackageGeneric()`, `getSegments()`, `getTags()`, `getTracks()`)를 호출하여 각 메타데이터 섹션을 가져옵니다. 이 단일 호출 체인으로 EBML 헤더, 세그먼트 정보, 사용자 태그 및 개별 트랙 세부 정보를 모두 확인할 수 있으며 저수준 파싱 로직을 작성할 필요가 없습니다. ### Matroska EBML 헤더 읽기 -EBML 헤더에는 버전 및 문서 유형과 같은 핵심 파일 정보가 저장됩니다. + +EBML 헤더는 버전, 문서 유형 및 파일 크기와 같은 핵심 파일 정보를 저장합니다. `getRootPackageGeneric()`은 열려 있는 파일의 EBML 헤더 패키지를 반환합니다. ```java import com.groupdocs.metadata.Metadata; @@ -116,12 +154,13 @@ public class ReadMatroskaEBMLHeader { } ``` -**Key Points** -- `getRootPackageGeneric()`는 Matroska 패키지 진입점을 제공합니다. -- EBML 속성(`docType`, `version` 등)은 파일 호환성을 확인하는 데 도움이 됩니다. +**핵심 포인트** +- `getRootPackageGeneric()`는 Matroska 패키지 진입점을 반환합니다. +- EBML 속성(`docType`, `version` 등)은 심층 처리 전에 파일 호환성을 확인할 수 있게 해줍니다. ### Matroska 세그먼트 정보 읽기 -세그먼트는 전체 미디어 타임라인 및 생성 도구를 설명합니다. + +세그먼트는 전체 미디어 타임라인, 생성 도구 및 선택적 제목 정보를 설명합니다. `getSegments()`는 지속 시간 및 생성 세부 정보를 포함하는 세그먼트 객체 컬렉션을 반환합니다. ```java import com.groupdocs.metadata.Metadata; @@ -149,12 +188,13 @@ public class ReadMatroskaSegmentInformation { } ``` -**Key Points** -- `getSegments()`는 컬렉션을 반환하며, 각 세그먼트는 자체 제목, 재생 시간 및 생성 애플리케이션 세부 정보를 가질 수 있습니다. -- 재생 목록을 만들거나 인코딩 파라미터를 검증하는 데 유용합니다. +**핵심 포인트** +- `getSegments()`는 컬렉션을 반환하며, 각 세그먼트는 자체 제목, 지속 시간 및 생성 애플리케이션 세부 정보를 가질 수 있습니다. +- 이 데이터는 재생 목록을 만들거나 파일 배치 전체의 인코딩 매개변수를 검증하는 데 유용합니다. ### Matroska 태그 메타데이터 읽기 -태그는 제목, 아티스트 또는 사용자 정의 메모와 같은 사람이 읽을 수 있는 정보를 저장합니다. + +태그는 제목, 아티스트 또는 사용자 정의 메모와 같은 사람이 읽을 수 있는 정보를 저장합니다. `getTags()`는 파일에 연결된 태그 항목 목록을 반환합니다. ```java import com.groupdocs.metadata.Metadata; @@ -183,12 +223,13 @@ public class ReadMatroskaTagMetadata { } ``` -**Key Points** +**핵심 포인트** - 태그는 `targetType`(예: `movie`, `track`)에 따라 조직됩니다. - `simpleTag` 항목은 `TITLE=My Video`와 같은 키/값 쌍을 보유합니다. ### Matroska 트랙 메타데이터 읽기 -트랙은 개별 오디오, 비디오 또는 자막 스트림을 나타냅니다. + +트랙은 컨테이너 내부의 개별 오디오, 비디오 또는 자막 스트림을 나타냅니다. `getTracks()`는 각 트랙의 기술 사양에 접근할 수 있게 합니다. ```java import com.groupdocs.metadata.Metadata; @@ -212,46 +253,51 @@ public class ReadMatroskaTrackMetadata { } ``` -**Key Points** -- `track.getType()`은 비디오, 오디오, 자막 중 어떤 유형인지 알려줍니다. -- `codecId`는 코덱을 식별하게 해줍니다(예: `V_MPEG4/ISO/AVC`). -- 이 데이터는 트랜스코딩 파이프라인이나 품질 검증에 필수적입니다. +**핵심 포인트** +- `track.getType()`은 스트림이 비디오, 오디오 또는 자막인지 알려줍니다. +- `codecId`는 코덱을 식별합니다(예: `V_MPEG4/ISO/AVC`). +- 이 정보는 트랜스코딩 파이프라인, 품질 검사 및 동적 스트리밍 결정에 필수적입니다. + +## Java에서 mkv 메타데이터를 읽는 일반적인 사용 사례 -## read mkv metadata java의 일반적인 사용 사례 -- **Media catalogues** – 제목, 재생 시간 및 언어 코드를 데이터베이스 테이블에 채웁니다. -- **Automated QC** – 게시 전에 모든 파일에 필수 태그가 포함되어 있는지 확인합니다. -- **Dynamic streaming** – 사용자 선호도에 따라 올바른 오디오/자막 트랙을 선택합니다. -- **Content migration** – 메타데이터를 한 번 추출한 뒤 새로운 스토리지 시스템에 삽입합니다. +- **미디어 카탈로그** – 빠른 검색을 위해 제목, 지속 시간 및 언어 코드를 데이터베이스 테이블에 채워 넣습니다. +- **자동 품질 관리** – 모든 파일에 필수 태그가 포함되어 있고 코덱 표준을 준수하는지 릴리스 전에 검증합니다. +- **동적 스트리밍** – 런타임에 사용자 선호도에 따라 적절한 오디오 또는 자막 트랙을 선택합니다. +- **콘텐츠 마이그레이션** – 메타데이터를 한 번 추출한 뒤 새로운 스토리지 시스템이나 CDN에 삽입합니다. ## 일반적인 문제 및 해결 방법 -| Symptom | Likely Cause | Fix | + +| 증상 | 가능한 원인 | 해결 방법 | |---------|--------------|-----| -| `getEbmlHeader()`에 접근할 때 `NullPointerException` | 파일 경로가 잘못되었거나 파일을 찾을 수 없습니다. | `new Metadata("...")`에서 경로를 확인하고 파일이 존재하는지 확인하십시오. | -| 태그가 반환되지 않음 | MKV 파일에 태그 요소가 없습니다. | 메타데이터 태그가 포함된 미디어 파일을 사용하십시오(예: MKVToolNix로 추가된 파일). | -| 대용량 파일 처리 속도가 느림 | 힙 메모리가 부족합니다. | JVM 힙을 늘리세요(`-Xmx2g` 이상) 또는 가능하면 파일을 청크로 처리하십시오. | +| `getEbmlHeader()`에 접근할 때 `NullPointerException` | 파일 경로가 잘못되었거나 파일을 찾을 수 없음 | `new Metadata("...")`에서 경로를 확인하고 디스크에 파일이 존재하는지 확인하십시오. | +| 태그가 반환되지 않음 | MKV 파일에 태그 요소가 없음 | 메타데이터 태그가 포함된 미디어 파일을 사용하십시오(예: MKVToolNix로 추가된 파일). | +| 대용량 파일에서 처리 속도 저하 | 힙 메모리 부족 | JVM 힙을 늘리세요(`-Xmx2g` 이상) 또는 가능하면 파일을 청크로 처리하십시오. | ## 자주 묻는 질문 -**Q: Can I extract metadata from other video formats with the same library?** -A: 예, GroupDocs.Metadata는 MP4, AVI, MOV 등 다양한 포맷을 지원합니다. API 패턴은 유사하므로 적절한 루트 패키지 클래스를 사용하면 됩니다. - -**Q: Is a license required for production use?** -A: 라이선스를 구매하면 체험 제한이 해제되고 전체 기능을 사용할 수 있습니다. 라이브러리는 평가용으로 체험 모드에서도 동작합니다. +**Q: 같은 라이브러리로 다른 비디오 형식에서도 메타데이터를 추출할 수 있나요?** +A: 예, GroupDocs.Metadata는 MP4, AVI, MOV 등 많은 형식을 지원합니다. API 패턴은 동일하므로 해당 형식에 맞는 루트 패키지 클래스를 사용하면 됩니다. -**Q: Does the extraction happen offline?** -A: 전적으로 오프라인에서 수행됩니다. JAR가 클래스패스에 있으면 모든 메타데이터 읽기가 네트워크 호출 없이 로컬에서 이루어집니다. +**Q: 프로덕션 사용에 라이선스가 필요합니까?** +A: 상업용 라이선스를 구매하면 체험 제한이 해제되고 전체 기능을 사용할 수 있습니다. 라이브러리는 평가 목적으로 체험 모드에서도 작동합니다. -**Q: How does this perform on very large MKV files (several GB)?** -A: 라이브러리는 컨테이너 구조를 스트리밍하므로 메모리 사용량이 적게 유지되지만, 대용량 태그 컬렉션을 위해 충분한 JVM 힙을 확보하십시오. +**Q: 추출이 오프라인에서 이루어지나요?** +A: 네, JAR가 클래스패스에 있으면 모든 메타데이터 읽기가 로컬에서 수행되며 네트워크 호출이 없습니다. -**Q: Can I modify the metadata and write it back to the file?** -A: GroupDocs.Metadata는 주로 읽기에 초점을 맞추고 있습니다. 쓰기 기능은 제한적이며, 최신 API 문서를 확인하여 쓰기 지원 여부를 확인하십시오. +**Q: 매우 큰 MKV 파일(수 GB)에서 라이브러리 성능은 어떻습니까?** +A: 라이브러리는 컨테이너 구조를 스트리밍하여 메모리 사용량을 적게 유지합니다. 큰 태그 컬렉션을 처리할 경우 JVM에 충분한 힙이 있는지 확인하고, 매우 큰 파일을 처리한다면 `-Xmx`를 늘리는 것을 고려하십시오. -## 결론 -이제 GroupDocs.Metadata를 사용한 **read mkv metadata java**에 대한 완전하고 프로덕션 준비된 가이드를 보유하게 되었습니다. EBML 헤더, 세그먼트 정보, 태그 및 트랙 세부 정보를 활용하면 미디어 카탈로그를 구축하고 품질 검사를 자동화하거나 비디오 스트리밍 서비스를 강화할 수 있습니다. 예제 코드를 실험하고 워크플로에 맞게 조정하며, 라이브러리의 다양한 포맷 지원을 탐색해 보세요. +**Q: 메타데이터를 수정하고 파일에 다시 쓸 수 있나요?** +A: GroupDocs.Metadata는 주로 읽기에 초점을 맞추고 있습니다. 쓰기 지원은 제한적이며, 쓰기 기능에 대해서는 최신 API 문서를 참고하십시오. --- -**마지막 업데이트:** 2026-02-21 +**마지막 업데이트:** 2026-09-02 **테스트 환경:** GroupDocs.Metadata 24.12 for Java -**작성자:** GroupDocs \ No newline at end of file +**작성자:** GroupDocs + +## 관련 튜토리얼 + +- [Java와 GroupDocs.Metadata를 사용하여 mkv 자막을 일괄 추출하는 방법](/metadata/java/audio-video-formats/extract-subtitles-mkv-files-java-groupdocs-metadata/) +- [GroupDocs.Metadata를 사용하여 Java 비디오 메타데이터 추출](/metadata/java/audio-video-formats/mastering-avi-metadata-handling-groupdocs-java/) +- [GroupDocs.Metadata를 사용하여 Java에서 FLV 메타데이터 추출하는 방법](/metadata/java/audio-video-formats/flv-metadata-extraction-groupdocs-java/) \ No newline at end of file diff --git a/content/polish/java/audio-video-formats/extract-matroska-metadata-groupdocs-java/_index.md b/content/polish/java/audio-video-formats/extract-matroska-metadata-groupdocs-java/_index.md index f3cdb2f7e..dc8217c56 100644 --- a/content/polish/java/audio-video-formats/extract-matroska-metadata-groupdocs-java/_index.md +++ b/content/polish/java/audio-video-formats/extract-matroska-metadata-groupdocs-java/_index.md @@ -1,53 +1,84 @@ --- -date: '2026-02-21' -description: Dowiedz się, jak odczytywać metadane MKV w Javie przy użyciu GroupDocs.Metadata, - wyodrębniać metadane wideo w Javie oraz obsługiwać nagłówki EBML, tagi i ścieżki. +date: '2026-09-02' +description: Dowiedz się, jak wyodrębnić metadane mkv w Javie przy użyciu GroupDocs.Metadata, + obejmując nagłówki EBML, tags, tracks oraz praktyczne przypadki użycia. keywords: -- extract mkv metadata java -- groupdocs.metadata java -- read matroska file -title: Odczyt metadanych MKV w Javie z GroupDocs.Metadata – Kompletny przewodnik +- how to extract mkv +- groupdocs metadata java +- extract video metadata java +lastmod: '2026-09-02' +og_description: Jak wyodrębnić metadane mkv w Javie przy użyciu GroupDocs.Metadata. + Uzyskaj step‑by‑step guidance, quick answers i real‑world examples dla video cataloguing. +og_image_alt: Guide showing Java code extracting Matroska (MKV) metadata with GroupDocs.Metadata +og_title: Jak wyodrębnić metadane mkv w Javie przy użyciu GroupDocs.Metadata +schemas: +- author: GroupDocs + dateModified: '2026-09-02' + description: Learn how to extract mkv metadata in Java using GroupDocs.Metadata, + covering EBML headers, tags, tracks, and practical use cases. + headline: How to extract mkv metadata in Java with GroupDocs.Metadata + type: TechArticle +- questions: + - answer: Yes, GroupDocs.Metadata supports MP4, AVI, MOV, and many more. The API + pattern is identical – just use the appropriate root package class for the format. + question: Can I extract metadata from other video formats with the same library? + - answer: A commercial license removes trial limits and unlocks full functionality. + The library works in trial mode for evaluation purposes. + question: Is a license required for production use? + - answer: Absolutely. Once the JAR is on your classpath, all metadata reads are + performed locally without any network calls. + question: Does the extraction happen offline? + - answer: The library streams the container structure, keeping memory usage modest. + Ensure your JVM has enough heap for any large tag collections, and consider + increasing `-Xmx` if you process extremely large files. + question: How does the library perform on very large MKV files (several GB)? + - answer: GroupDocs.Metadata primarily focuses on reading. Write support is limited; + refer to the latest API documentation for any write‑back capabilities. + question: Can I modify the metadata and write it back to the file? + type: FAQPage +tags: +- extract mkv +- groupdocs metadata +- java video processing +- matroska metadata +- metadata extraction +title: Jak wyodrębnić metadane mkv w Javie przy użyciu GroupDocs.Metadata type: docs url: /pl/java/audio-video-formats/extract-matroska-metadata-groupdocs-java/ weight: 1 --- -# Odczyt metadanych MKV w Javie z GroupDocs.Metadata +# Jak wyodrębnić metadane mkv w Javie przy użyciu GroupDocs.Metadata -Pliki multimedialne są wszędzie, a możliwość **read mkv metadata java** jest niezbędna do zarządzania mediami, katalogowania i analiz. W tym samouczku dowiesz się, dlaczego wyodrębnianie metadanych z kontenerów Matroska ma znaczenie, jak skonfigurować GroupDocs.Metadata oraz krok po kroku kod do pobierania nagłówków EBML, informacji o segmentach, tagów i danych ścieżek. Niezależnie od tego, czy tworzysz katalog wideo, weryfikujesz parametry kodowania, czy automatycznie generujesz miniatury, ten przewodnik dostarczy Ci wszystkiego, czego potrzebujesz. +W tym obszernym przewodniku dowiesz się **jak wyodrębnić metadane mkv w Javie** przy użyciu biblioteki GroupDocs.Metadata. Niezależnie od tego, czy tworzysz katalog mediów, weryfikujesz parametry kodowania, czy automatyzujesz generowanie miniatur, programowe odczytywanie metadanych Matroska (MKV) oszczędza niezliczone godziny ręcznej pracy. Przeprowadzimy Cię przez przyczyny, wymagania wstępne, dokładne kroki konfiguracji oraz szczegółowe fragmenty kodu, które ujawniają nagłówki EBML, informacje o segmentach, tagi i dane ścieżek. ## Szybkie odpowiedzi -- **Co oznacza „read mkv metadata java”?** To proces programatycznego odczytywania metadanych z plików MKV przy użyciu Javy. -- **Którą bibliotekę powinienem użyć?** GroupDocs.Metadata for Java zapewnia kompleksowe API dla plików Matroska. -- **Czy potrzebna jest licencja?** Darmowa wersja próbna wystarcza do oceny; licencja usuwa ograniczenia użytkowania. -- **Czy mogę odczytywać inne formaty?** Tak, ta sama biblioteka obsługuje MP4, AVI, MP3 i wiele innych. -- **Czy dostęp do internetu jest wymagany w czasie działania?** Nie, całe wyodrębnianie odbywa się lokalnie po dodaniu biblioteki do projektu. +- **Co oznacza „read mkv metadata java”?** To programowe wyodrębnianie metadanych kontenera Matroska (tytuły, kodeki, czasy trwania itp.) z plików MKV przy użyciu Javy. +- **Którą bibliotekę powinienem użyć?** GroupDocs.Metadata dla Javy oferuje w pełni funkcjonalne, wysokowydajne API dla Matroska i ponad 50 innych formatów. +- **Czy potrzebna jest licencja?** Darmowa wersja próbna działa w celach oceny; licencja komercyjna usuwa wszystkie ograniczenia wersji próbnej. +- **Czy mogę odczytywać inne formaty?** Tak – to samo API odczytuje MP4, AVI, MOV, MP3 i wiele innych kontenerów. +- **Czy dostęp do internetu jest wymagany w czasie działania?** Nie – całe wyodrębnianie odbywa się lokalnie po umieszczeniu JAR-a na classpath. -## Co to są metadane Matroska (MKV)? -Matroska jest otwartym, elastycznym formatem kontenera. Jej metadane obejmują nagłówek EBML (wersja pliku, typ dokumentu), szczegóły segmentu (czas trwania, aplikacja miksująca), tagi (tytuły, opisy) oraz specyfikacje ścieżek (kodeki audio/wideo, język). Dostęp do tych danych pozwala budować katalogi mediów, weryfikować integralność plików lub automatycznie generować miniatury. +## Czym są metadane Matroska (MKV)? +Metadane Matroska (MKV) to zbiór strukturalnych i opisowych informacji przechowywanych wewnątrz kontenera Matroska, w tym nagłówek EBML (wersja pliku i typ dokumentu), szczegóły segmentu (czas trwania, aplikacja muxująca), tagi definiowane przez użytkownika (tytuły, opisy) oraz specyfikacje ścieżek (identyfikatory kodeków audio/wideo, język, bitrate). Dostęp do tych danych umożliwia budowanie przeszukiwalnych katalogów, weryfikację integralności plików lub sterowanie zautomatyzowanymi przepływami pracy, takimi jak generowanie miniatur. -## Dlaczego odczytywać mkv metadata java? -- **Automatyzacja** – Automatyczne pobieranie szczegółów dla dużych bibliotek wideo. -- **Kontrola jakości** – Weryfikacja identyfikatorów kodeków, czasów trwania i języków ścieżek przed publikacją. -- **Wyszukiwanie i odkrywanie** – Wypełnianie przeszukiwalnych baz danych tytułami, językami i znacznikami czasu. -- **Spójność między formatami** – Użycie tego samego kodu do wyodrębniania metadanych wideo w Javie z innych kontenerów (MP4, AVI, itp.). +## Dlaczego odczytywać metadane mkv w Javie? +Odczytywanie metadanych MKV w Javie pozwala **zautomatyzować** katalogowanie tysięcy plików wideo, **zweryfikować** wymagania dotyczące kodeków i języków przed publikacją oraz **wypełnić** przeszukiwalne bazy danych tytułami, czasami trwania i językami ścieżek. Zapewnia także **jedną bazę kodu** do wyodrębniania metadanych wideo z wielu kontenerów, co zmniejsza nakład utrzymania i zapewnia spójne kontrole jakości w całym potoku medialnym. ## Dlaczego używać GroupDocs.Metadata dla Javy? -- **Pełnofunkcyjne API** – Obsługuje EBML, segmenty, tagi i ścieżki bez parsowania niskopoziomowego. -- **Wydajność zoptymalizowana** – Działa efektywnie nawet przy plikach wielogigabajtowych. -- **Obsługa wielu formatów** – Ten sam wzorzec kodu ma zastosowanie do wielu kontenerów audio/wideo. -- **Prosta integracja z Maven** – Dodaj jedną zależność i rozpocznij wyodrębnianie. +GroupDocs.Metadata dla Javy to dojrzała biblioteka, która obsługuje **ponad 50 formatów wejściowych i wyjściowych**, w tym Matroska, MP4, AVI i MOV. Strumieniuje struktury kontenerów, dzięki czemu zużycie pamięci pozostaje niskie nawet przy plikach wielogigabajtowych. API abstrahuje niskopoziomowe parsowanie EBML, pozwalając skupić się na logice biznesowej. Integracja jest tak prosta, jak dodanie jednej zależności Maven, a biblioteka jest stale aktualizowana, aby obsługiwać najnowsze specyfikacje kodeków. ## Wymagania wstępne -- **GroupDocs.Metadata for Java** w wersji 24.12 lub nowszej. -- Zainstalowany Java Development Kit (JDK). -- Maven (lub ręczne zarządzanie plikami JAR). -- Plik MKV do eksperymentów (umieść go w `YOUR_DOCUMENT_DIRECTORY`). +- **GroupDocs.Metadata dla Javy** wersja 24.12 lub nowsza. +- Java Development Kit (JDK) 8 lub nowszy zainstalowany. +- Maven (lub ręczne zarządzanie JAR-ami) do zarządzania zależnościami. +- Plik MKV do testów, umieszczony w folderze, do którego możesz odwołać się w kodzie (np. `YOUR_DOCUMENT_DIRECTORY`). ## Konfiguracja GroupDocs.Metadata dla Javy -Dodaj bibliotekę do projektu przy użyciu Maven lub pobierz plik JAR bezpośrednio. -**Maven:** +GroupDocs.Metadata dla Javy to biblioteka umożliwiająca odczyt metadanych z ponad 50 formatów plików, w tym Matroska (MKV). Dodaj ją do swojego projektu przy użyciu Maven lub pobierz JAR ręcznie. + +**Maven:** ```xml @@ -66,13 +97,15 @@ Dodaj bibliotekę do projektu przy użyciu Maven lub pobierz plik JAR bezpośred ``` -**Direct Download:** +**Bezpośrednie pobranie:** Jeśli wolisz nie używać Maven, pobierz najnowszą wersję z [GroupDocs.Metadata for Java releases](https://releases.groupdocs.com/metadata/java/). ### Uzyskanie licencji + Rozpocznij od darmowej wersji próbnej, aby wypróbować funkcje. Do użytku produkcyjnego zakup licencję lub uzyskaj tymczasową z [GroupDocs](https://purchase.groupdocs.com/temporary-license/), aby usunąć ograniczenia wersji próbnej. ### Podstawowa inicjalizacja i konfiguracja + Poniżej znajduje się minimalny kod potrzebny do otwarcia pliku MKV przy użyciu GroupDocs.Metadata. ```java @@ -89,11 +122,15 @@ public class MetadataExtraction { } ``` -## Jak odczytywać mkv metadata java przy użyciu GroupDocs.Metadata -Teraz przyjrzymy się każdemu obszarowi metadanych, które możesz odczytać. +## Jak odczytać metadane mkv w Javie przy użyciu GroupDocs.Metadata + +`Metadata` jest główną klasą reprezentującą plik MKV i zapewnia dostęp do jego metadanych. +Załaduj swój plik MKV za pomocą `new Metadata("path/to/file.mkv")` i wywołaj odpowiednie gettery – `getRootPackageGeneric()`, `getSegments()`, `getTags()` i `getTracks()` – aby pobrać każdą sekcję metadanych. Ten pojedynczy łańcuch wywołań daje pełną widoczność nagłówka EBML, informacji o segmencie, tagów użytkownika i szczegółów poszczególnych ścieżek bez konieczności pisania niskopoziomowego kodu parsującego. ### Odczyt nagłówka EBML Matroska -Nagłówek EBML przechowuje podstawowe informacje o pliku, takie jak wersja i typ dokumentu. + +Nagłówek EBML przechowuje podstawowe informacje o pliku, takie jak wersja, typ dokumentu i rozmiar pliku. +`getRootPackageGeneric()` zwraca pakiet nagłówka EBML otwartego pliku. ```java import com.groupdocs.metadata.Metadata; @@ -118,10 +155,12 @@ public class ReadMatroskaEBMLHeader { **Kluczowe punkty** - `getRootPackageGeneric()` zwraca punkt wejścia pakietu Matroska. -- Właściwości EBML (`docType`, `version` itp.) pomagają zweryfikować kompatybilność pliku. +- Właściwości EBML (`docType`, `version` itp.) pozwalają zweryfikować kompatybilność pliku przed dalszym przetwarzaniem. ### Odczyt informacji o segmencie Matroska -Segmenty opisują ogólną oś czasu mediów oraz narzędzia tworzenia. + +Segmenty opisują ogólną oś czasu mediów, narzędzia tworzenia oraz opcjonalne informacje o tytule. +`getSegments()` pobiera kolekcję obiektów segmentów zawierających czas trwania i szczegóły tworzenia. ```java import com.groupdocs.metadata.Metadata; @@ -151,10 +190,12 @@ public class ReadMatroskaSegmentInformation { **Kluczowe punkty** - `getSegments()` zwraca kolekcję; każdy segment może zawierać własny tytuł, czas trwania i szczegóły aplikacji tworzącej. -- Przydatne przy tworzeniu list odtwarzania lub weryfikacji parametrów kodowania. +- Dane te są przydatne przy tworzeniu list odtwarzania lub weryfikacji parametrów kodowania w zestawie plików. ### Odczyt metadanych tagów Matroska -Tagi przechowują informacje czytelne dla człowieka, takie jak tytuły, artyści lub własne notatki. + +Tagi przechowują informacje czytelne dla człowieka, takie jak tytuły, artyści lub własne notatki. +`getTags()` zwraca listę wpisów tagów powiązanych z plikiem. ```java import com.groupdocs.metadata.Metadata; @@ -185,10 +226,12 @@ public class ReadMatroskaTagMetadata { **Kluczowe punkty** - Tagi są organizowane według `targetType` (np. `movie`, `track`). -- Wpisy `simpleTag` zawierają pary klucz/wartość, np. `TITLE=My Video`. +- Wpisy `simpleTag` zawierają pary klucz/wartość, takie jak `TITLE=My Video`. ### Odczyt metadanych ścieżek Matroska -Ścieżki reprezentują poszczególne strumienie audio, wideo lub napisy. + +Ścieżki reprezentują poszczególne strumienie audio, wideo lub napisy wewnątrz kontenera. +`getTracks()` zapewnia dostęp do technicznych specyfikacji każdej ścieżki. ```java import com.groupdocs.metadata.Metadata; @@ -213,45 +256,50 @@ public class ReadMatroskaTrackMetadata { ``` **Kluczowe punkty** -- `track.getType()` informuje, czy jest to wideo, audio czy napisy. -- `codecId` pozwala zidentyfikować kodek (np. `V_MPEG4/ISO/AVC`). -- Te dane są niezbędne w pipeline'ach transkodowania lub kontrolach jakości. +- `track.getType()` informuje, czy strumień jest wideo, audio czy napisami. +- `codecId` identyfikuje kodek (np. `V_MPEG4/ISO/AVC`). +- Informacje te są niezbędne w pipeline'ach transkodowania, kontrolach jakości i decyzjach o dynamicznym strumieniowaniu. + +## Typowe przypadki użycia odczytu metadanych mkv w Javie -## Typowe przypadki użycia odczytu mkv metadata java -- **Katalogi mediów** – Wypełnianie tabel bazy danych tytułami, czasami trwania i kodami języków. -- **Automatyczna kontrola jakości** – Weryfikacja, że każdy plik zawiera wymagane tagi przed publikacją. -- **Dynamiczne strumieniowanie** – Wybór odpowiedniej ścieżki audio/napisów w zależności od preferencji użytkownika. -- **Migracja treści** – Jednorazowe wyodrębnienie metadanych, a następnie wstrzyknięcie ich do nowego systemu przechowywania. +- **Katalogi mediów** – Wypełnij tabele bazy danych tytułami, czasami trwania i kodami języków dla szybkiego wyszukiwania. +- **Zautomatyzowana kontrola jakości** – Zweryfikuj, że każdy plik zawiera wymagane tagi i spełnia standardy kodeków przed wydaniem. +- **Dynamiczne strumieniowanie** – Wybierz odpowiednią ścieżkę audio lub napisy w zależności od preferencji użytkownika w czasie działania. +- **Migracja treści** – Wyodrębnij metadane raz, a następnie wstrzyknij je do nowego systemu przechowywania lub sieci dostarczania treści. ## Typowe problemy i rozwiązywanie -| Symptom | Likely Cause | Fix | + +| Objaw | Prawdopodobna przyczyna | Rozwiązanie | |---------|--------------|-----| -| `NullPointerException` przy dostępie do `getEbmlHeader()` | Nieprawidłowa ścieżka pliku lub plik nie został znaleziony | Sprawdź ścieżkę w `new Metadata("...")` i upewnij się, że plik istnieje. | -| Brak zwróconych tagów | Plik MKV nie zawiera elementów tagów | Użyj pliku multimedialnego, który zawiera tagi metadanych (np. dodane przy pomocy MKVToolNix). | -| Wolne przetwarzanie dużych plików | Niewystarczająca pamięć heap | Zwiększ pamięć heap JVM (`-Xmx2g` lub wyższą) lub przetwarzaj plik w częściach, jeśli to możliwe. | +| `NullPointerException` when accessing `getEbmlHeader()` | Nieprawidłowa ścieżka pliku lub plik nie został znaleziony | Zweryfikuj ścieżkę w `new Metadata("...")` i upewnij się, że plik istnieje na dysku. | +| No tags returned | Plik MKV nie zawiera elementów tagów | Użyj pliku multimedialnego, który zawiera tagi metadanych (np. dodane za pomocą MKVToolNix). | +| Slow processing on large files | Niewystarczająca pamięć heap | Zwiększ pamięć heap JVM (`-Xmx2g` lub wyższą) lub przetwarzaj plik w częściach, jeśli to możliwe. | ## Najczęściej zadawane pytania -**P: Czy mogę wyodrębniać metadane z innych formatów wideo przy użyciu tej samej biblioteki?** -A: Tak, GroupDocs.Metadata obsługuje MP4, AVI, MOV i wiele innych. Wzorzec API jest podobny — wystarczy użyć odpowiedniej klasy pakietu głównego. +**Q: Czy mogę wyodrębnić metadane z innych formatów wideo przy użyciu tej samej biblioteki?** +A: Tak, GroupDocs.Metadata obsługuje MP4, AVI, MOV i wiele innych. Wzorzec API jest identyczny – wystarczy użyć odpowiedniej klasy pakietu głównego dla danego formatu. -**P: Czy licencja jest wymagana do użytku produkcyjnego?** -A: Licencja usuwa ograniczenia wersji próbnej i zapewnia pełną funkcjonalność. Biblioteka działa w trybie próbnym do oceny. +**Q: Czy wymagana jest licencja do użytku produkcyjnego?** +A: Licencja komercyjna usuwa ograniczenia wersji próbnej i odblokowuje pełną funkcjonalność. Biblioteka działa w trybie próbnym w celach oceny. -**P: Czy wyodrębnianie odbywa się offline?** -A: Zdecydowanie tak. Gdy JAR znajduje się w classpath, wszystkie odczyty metadanych są wykonywane lokalnie, bez połączeń sieciowych. +**Q: Czy wyodrębnianie odbywa się offline?** +A: Zdecydowanie tak. Po umieszczeniu JAR-a na classpath, wszystkie odczyty metadanych są wykonywane lokalnie, bez żadnych połączeń sieciowych. -**P: Jak to działa na bardzo dużych plikach MKV (kilka GB)?** -A: Biblioteka strumieniuje strukturę kontenera, więc zużycie pamięci pozostaje umiarkowane, ale upewnij się, że JVM ma wystarczającą pamięć heap dla dużych kolekcji tagów. +**Q: Jak biblioteka radzi sobie z bardzo dużymi plikami MKV (kilka GB)?** +A: Biblioteka strumieniuje strukturę kontenera, utrzymując zużycie pamięci na umiarkowanym poziomie. Upewnij się, że JVM ma wystarczającą pamięć heap dla dużych kolekcji tagów i rozważ zwiększenie `-Xmx`, jeśli przetwarzasz wyjątkowo duże pliki. -**P: Czy mogę modyfikować metadane i zapisać je z powrotem do pliku?** -A: GroupDocs.Metadata koncentruje się głównie na odczycie. Możliwości zapisu są ograniczone; sprawdź najnowszą dokumentację API pod kątem ewentualnego wsparcia zapisu. - -## Zakończenie -Masz teraz kompletny, gotowy do produkcji przewodnik po **read mkv metadata java** przy użyciu GroupDocs.Metadata. Dzięki wykorzystaniu nagłówków EBML, informacji o segmentach, tagów i szczegółów ścieżek, możesz zasilać katalogi mediów, automatyzować kontrole jakości lub wzbogacać usługi strumieniowania wideo. Eksperymentuj z fragmentami kodu, dostosuj je do swoich procesów i odkrywaj szersze wsparcie biblioteki dla innych formatów, aby uzyskać jeszcze więcej możliwości. +**Q: Czy mogę modyfikować metadane i zapisać je z powrotem do pliku?** +A: GroupDocs.Metadata koncentruje się głównie na odczycie. Obsługa zapisu jest ograniczona; zapoznaj się z najnowszą dokumentacją API w celu sprawdzenia możliwości zapisu. --- -**Last Updated:** 2026-02-21 -**Tested With:** GroupDocs.Metadata 24.12 for Java -**Author:** GroupDocs \ No newline at end of file +**Ostatnia aktualizacja:** 2026-09-02 +**Testowano z:** GroupDocs.Metadata 24.12 for Java +**Autor:** GroupDocs + +## Powiązane samouczki + +- [Jak masowo wyodrębnić napisy mkv w Javie przy użyciu GroupDocs.Metadata](/metadata/java/audio-video-formats/extract-subtitles-mkv-files-java-groupdocs-metadata/) +- [Wyodrębnij metadane wideo w Javie przy użyciu GroupDocs.Metadata](/metadata/java/audio-video-formats/mastering-avi-metadata-handling-groupdocs-java/) +- [Jak wyodrębnić metadane FLV w Javie przy użyciu GroupDocs.Metadata](/metadata/java/audio-video-formats/flv-metadata-extraction-groupdocs-java/) \ No newline at end of file diff --git a/content/portuguese/java/audio-video-formats/extract-matroska-metadata-groupdocs-java/_index.md b/content/portuguese/java/audio-video-formats/extract-matroska-metadata-groupdocs-java/_index.md index cf5e21be2..f9ed8bd3e 100644 --- a/content/portuguese/java/audio-video-formats/extract-matroska-metadata-groupdocs-java/_index.md +++ b/content/portuguese/java/audio-video-formats/extract-matroska-metadata-groupdocs-java/_index.md @@ -1,53 +1,88 @@ --- -date: '2026-02-21' -description: Aprenda a ler metadados MKV em Java usando o GroupDocs.Metadata, extrair - metadados de vídeo em Java e lidar com cabeçalhos EBML, tags e faixas. +date: '2026-09-02' +description: Aprenda como extrair metadados mkv em Java usando GroupDocs.Metadata, + abordando cabeçalhos EBML, tags, faixas e casos de uso práticos. keywords: -- extract mkv metadata java -- groupdocs.metadata java -- read matroska file -title: Ler Metadados MKV em Java com GroupDocs.Metadata – Guia Completo +- how to extract mkv +- groupdocs metadata java +- extract video metadata java +lastmod: '2026-09-02' +og_description: Como extrair metadados mkv em Java usando GroupDocs.Metadata. Obtenha + orientação passo a passo, respostas rápidas e exemplos do mundo real para catalogação + de vídeo. +og_image_alt: Guide showing Java code extracting Matroska (MKV) metadata with GroupDocs.Metadata +og_title: Como extrair metadados mkv em Java com GroupDocs.Metadata +schemas: +- author: GroupDocs + dateModified: '2026-09-02' + description: Learn how to extract mkv metadata in Java using GroupDocs.Metadata, + covering EBML headers, tags, tracks, and practical use cases. + headline: How to extract mkv metadata in Java with GroupDocs.Metadata + type: TechArticle +- questions: + - answer: Yes, GroupDocs.Metadata supports MP4, AVI, MOV, and many more. The API + pattern is identical – just use the appropriate root package class for the format. + question: Can I extract metadata from other video formats with the same library? + - answer: A commercial license removes trial limits and unlocks full functionality. + The library works in trial mode for evaluation purposes. + question: Is a license required for production use? + - answer: Absolutely. Once the JAR is on your classpath, all metadata reads are + performed locally without any network calls. + question: Does the extraction happen offline? + - answer: The library streams the container structure, keeping memory usage modest. + Ensure your JVM has enough heap for any large tag collections, and consider + increasing `-Xmx` if you process extremely large files. + question: How does the library perform on very large MKV files (several GB)? + - answer: GroupDocs.Metadata primarily focuses on reading. Write support is limited; + refer to the latest API documentation for any write‑back capabilities. + question: Can I modify the metadata and write it back to the file? + type: FAQPage +tags: +- extract mkv +- groupdocs metadata +- java video processing +- matroska metadata +- metadata extraction +title: Como extrair metadados mkv em Java com GroupDocs.Metadata type: docs url: /pt/java/audio-video-formats/extract-matroska-metadata-groupdocs-java/ weight: 1 --- -# Ler Metadados MKV Java com GroupDocs.Metadata +# Como extrair metadados mkv em Java com GroupDocs.Metadata -Arquivos multimídia estão em toda parte, e ser capaz de **read mkv metadata java** é essencial para gerenciamento de mídia, catalogação e análise. Neste tutorial você descobrirá por que extrair metadados de contêineres Matroska é importante, como configurar o GroupDocs.Metadata e código passo a passo para obter cabeçalhos EBML, informações de segmento, tags e dados de trilhas. Seja construindo um catálogo de vídeos, validando parâmetros de codificação ou gerando miniaturas automaticamente, este guia oferece tudo o que você precisa. +Neste guia abrangente você aprenderá **como extrair metadados mkv em Java** usando a biblioteca GroupDocs.Metadata. Seja você quem está construindo um catálogo de mídia, validando parâmetros de codificação ou automatizando a geração de miniaturas, ler metadados Matroska (MKV) programaticamente economiza inúmeras horas de trabalho manual. Vamos percorrer o porquê, os pré‑requisitos, os passos exatos de configuração e trechos de código detalhados que expõem cabeçalhos EBML, informações de segmento, tags e dados de trilha. -## Respostas Rápidas -- **O que significa “read mkv metadata java”?** É o processo de ler programaticamente metadados de arquivos MKV usando Java. -- **Qual biblioteca devo usar?** GroupDocs.Metadata for Java fornece uma API abrangente para arquivos Matroska. -- **Preciso de uma licença?** Um teste gratuito funciona para avaliação; uma licença remove limites de uso. -- **Posso ler outros formatos?** Sim, a mesma biblioteca suporta MP4, AVI, MP3 e muitos outros. -- **É necessário acesso à internet em tempo de execução?** Não, toda extração ocorre localmente após a biblioteca ser adicionada ao seu projeto. +## Respostas rápidas +- **O que significa “read mkv metadata java”?** É a extração programática de metadados do contêiner Matroska (títulos, codecs, durações, etc.) de arquivos MKV usando Java. +- **Qual biblioteca devo usar?** GroupDocs.Metadata para Java oferece uma API completa, de alto desempenho, para Matroska e mais de 50 outros formatos. +- **Preciso de licença?** Um teste gratuito funciona para avaliação; uma licença comercial remove todas as limitações de teste. +- **Posso ler outros formatos?** Sim – a mesma API lê MP4, AVI, MOV, MP3 e muitos outros contêineres. +- **É necessário acesso à internet em tempo de execução?** Não – toda a extração ocorre localmente após o JAR estar no seu classpath. -## O que são Metadados Matroska (MKV)? -Matroska é um formato de contêiner aberto e flexível. Seus metadados incluem o cabeçalho EBML (versão do arquivo, tipo de documento), detalhes do segmento (duração, aplicação de multiplexação), tags (títulos, descrições) e especificações de trilhas (codecs de áudio/vídeo, idioma). Acessar esses dados permite criar catálogos de mídia, verificar a integridade do arquivo ou gerar miniaturas automaticamente. +## O que são metadados Matroska (MKV)? -## Por que ler mkv metadata java? -- **Automação** – Obtém detalhes automaticamente para grandes bibliotecas de vídeo. -- **Controle de qualidade** – Valida IDs de codec, durações e idiomas das trilhas antes da publicação. -- **Busca e descoberta** – Popula bancos de dados pesquisáveis com títulos, idiomas e timestamps. -- **Consistência entre formatos** – Use a mesma base de código para extrair video metadata java de outros contêineres (MP4, AVI, etc.). +Metadados Matroska (MKV) são o conjunto de informações estruturais e descritivas armazenadas dentro de um contêiner Matroska, incluindo o cabeçalho EBML (versão do arquivo e tipo de documento), detalhes do segmento (duração, aplicação de multiplexação), tags definidas pelo usuário (títulos, descrições) e especificações de trilha (IDs de codec áudio/vídeo, idioma, taxa de bits). Acessar esses dados permite construir catálogos pesquisáveis, verificar a integridade do arquivo ou conduzir fluxos de trabalho automatizados, como geração de miniaturas. + +## Por que ler metadados mkv em Java? + +Ler metadados MKV a partir de Java permite **automatizar** a catalogação de milhares de arquivos de vídeo, **validar** requisitos de codec e idioma antes da publicação e **popular** bancos de dados pesquisáveis com títulos, durações e idiomas das trilhas. Também fornece uma **única base de código** para extrair metadados de vídeo de múltiplos contêineres, reduzindo a sobrecarga de manutenção e garantindo verificações de qualidade consistentes ao longo do seu pipeline de mídia. ## Por que usar GroupDocs.Metadata para Java? -- **API completa** – Manipula EBML, segmentos, tags e trilhas sem parsing de baixo nível. -- **Desempenho otimizado** – Funciona de forma eficiente mesmo com arquivos de vários gigabytes. -- **Suporte a múltiplos formatos** – O mesmo padrão de código aplica‑se a diversos contêineres de áudio/vídeo. -- **Integração simples com Maven** – Adicione uma única dependência e comece a extrair. + +GroupDocs.Metadata para Java é uma biblioteca madura que suporta **mais de 50 formatos de entrada e saída**, incluindo Matroska, MP4, AVI e MOV. Ela transmite estruturas de contêiner, de modo que o consumo de memória permanece baixo mesmo para arquivos de vários gigabytes. A API abstrai o parsing de baixo nível do EBML, permitindo que você se concentre na lógica de negócio. A integração é tão simples quanto adicionar uma dependência Maven, e a biblioteca é continuamente atualizada para lidar com as especificações de codec mais recentes. ## Pré‑requisitos -- **GroupDocs.Metadata for Java** versão 24.12 ou posterior. -- Java Development Kit (JDK) instalado. -- Maven (ou manipulação manual de JAR). -- Um arquivo MKV para experimentar (coloque‑o em `YOUR_DOCUMENT_DIRECTORY`). +- **GroupDocs.Metadata para Java** versão 24.12 ou posterior. +- Java Development Kit (JDK) 8 ou mais recente instalado. +- Maven (ou manipulação manual de JAR) para gerenciar dependências. +- Um arquivo MKV para teste, colocado em uma pasta que você possa referenciar a partir do seu código (por exemplo, `YOUR_DOCUMENT_DIRECTORY`). ## Configurando GroupDocs.Metadata para Java -Adicione a biblioteca ao seu projeto usando Maven ou faça o download do JAR diretamente. -**Maven:** +GroupDocs.Metadata para Java é uma biblioteca que permite ler metadados de mais de 50 formatos de arquivo, incluindo Matroska (MKV). Adicione-a ao seu projeto com Maven ou faça o download do JAR manualmente. + +**Maven:** ```xml @@ -66,13 +101,15 @@ Adicione a biblioteca ao seu projeto usando Maven ou faça o download do JAR dir ``` -**Download Direto:** -Se preferir não usar Maven, faça o download da versão mais recente em [lançamentos do GroupDocs.Metadata para Java](https://releases.groupdocs.com/metadata/java/). +**Download direto:** +Se preferir não usar Maven, faça o download da versão mais recente em [GroupDocs.Metadata for Java releases](https://releases.groupdocs.com/metadata/java/). -### Aquisição de Licença -Comece com um teste gratuito para explorar os recursos. Para uso em produção, adquira uma licença ou obtenha uma temporária em [GroupDocs](https://purchase.groupdocs.com/temporary-license/) para remover as limitações do teste. +### Aquisição de licença + +Comece com um teste gratuito para explorar os recursos. Para uso em produção, adquira uma licença ou obtenha uma licença temporária em [GroupDocs](https://purchase.groupdocs.com/temporary-license/) para remover as limitações do teste. + +### Inicialização e configuração básicas -### Inicialização e Configuração Básicas Abaixo está o código mínimo necessário para abrir um arquivo MKV com GroupDocs.Metadata. ```java @@ -89,11 +126,15 @@ public class MetadataExtraction { } ``` -## Como ler mkv metadata java com GroupDocs.Metadata -Agora vamos mergulhar em cada área de metadados que você pode ler. +## Como ler metadados mkv em Java com GroupDocs.Metadata + +`Metadata` é a classe principal que representa um arquivo MKV e fornece acesso aos seus metadados. +Carregue seu arquivo MKV com `new Metadata("path/to/file.mkv")` e chame os getters apropriados – `getRootPackageGeneric()`, `getSegments()`, `getTags()` e `getTracks()` – para recuperar cada seção de metadados. Essa única cadeia de chamadas oferece visibilidade completa do cabeçalho EBML, informações de segmento, tags do usuário e detalhes individuais das trilhas, sem precisar escrever lógica de parsing de baixo nível. + +### Lendo o cabeçalho EBML do Matroska -### Lendo o Cabeçalho EBML do Matroska -O cabeçalho EBML armazena informações essenciais do arquivo, como versão e tipo de documento. +O cabeçalho EBML armazena informações centrais do arquivo, como versão, tipo de documento e tamanho do arquivo. +`getRootPackageGeneric()` retorna o pacote de cabeçalho EBML do arquivo aberto. ```java import com.groupdocs.metadata.Metadata; @@ -116,12 +157,14 @@ public class ReadMatroskaEBMLHeader { } ``` -**Pontos Principais** -- `getRootPackageGeneric()` fornece o ponto de entrada do pacote Matroska. -- As propriedades EBML (`docType`, `version`, etc.) ajudam a verificar a compatibilidade do arquivo. +**Pontos‑chave** +- `getRootPackageGeneric()` retorna o ponto de entrada do pacote Matroska. +- Propriedades EBML (`docType`, `version`, etc.) permitem verificar a compatibilidade do arquivo antes de um processamento mais profundo. -### Lendo as Informações de Segmento do Matroska -Os segmentos descrevem a linha do tempo geral da mídia e as ferramentas de criação. +### Lendo informações de segmento do Matroska + +Segmentos descrevem a linha do tempo geral da mídia, ferramentas de criação e informações opcionais de título. +`getSegments()` recupera uma coleção de objetos de segmento contendo duração e detalhes de criação. ```java import com.groupdocs.metadata.Metadata; @@ -149,12 +192,14 @@ public class ReadMatroskaSegmentInformation { } ``` -**Pontos Principais** +**Pontos‑chave** - `getSegments()` retorna uma coleção; cada segmento pode conter seu próprio título, duração e detalhes da aplicação de criação. -- Útil para construir playlists ou validar parâmetros de codificação. +- Esses dados são úteis para construir playlists ou validar parâmetros de codificação em lote de arquivos. + +### Lendo metadados de tags do Matroska -### Lendo Metadados de Tag do Matroska -Tags armazenam informações legíveis por humanos, como títulos, artistas ou notas personalizadas. +Tags armazenam informações legíveis por humanos, como títulos, artistas ou notas personalizadas. +`getTags()` devolve a lista de entradas de tag associadas ao arquivo. ```java import com.groupdocs.metadata.Metadata; @@ -183,12 +228,14 @@ public class ReadMatroskaTagMetadata { } ``` -**Pontos Principais** -- Tags são organizadas por `targetType` (ex.: `movie`, `track`). +**Pontos‑chave** +- Tags são organizadas por `targetType` (por exemplo, `movie`, `track`). - Entradas `simpleTag` contêm pares chave/valor como `TITLE=My Video`. -### Lendo Metadados de Trilha do Matroska -Trilhas representam fluxos individuais de áudio, vídeo ou legendas. +### Lendo metadados de trilha do Matroska + +Trilhas representam fluxos individuais de áudio, vídeo ou legendas dentro do contêiner. +`getTracks()` fornece acesso às especificações técnicas de cada trilha. ```java import com.groupdocs.metadata.Metadata; @@ -212,47 +259,51 @@ public class ReadMatroskaTrackMetadata { } ``` -**Pontos Principais** -- `track.getType()` indica se é vídeo, áudio ou legendas. -- `codecId` permite identificar o codec (ex.: `V_MPEG4/ISO/AVC`). -- Esses dados são essenciais para pipelines de transcodificação ou verificações de qualidade. +**Pontos‑chave** +- `track.getType()` indica se o fluxo é vídeo, áudio ou legendas. +- `codecId` identifica o codec (por exemplo, `V_MPEG4/ISO/AVC`). +- Essas informações são essenciais para pipelines de transcodificação, verificações de qualidade e decisões de streaming dinâmico. + +## Casos de uso comuns para ler metadados mkv em Java -## Casos de Uso Comuns para ler mkv metadata java -- **Catálogos de mídia** – Preencha tabelas de banco de dados com títulos, durações e códigos de idioma. -- **QC automatizado** – Verifique se cada arquivo contém as tags necessárias antes da publicação. -- **Streaming dinâmico** – Selecione a trilha de áudio/legenda correta com base nas preferências do usuário. -- **Migração de conteúdo** – Extraia metadados uma vez, depois injete‑os em um novo sistema de armazenamento. +- **Catálogos de mídia** – Popular tabelas de banco de dados com títulos, durações e códigos de idioma para busca rápida. +- **Controle de qualidade automatizado** – Verificar se cada arquivo contém as tags necessárias e está em conformidade com os padrões de codec antes do lançamento. +- **Streaming dinâmico** – Selecionar a trilha de áudio ou legenda apropriada com base nas preferências do usuário em tempo de execução. +- **Migração de conteúdo** – Extrair metadados uma única vez e, em seguida, injetá‑los em um novo sistema de armazenamento ou rede de entrega de conteúdo. -## Problemas Comuns & Solução de Problemas +## Problemas comuns & solução de problemas -| Sintoma | Causa Provável | Correção | +| Sintoma | Causa provável | Correção | |---------|----------------|----------| -| `NullPointerException` ao acessar `getEbmlHeader()` | Caminho do arquivo incorreto ou arquivo não encontrado | Verifique o caminho em `new Metadata("...")` e assegure que o arquivo exista. | -| Nenhuma tag retornada | Arquivo MKV não contém elementos de tag | Use um arquivo de mídia que contenha tags de metadados (ex.: adicionadas via MKVToolNix). | -| Processamento lento em arquivos grandes | Memória heap insuficiente | Aumente a heap da JVM (`-Xmx2g` ou superior) ou processe o arquivo em partes, se possível. | +| `NullPointerException` ao acessar `getEbmlHeader()` | Caminho do arquivo incorreto ou arquivo não encontrado | Verifique o caminho em `new Metadata("...")` e assegure que o arquivo exista no disco. | +| Nenhuma tag retornada | O arquivo MKV não possui elementos de tag | Use um arquivo de mídia que contenha tags de metadados (por exemplo, adicionadas via MKVToolNix). | +| Processamento lento em arquivos grandes | Memória heap insuficiente | Aumente o heap da JVM (`-Xmx2g` ou superior) ou processe o arquivo em blocos, se possível. | -## Perguntas Frequentes +## Perguntas frequentes **Q: Posso extrair metadados de outros formatos de vídeo com a mesma biblioteca?** -A: Sim, o GroupDocs.Metadata suporta MP4, AVI, MOV e muitos outros. O padrão da API é semelhante—basta usar a classe de pacote raiz apropriada. +A: Sim, GroupDocs.Metadata suporta MP4, AVI, MOV e muitos outros. O padrão da API é idêntico – basta usar a classe de pacote raiz apropriada para o formato. **Q: É necessária uma licença para uso em produção?** -A: Uma licença remove os limites do teste e concede funcionalidade completa. A biblioteca funciona em modo de teste para avaliação. +A: Uma licença comercial remove os limites de teste e desbloqueia a funcionalidade completa. A biblioteca funciona em modo de avaliação para fins de teste. **Q: A extração ocorre offline?** -A: Absolutamente. Uma vez que o JAR esteja no seu classpath, todas as leituras de metadados são realizadas localmente sem chamadas de rede. +A: Absolutamente. Uma vez que o JAR esteja no seu classpath, todas as leituras de metadados são realizadas localmente, sem chamadas de rede. -**Q: Como isso funciona em arquivos MKV muito grandes (vários GB)?** -A: A biblioteca faz streaming da estrutura do contêiner, portanto o uso de memória permanece modesto, mas assegure que sua JVM tenha heap suficiente para quaisquer coleções de tags grandes. +**Q: Como a biblioteca se comporta em arquivos MKV muito grandes (vários GB)?** +A: A biblioteca transmite a estrutura do contêiner, mantendo o uso de memória modesto. Garanta que sua JVM tenha heap suficiente para quaisquer coleções de tags grandes e considere aumentar `-Xmx` se processar arquivos extremamente grandes. **Q: Posso modificar os metadados e gravá‑los de volta no arquivo?** -A: O GroupDocs.Metadata foca principalmente na leitura. As capacidades de escrita são limitadas; verifique a documentação mais recente da API para suporte a escrita. - -## Conclusão -Agora você tem um guia completo e pronto para produção de **read mkv metadata java** usando GroupDocs.Metadata. Ao acessar cabeçalhos EBML, informações de segmento, tags e detalhes de trilhas, você pode alimentar catálogos de mídia, automatizar verificações de qualidade ou enriquecer serviços de streaming de vídeo. Experimente os trechos de código, adapte‑os ao seu fluxo de trabalho e explore o suporte da biblioteca a formatos mais amplos para ainda mais possibilidades. +A: GroupDocs.Metadata foca principalmente na leitura. O suporte à escrita é limitado; consulte a documentação da API mais recente para quaisquer capacidades de gravação. --- -**Última Atualização:** 2026-02-21 +**Última atualização:** 2026-09-02 **Testado com:** GroupDocs.Metadata 24.12 for Java -**Autor:** GroupDocs \ No newline at end of file +**Autor:** GroupDocs + +## Tutoriais Relacionados + +- [Como extrair legendas mkv em lote com Java e GroupDocs.Metadata](/metadata/java/audio-video-formats/extract-subtitles-mkv-files-java-groupdocs-metadata/) +- [Extrair metadados de vídeo java usando GroupDocs.Metadata](/metadata/java/audio-video-formats/mastering-avi-metadata-handling-groupdocs-java/) +- [Como extrair metadados FLV Java com GroupDocs.Metadata](/metadata/java/audio-video-formats/flv-metadata-extraction-groupdocs-java/) \ No newline at end of file diff --git a/content/russian/java/audio-video-formats/extract-matroska-metadata-groupdocs-java/_index.md b/content/russian/java/audio-video-formats/extract-matroska-metadata-groupdocs-java/_index.md index 13df9ec74..00f53dba0 100644 --- a/content/russian/java/audio-video-formats/extract-matroska-metadata-groupdocs-java/_index.md +++ b/content/russian/java/audio-video-formats/extract-matroska-metadata-groupdocs-java/_index.md @@ -1,63 +1,85 @@ --- -date: '2026-02-21' -description: Узнайте, как читать метаданные MKV на Java с помощью GroupDocs.Metadata, - извлекать видеометаданные на Java и работать с заголовками EBML, тегами и дорожками. +date: '2026-09-02' +description: Узнайте, как извлечь метаданные mkv в Java с использованием GroupDocs.Metadata, + охватывая заголовки EBML, теги, дорожки и практические примеры использования. keywords: -- extract mkv metadata java -- groupdocs.metadata java -- read matroska file -title: Чтение метаданных MKV в Java с помощью GroupDocs.Metadata – Полное руководство +- how to extract mkv +- groupdocs metadata java +- extract video metadata java +lastmod: '2026-09-02' +og_description: Как извлечь метаданные mkv в Java с помощью GroupDocs.Metadata. Получите + пошаговое руководство, быстрые ответы и реальные примеры для каталогизации видео. +og_image_alt: Guide showing Java code extracting Matroska (MKV) metadata with GroupDocs.Metadata +og_title: Как извлечь метаданные mkv в Java с помощью GroupDocs.Metadata +schemas: +- author: GroupDocs + dateModified: '2026-09-02' + description: Learn how to extract mkv metadata in Java using GroupDocs.Metadata, + covering EBML headers, tags, tracks, and practical use cases. + headline: How to extract mkv metadata in Java with GroupDocs.Metadata + type: TechArticle +- questions: + - answer: Yes, GroupDocs.Metadata supports MP4, AVI, MOV, and many more. The API + pattern is identical – just use the appropriate root package class for the format. + question: Can I extract metadata from other video formats with the same library? + - answer: A commercial license removes trial limits and unlocks full functionality. + The library works in trial mode for evaluation purposes. + question: Is a license required for production use? + - answer: Absolutely. Once the JAR is on your classpath, all metadata reads are + performed locally without any network calls. + question: Does the extraction happen offline? + - answer: The library streams the container structure, keeping memory usage modest. + Ensure your JVM has enough heap for any large tag collections, and consider + increasing `-Xmx` if you process extremely large files. + question: How does the library perform on very large MKV files (several GB)? + - answer: GroupDocs.Metadata primarily focuses on reading. Write support is limited; + refer to the latest API documentation for any write‑back capabilities. + question: Can I modify the metadata and write it back to the file? + type: FAQPage +tags: +- extract mkv +- groupdocs metadata +- java video processing +- matroska metadata +- metadata extraction +title: Как извлечь метаданные mkv в Java с помощью GroupDocs.Metadata type: docs url: /ru/java/audio-video-formats/extract-matroska-metadata-groupdocs-java/ weight: 1 --- - с помощью GroupDocs.Metadata" +# Как извлечь метаданные mkv в Java с помощью GroupDocs.Metadata -Then paragraph. - -Translate sentences. - -We'll keep **read mkv metadata java** as is? It's a phrase, but technical term maybe keep as is? The instruction: keep technical terms in English. "read mkv metadata java" is phrase but maybe keep as is. We'll keep as is. - -Proceed. - -Also code block placeholders remain. - -Now produce final content.# Чтение метаданных MKV в Java с помощью GroupDocs.Metadata - -Multimedia files are everywhere, and being able to **read mkv metadata java** is essential for media management, cataloguing, and analytics. In this tutorial you’ll discover why extracting metadata from Matroska containers matters, how to set up GroupDocs.Metadata, and step‑by‑step code for pulling EBML headers, segment info, tags, and track data. Whether you’re building a video catalog, validating encoding parameters, or generating thumbnails automatically, this guide gives you everything you need. +В этом всестороннем руководстве вы узнаете **как извлечь метаданные mkv в Java** с использованием библиотеки GroupDocs.Metadata. Независимо от того, создаёте ли вы каталог медиа, проверяете параметры кодирования или автоматизируете генерацию миниатюр, программное чтение метаданных Matroska (MKV) экономит бесчисленные часы ручного труда. Мы пройдёмся по причинам, предварительным требованиям, точным шагам настройки и подробным фрагментам кода, которые раскрывают заголовки EBML, информацию о сегментах, теги и данные дорожек. ## Быстрые ответы -- **Что означает “read mkv metadata java”?** Это процесс программного чтения метаданных из файлов MKV с помощью Java. -- **Какую библиотеку использовать?** GroupDocs.Metadata for Java предоставляет всесторонний API для файлов Matroska. -- **Нужна ли лицензия?** Бесплатная пробная версия подходит для оценки; лицензия снимает ограничения использования. -- **Можно ли читать другие форматы?** Да, та же библиотека поддерживает MP4, AVI, MP3 и многие другие. -- **Требуется ли доступ к интернету во время выполнения?** Нет, всё извлечение происходит локально после добавления библиотеки в проект. +- **Что означает “read mkv metadata java”?** Это программное извлечение метаданных контейнера Matroska (названия, кодеки, длительности и т.д.) из файлов MKV с использованием Java. +- **Какую библиотеку следует использовать?** GroupDocs.Metadata for Java предлагает полнофункциональный, высокопроизводительный API для Matroska и более 50 других форматов. +- **Нужна ли лицензия?** Бесплатная пробная версия подходит для оценки; коммерческая лицензия снимает все ограничения пробного режима. +- **Можно ли читать другие форматы?** Да — тот же API читает MP4, AVI, MOV, MP3 и многие другие контейнеры. +- **Требуется ли доступ к интернету во время выполнения?** Нет — всё извлечение происходит локально после того, как JAR находится в вашем classpath. ## Что такое метаданные Matroska (MKV)? -Matroska — открытый, гибкий контейнерный формат. Его метаданные включают EBML‑заголовок (версия файла, тип документа), детали сегмента (длительность, приложение мультиплексирования), теги (названия, описания) и спецификации дорожек (аудио/видео кодеки, язык). Доступ к этим данным позволяет создавать каталоги медиа, проверять целостность файлов или автоматически генерировать миниатюры. -## Почему читать mkv metadata java? -- **Автоматизация** – Автоматически извлекать детали для больших видеотек. -- **Контроль качества** – Проверять идентификаторы кодеков, длительность и языки дорожек перед публикацией. -- **Поиск и обнаружение** – Заполнять поисковые базы данных названиями, языками и временными метками. -- **Согласованность между форматами** – Использовать одну кодовую базу для извлечения video metadata java из других контейнеров (MP4, AVI и др.). +Метаданные Matroska (MKV) — это набор структурной и описательной информации, хранящейся внутри контейнера Matroska, включая заголовок EBML (версия файла и тип документа), детали сегмента (длительность, приложение мультиплексирования), пользовательские теги (названия, описания) и спецификации дорожек (идентификаторы аудио/видео кодеков, язык, битрейт). Доступ к этим данным позволяет создавать поисковые каталоги, проверять целостность файлов или управлять автоматическими рабочими процессами, такими как генерация миниатюр. + +## Почему читать метаданные mkv в Java? + +Чтение метаданных MKV из Java позволяет **автоматизировать** каталогизацию тысяч видеофайлов, **проверять** требования к кодекам и языкам перед публикацией и **заполнять** поисковые базы данных названиями, длительностями и языками дорожек. Это также обеспечивает **единую кодовую базу** для извлечения видеометаданных из разных контейнеров, снижая нагрузку на обслуживание и гарантируя единообразные проверки качества в вашей медиа‑конвейере. ## Почему использовать GroupDocs.Metadata для Java? -- **Полнофункциональный API** – Обрабатывает EBML, сегменты, теги и дорожки без низкоуровневого парсинга. -- **Оптимизированная производительность** – Эффективно работает даже с многогигабайтными файлами. -- **Поддержка множества форматов** – Один и тот же шаблон кода применим к множеству аудио/видео контейнеров. -- **Простая интеграция Maven** – Добавьте одну зависимость и начните извлекать. + +GroupDocs.Metadata for Java — зрелая библиотека, поддерживающая **более 50 входных и выходных форматов**, включая Matroska, MP4, AVI и MOV. Она потоково читает структуры контейнеров, поэтому потребление памяти остаётся низким даже для многогигабайтных файлов. API абстрагирует низкоуровневый разбор EBML, позволяя сосредоточиться на бизнес‑логике. Интеграция сводится к добавлению одной зависимости Maven, а библиотека постоянно обновляется для поддержки последних спецификаций кодеков. ## Предварительные требования -- **GroupDocs.Metadata for Java** версии 24.12 или новее. -- Установленный Java Development Kit (JDK). -- Maven (или ручное управление JAR‑файлами). -- Файл MKV для экспериментов (разместите его в `YOUR_DOCUMENT_DIRECTORY`). +- **GroupDocs.Metadata for Java** версии 24.12 или новее. +- Java Development Kit (JDK) 8 или новее установлен. +- Maven (или ручное управление JAR) для управления зависимостями. +- Файл MKV для тестирования, размещённый в папке, к которой вы можете обратиться из кода (например, `YOUR_DOCUMENT_DIRECTORY`). ## Настройка GroupDocs.Metadata для Java -Добавьте библиотеку в проект с помощью Maven или скачайте JAR‑файл напрямую. + +GroupDocs.Metadata for Java — это библиотека, позволяющая читать метаданные более чем из 50 форматов файлов, включая Matroska (MKV). Добавьте её в проект с помощью Maven или скачайте JAR вручную. **Maven:** ```xml @@ -79,13 +101,15 @@ Matroska — открытый, гибкий контейнерный форма ``` **Прямое скачивание:** -Если вы предпочитаете не использовать Maven, загрузите последнюю версию с [GroupDocs.Metadata for Java releases](https://releases.groupdocs.com/metadata/java/). +Если вы предпочитаете не использовать Maven, скачайте последнюю версию по ссылке [GroupDocs.Metadata for Java releases](https://releases.groupdocs.com/metadata/java/). ### Приобретение лицензии -Начните с бесплатной пробной версии, чтобы изучить возможности. Для продакшн‑использования приобретите лицензию или получите временную лицензию на сайте [GroupDocs](https://purchase.groupdocs.com/temporary-license/), чтобы снять ограничения пробного режима. + +Начните с бесплатной пробной версии, чтобы изучить возможности. Для продакшн‑использования приобретите лицензию или получите временную по ссылке [GroupDocs](https://purchase.groupdocs.com/temporary-license/), чтобы снять ограничения пробного режима. ### Базовая инициализация и настройка -Ниже минимальный код, необходимый для открытия файла MKV с помощью GroupDocs.Metadata. + +Ниже представлен минимальный код, необходимый для открытия файла MKV с помощью GroupDocs.Metadata. ```java import com.groupdocs.metadata.Metadata; @@ -101,11 +125,15 @@ public class MetadataExtraction { } ``` -## Как read mkv metadata java с GroupDocs.Metadata -Теперь перейдём к каждому разделу метаданных, которые можно прочитать. +## Как читать метаданные mkv в Java с помощью GroupDocs.Metadata -### Чтение EBML‑заголовка Matroska -EBML‑заголовок хранит основную информацию о файле, такую как версия и тип документа. +`Metadata` — основной класс, представляющий файл MKV и предоставляющий доступ к его метаданным. +Загрузите ваш файл MKV через `new Metadata("path/to/file.mkv")` и вызовите соответствующие геттеры — `getRootPackageGeneric()`, `getSegments()`, `getTags()` и `getTracks()` — чтобы получить каждый раздел метаданных. Эта цепочка вызовов даёт полное представление о заголовке EBML, информации о сегментах, пользовательских тегах и деталях отдельных дорожек без написания низкоуровневой логики парсинга. + +### Чтение заголовка EBML Matroska + +Заголовок EBML хранит основную информацию о файле, такую как версия, тип документа и размер файла. +`getRootPackageGeneric()` возвращает пакет заголовка EBML открытого файла. ```java import com.groupdocs.metadata.Metadata; @@ -129,11 +157,13 @@ public class ReadMatroskaEBMLHeader { ``` **Ключевые моменты** -- `getRootPackageGeneric()` возвращает точку входа в пакет Matroska. -- Свойства EBML (`docType`, `version` и др.) помогают проверить совместимость файла. +- `getRootPackageGeneric()` возвращает точку входа пакета Matroska. +- Свойства EBML (`docType`, `version` и др.) позволяют проверить совместимость файла перед более глубокой обработкой. + +### Чтение информации о сегментах Matroska -### Чтение информации о сегменте Matroska -Сегменты описывают общую временную шкалу медиа и инструменты создания. +Сегменты описывают общую временную шкалу медиа, инструменты создания и необязательную информацию о заголовке. +`getSegments()` возвращает коллекцию объектов сегментов, содержащих длительность и детали создания. ```java import com.groupdocs.metadata.Metadata; @@ -162,11 +192,13 @@ public class ReadMatroskaSegmentInformation { ``` **Ключевые моменты** -- `getSegments()` возвращает коллекцию; каждый сегмент может содержать собственный заголовок, длительность и сведения о приложении создания. -- Полезно для построения плейлистов или проверки параметров кодирования. +- `getSegments()` возвращает коллекцию; каждый сегмент может содержать собственный заголовок, длительность и детали приложения создания. +- Эти данные полезны для создания плейлистов или проверки параметров кодирования в наборе файлов. -### Чтение тегов Matroska -Теги хранят человекочитаемую информацию, такую как названия, исполнители или пользовательские заметки. +### Чтение метаданных тегов Matroska + +Теги хранят человекочитаемую информацию, такую как названия, исполнители или пользовательские заметки. +`getTags()` возвращает список записей тегов, связанных с файлом. ```java import com.groupdocs.metadata.Metadata; @@ -197,10 +229,12 @@ public class ReadMatroskaTagMetadata { **Ключевые моменты** - Теги организованы по `targetType` (например, `movie`, `track`). -- Записи `simpleTag` содержат пары ключ/значение, например `TITLE=My Video`. +- Элементы `simpleTag` содержат пары ключ/значение, такие как `TITLE=My Video`. ### Чтение метаданных дорожек Matroska -Дорожки представляют отдельные аудио, видео или субтитровые потоки. + +Дорожки представляют отдельные аудио, видео или субтитровые потоки внутри контейнера. +`getTracks()` предоставляет доступ к техническим спецификациям каждой дорожки. ```java import com.groupdocs.metadata.Metadata; @@ -225,45 +259,50 @@ public class ReadMatroskaTrackMetadata { ``` **Ключевые моменты** -- `track.getType()` сообщает, является ли дорожка видео, аудио или субтитрами. -- `codecId` позволяет определить кодек (например, `V_MPEG4/ISO/AVC`). -- Эти данные важны для конвейеров транскодирования или проверок качества. - -## Распространённые сценарии использования read mkv metadata java -- **Медиа‑каталоги** – Заполнять таблицы базы данных названиями, длительностями и кодами языков. -- **Автоматический контроль качества** – Проверять, что каждый файл содержит необходимые теги перед публикацией. -- **Динамическое стриминг** – Выбирать правильную аудио/субтитровую дорожку в зависимости от предпочтений пользователя. -- **Миграция контента** – Один раз извлечь метаданные, затем внедрить их в новую систему хранения. - -## Распространённые проблемы и их решение -| Симптом | Возможная причина | Решение | -|---------|-------------------|--------| -| `NullPointerException` при обращении к `getEbmlHeader()` | Неправильный путь к файлу или файл не найден | Проверьте путь в `new Metadata("...")` и убедитесь, что файл существует. | -| Теги не возвращаются | В файле MKV отсутствуют элементы тегов | Используйте медиа‑файл, содержащий метаданные тегов (например, добавленные через MKVToolNix). | -| Медленная обработка больших файлов | Недостаточно памяти heap | Увеличьте heap JVM (`-Xmx2g` или больше) или, если возможно, обрабатывайте файл частями. | +- `track.getType()` указывает, является ли поток видео, аудио или субтитрами. +- `codecId` идентифицирует кодек (например, `V_MPEG4/ISO/AVC`). +- Эта информация важна для конвейеров транскодирования, проверок качества и динамических решений по потоковой передаче. -## Часто задаваемые вопросы +## Распространённые сценарии использования чтения метаданных mkv в Java -**В: Можно ли извлекать метаданные из других видеоформатов той же библиотекой?** -О: Да, GroupDocs.Metadata поддерживает MP4, AVI, MOV и многие другие. Паттерн API аналогичен — просто используйте соответствующий класс корневого пакета. +- **Каталоги медиа** – Заполняйте таблицы базы данных названиями, длительностями и кодами языков для быстрого поиска. +- **Автоматический контроль качества** – Проверяйте, что каждый файл содержит необходимые теги и соответствует стандартам кодеков перед выпуском. +- **Динамическая потоковая передача** – Выбирайте соответствующую аудио- или субтитровую дорожку в зависимости от предпочтений пользователя во время выполнения. +- **Миграция контента** – Извлеките метаданные один раз, а затем внедрите их в новую систему хранения или сеть доставки контента. -**В: Требуется ли лицензия для продакшн‑использования?** -О: Лицензия снимает ограничения пробного режима и предоставляет полный функционал. Библиотека работает в пробном режиме для оценки. +## Распространённые проблемы и устранение неполадок -**В: Выполняется ли извлечение офлайн?** -О: Абсолютно. После добавления JAR‑файла в classpath все чтения метаданных происходят локально без сетевых запросов. +| Симптом | Вероятная причина | Исправление | +|---------|-------------------|-------------| +| `NullPointerException` при доступе к `getEbmlHeader()` | Неправильный путь к файлу или файл не найден | Проверьте путь в `new Metadata("...")` и убедитесь, что файл существует на диске. | +| Теги не возвращаются | Файл MKV не содержит элементов тегов | Используйте медиафайл, содержащий метаданные тегов (например, добавленные через MKVToolNix). | +| Медленная обработка больших файлов | Недостаточно памяти в куче | Увеличьте кучу JVM (`-Xmx2g` или больше) или обрабатывайте файл частями, если возможно. | -**В: Как библиотека работает с очень большими файлами MKV (несколько ГБ)?** -О: Библиотека потоково читает структуру контейнера, поэтому потребление памяти остаётся умеренным, но убедитесь, что у JVM достаточно heap для больших коллекций тегов. +## Часто задаваемые вопросы + +**Q: Можно ли извлечь метаданные из других видеоформатов с помощью той же библиотеки?** +A: Да, GroupDocs.Metadata поддерживает MP4, AVI, MOV и многие другие. Паттерн API идентичен — просто используйте соответствующий класс корневого пакета для нужного формата. + +**Q: Требуется ли лицензия для продакшн‑использования?** +A: Коммерческая лицензия снимает ограничения пробного режима и открывает полный набор возможностей. Библиотека работает в пробном режиме для целей оценки. -**В: Можно ли изменять метаданные и записывать их обратно в файл?** -О: GroupDocs.Metadata в основном ориентирована на чтение. Возможности записи ограничены; ознакомьтесь с последней документацией API для получения информации о поддержке записи. +**Q: Происходит ли извлечение офлайн?** +A: Абсолютно. После того как JAR находится в вашем classpath, все чтения метаданных выполняются локально без сетевых запросов. -## Заключение -Теперь у вас есть полное, готовое к продакшн‑использованию руководство по **read mkv metadata java** с помощью GroupDocs.Metadata. Используя EBML‑заголовки, информацию о сегментах, теги и детали дорожек, вы сможете создавать медиа‑каталоги, автоматизировать проверки качества или обогащать сервисы видеостриминга. Экспериментируйте с примерами, адаптируйте их под свои рабочие процессы и изучайте более широкую поддержку форматов в библиотеке для новых возможностей. +**Q: Как библиотека работает с очень большими файлами MKV (несколько ГБ)?** +A: Библиотека потоково читает структуру контейнера, поддерживая скромное потребление памяти. Убедитесь, что у JVM достаточно кучи для больших коллекций тегов, и при необходимости увеличьте `-Xmx`. + +**Q: Можно ли изменить метаданные и записать их обратно в файл?** +A: GroupDocs.Metadata в основном ориентирована на чтение. Поддержка записи ограничена; см. последнюю документацию API для возможных функций записи. --- -**Последнее обновление:** 2026-02-21 +**Последнее обновление:** 2026-09-02 **Тестировано с:** GroupDocs.Metadata 24.12 for Java -**Автор:** GroupDocs \ No newline at end of file +**Автор:** GroupDocs + +## Связанные учебные материалы + +- [Как пакетно извлекать субтитры mkv с помощью Java и GroupDocs.Metadata](/metadata/java/audio-video-formats/extract-subtitles-mkv-files-java-groupdocs-metadata/) +- [Извлечение метаданных видео java с использованием GroupDocs.Metadata](/metadata/java/audio-video-formats/mastering-avi-metadata-handling-groupdocs-java/) +- [Как извлечь метаданные FLV Java с помощью GroupDocs.Metadata](/metadata/java/audio-video-formats/flv-metadata-extraction-groupdocs-java/) \ No newline at end of file diff --git a/content/spanish/java/audio-video-formats/extract-matroska-metadata-groupdocs-java/_index.md b/content/spanish/java/audio-video-formats/extract-matroska-metadata-groupdocs-java/_index.md index d6116e824..3788f8e65 100644 --- a/content/spanish/java/audio-video-formats/extract-matroska-metadata-groupdocs-java/_index.md +++ b/content/spanish/java/audio-video-formats/extract-matroska-metadata-groupdocs-java/_index.md @@ -1,51 +1,86 @@ --- -date: '2026-02-21' -description: Aprende cómo leer metadatos MKV en Java usando GroupDocs.Metadata, extraer - metadatos de video en Java y manejar encabezados, etiquetas y pistas EBML. +date: '2026-09-02' +description: Aprende cómo extraer metadatos mkv en Java usando GroupDocs.Metadata, + cubriendo encabezados EBML, etiquetas, pistas y casos de uso prácticos. keywords: -- extract mkv metadata java -- groupdocs.metadata java -- read matroska file -title: Leer metadatos MKV en Java con GroupDocs.Metadata – Guía completa +- how to extract mkv +- groupdocs metadata java +- extract video metadata java +lastmod: '2026-09-02' +og_description: Cómo extraer metadatos mkv en Java usando GroupDocs.Metadata. Obtén + una guía paso a paso, respuestas rápidas y ejemplos del mundo real para la catalogación + de video. +og_image_alt: Guide showing Java code extracting Matroska (MKV) metadata with GroupDocs.Metadata +og_title: Cómo extraer metadatos mkv en Java con GroupDocs.Metadata +schemas: +- author: GroupDocs + dateModified: '2026-09-02' + description: Learn how to extract mkv metadata in Java using GroupDocs.Metadata, + covering EBML headers, tags, tracks, and practical use cases. + headline: How to extract mkv metadata in Java with GroupDocs.Metadata + type: TechArticle +- questions: + - answer: Yes, GroupDocs.Metadata supports MP4, AVI, MOV, and many more. The API + pattern is identical – just use the appropriate root package class for the format. + question: Can I extract metadata from other video formats with the same library? + - answer: A commercial license removes trial limits and unlocks full functionality. + The library works in trial mode for evaluation purposes. + question: Is a license required for production use? + - answer: Absolutely. Once the JAR is on your classpath, all metadata reads are + performed locally without any network calls. + question: Does the extraction happen offline? + - answer: The library streams the container structure, keeping memory usage modest. + Ensure your JVM has enough heap for any large tag collections, and consider + increasing `-Xmx` if you process extremely large files. + question: How does the library perform on very large MKV files (several GB)? + - answer: GroupDocs.Metadata primarily focuses on reading. Write support is limited; + refer to the latest API documentation for any write‑back capabilities. + question: Can I modify the metadata and write it back to the file? + type: FAQPage +tags: +- extract mkv +- groupdocs metadata +- java video processing +- matroska metadata +- metadata extraction +title: Cómo extraer metadatos mkv en Java con GroupDocs.Metadata type: docs url: /es/java/audio-video-formats/extract-matroska-metadata-groupdocs-java/ weight: 1 --- -# Leer metadatos MKV Java con GroupDocs.Metadata +# Cómo extraer metadatos mkv en Java con GroupDocs.Metadata -Los archivos multimedia están en todas partes, y poder **read mkv metadata java** es esencial para la gestión de medios, catalogación y análisis. En este tutorial descubrirá por qué extraer metadatos de contenedores Matroska es importante, cómo configurar GroupDocs.Metadata y código paso a paso para obtener encabezados EBML, información de segmento, etiquetas y datos de pista. Ya sea que esté creando un catálogo de videos, validando parámetros de codificación o generando miniaturas automáticamente, esta guía le brinda todo lo que necesita. +En esta guía completa aprenderás **cómo extraer metadatos mkv en Java** usando la biblioteca GroupDocs.Metadata. Ya sea que estés construyendo un catálogo de medios, validando parámetros de codificación o automatizando la generación de miniaturas, leer los metadatos Matroska (MKV) programáticamente ahorra innumerables horas manuales. Revisaremos el porqué, los requisitos previos, los pasos exactos de configuración y fragmentos de código detallados que exponen encabezados EBML, información de segmento, etiquetas y datos de pista. ## Respuestas rápidas -- **¿Qué significa “read mkv metadata java”?** Es el proceso de leer programáticamente metadatos de archivos MKV usando Java. -- **¿Qué biblioteca debo usar?** GroupDocs.Metadata para Java proporciona una API completa para archivos Matroska. -- **¿Necesito una licencia?** Una prueba gratuita funciona para evaluación; una licencia elimina los límites de uso. -- **¿Puedo leer otros formatos?** Sí, la misma biblioteca admite MP4, AVI, MP3 y muchos más. -- **¿Se requiere acceso a internet en tiempo de ejecución?** No, toda la extracción ocurre localmente después de agregar la biblioteca a su proyecto. +- **¿Qué significa “read mkv metadata java”?** Es la extracción programática de los metadatos del contenedor Matroska (títulos, códecs, duraciones, etc.) de archivos MKV usando Java. +- **¿Qué biblioteca debo usar?** GroupDocs.Metadata para Java ofrece una API completa, de alto rendimiento, para Matroska y más de 50 formatos adicionales. +- **¿Necesito una licencia?** Una prueba gratuita sirve para evaluación; una licencia comercial elimina todas las limitaciones de prueba. +- **¿Puedo leer otros formatos?** Sí, la misma API lee MP4, AVI, MOV, MP3 y muchos más contenedores. +- **¿Se requiere acceso a internet en tiempo de ejecución?** No, toda la extracción ocurre localmente después de que el JAR esté en tu classpath. -## ¿Qué son los metadatos de Matroska (MKV)? -Matroska es un formato de contenedor abierto y flexible. Sus metadatos incluyen el encabezado EBML (versión del archivo, tipo de documento), los detalles del segmento (duración, aplicación de multiplexado), etiquetas (títulos, descripciones) y especificaciones de pista (códecs de audio/video, idioma). Acceder a estos datos le permite crear catálogos de medios, verificar la integridad del archivo o generar miniaturas automáticamente. +## ¿Qué son los metadatos Matroska (MKV)? -## ¿Por qué leer mkv metadata java? -- **Automatización** – Obtenga detalles automáticamente para bibliotecas de video grandes. -- **Control de calidad** – Validar IDs de códec, duraciones y idiomas de pista antes de publicar. -- **Búsqueda y descubrimiento** – Poblar bases de datos buscables con títulos, idiomas y marcas de tiempo. -- **Consistencia entre formatos** – Utilizar la misma base de código para extraer video metadata java de otros contenedores (MP4, AVI, etc.). +Los metadatos Matroska (MKV) son la colección de información estructural y descriptiva almacenada dentro de un contenedor Matroska, que incluye el encabezado EBML (versión del archivo y tipo de documento), detalles del segmento (duración, aplicación de multiplexado), etiquetas definidas por el usuario (títulos, descripciones) y especificaciones de pista (identificadores de códec de audio/video, idioma, bitrate). Acceder a estos datos te permite crear catálogos buscables, verificar la integridad del archivo o impulsar flujos de trabajo automatizados como la generación de miniaturas. + +## ¿Por qué leer metadatos mkv en Java? + +Leer metadatos MKV desde Java te permite **automatizar** el catalogado de miles de archivos de video, **validar** requisitos de códec e idioma antes de publicar, y **poblar** bases de datos buscables con títulos, duraciones y lenguajes de pista. También proporciona una **base de código única** para extraer metadatos de video de múltiples contenedores, reduciendo el mantenimiento y garantizando controles de calidad consistentes en tu canal de medios. ## ¿Por qué usar GroupDocs.Metadata para Java? -- **API completa** – Maneja EBML, segmentos, etiquetas y pistas sin análisis de bajo nivel. -- **Optimizado para rendimiento** – Funciona eficientemente incluso con archivos de varios gigabytes. -- **Soporte multiplataforma** – El mismo patrón de código se aplica a muchos contenedores de audio/video. -- **Integración Maven sencilla** – Añada una única dependencia y comience a extraer. + +GroupDocs.Metadata para Java es una biblioteca madura que soporta **más de 50 formatos de entrada y salida**, incluidos Matroska, MP4, AVI y MOV. Transmite estructuras de contenedor, por lo que el consumo de memoria se mantiene bajo incluso para archivos de varios gigabytes. La API abstrae el análisis de bajo nivel de EBML, permitiéndote centrarte en la lógica de negocio. La integración es tan simple como añadir una dependencia Maven, y la biblioteca se actualiza continuamente para manejar las últimas especificaciones de códecs. ## Requisitos previos -- **GroupDocs.Metadata para Java** versión 24.12 o posterior. -- Java Development Kit (JDK) instalado. -- Maven (o manejo manual de JAR). -- Un archivo MKV para experimentar (colóquelo en `YOUR_DOCUMENT_DIRECTORY`). +- **GroupDocs.Metadata para Java** versión 24.12 o posterior. +- Java Development Kit (JDK) 8 o superior instalado. +- Maven (o manejo manual de JAR) para gestionar dependencias. +- Un archivo MKV para pruebas, ubicado en una carpeta que puedas referenciar desde tu código (p.ej., `YOUR_DOCUMENT_DIRECTORY`). ## Configuración de GroupDocs.Metadata para Java -Agregue la biblioteca a su proyecto usando Maven o descargue el JAR directamente. + +GroupDocs.Metadata para Java es una biblioteca que permite leer metadatos de más de 50 formatos de archivo, incluido Matroska (MKV). Añádela a tu proyecto con Maven o descarga el JAR manualmente. **Maven:** ```xml @@ -67,12 +102,14 @@ Agregue la biblioteca a su proyecto usando Maven o descargue el JAR directamente ``` **Descarga directa:** -Si prefiere no usar Maven, descargue la última versión desde [GroupDocs.Metadata for Java releases](https://releases.groupdocs.com/metadata/java/). +Si prefieres no usar Maven, descarga la última versión desde [GroupDocs.Metadata for Java releases](https://releases.groupdocs.com/metadata/java/). ### Obtención de licencia -Comience con una prueba gratuita para explorar las funciones. Para uso en producción, compre una licencia o obtenga una temporal en [GroupDocs](https://purchase.groupdocs.com/temporary-license/) para eliminar las limitaciones de la prueba. + +Comienza con una prueba gratuita para explorar las funciones. Para uso en producción, compra una licencia o obtén una temporal en [GroupDocs](https://purchase.groupdocs.com/temporary-license/) para eliminar las limitaciones de prueba. ### Inicialización y configuración básica + A continuación se muestra el código mínimo necesario para abrir un archivo MKV con GroupDocs.Metadata. ```java @@ -89,11 +126,15 @@ public class MetadataExtraction { } ``` -## Cómo leer mkv metadata java con GroupDocs.Metadata -Ahora profundizaremos en cada área de metadatos que puede leer. +## Cómo leer metadatos mkv en Java con GroupDocs.Metadata + +`Metadata` es la clase principal que representa un archivo MKV y proporciona acceso a sus metadatos. +Carga tu archivo MKV con `new Metadata("path/to/file.mkv")` y llama a los getters apropiados – `getRootPackageGeneric()`, `getSegments()`, `getTags()` y `getTracks()` – para obtener cada sección de metadatos. Esta única cadena de llamadas te brinda visibilidad completa del encabezado EBML, información de segmento, etiquetas de usuario y detalles de pista individual sin escribir lógica de análisis de bajo nivel. ### Lectura del encabezado EBML de Matroska -El encabezado EBML almacena la información central del archivo, como la versión y el tipo de documento. + +El encabezado EBML almacena información esencial del archivo, como versión, tipo de documento y tamaño del archivo. +`getRootPackageGeneric()` devuelve el paquete de encabezado EBML del archivo abierto. ```java import com.groupdocs.metadata.Metadata; @@ -117,11 +158,13 @@ public class ReadMatroskaEBMLHeader { ``` **Puntos clave** -- `getRootPackageGeneric()` le brinda el punto de entrada del paquete Matroska. -- Las propiedades EBML (`docType`, `version`, etc.) le ayudan a verificar la compatibilidad del archivo. +- `getRootPackageGeneric()` devuelve el punto de entrada del paquete Matroska. +- Las propiedades EBML (`docType`, `version`, etc.) te permiten verificar la compatibilidad del archivo antes de un procesamiento más profundo. -### Lectura de la información del segmento Matroska -Los segmentos describen la línea de tiempo general del medio y las herramientas de creación. +### Lectura de la información de segmento de Matroska + +Los segmentos describen la línea de tiempo general del medio, herramientas de creación e información opcional de título. +`getSegments()` devuelve una colección de objetos segmento que contienen duración y detalles de creación. ```java import com.groupdocs.metadata.Metadata; @@ -151,10 +194,12 @@ public class ReadMatroskaSegmentInformation { **Puntos clave** - `getSegments()` devuelve una colección; cada segmento puede contener su propio título, duración y detalles de la aplicación de creación. -- Útil para crear listas de reproducción o validar parámetros de codificación. +- Estos datos son útiles para crear listas de reproducción o validar parámetros de codificación en un lote de archivos. + +### Lectura de los metadatos de etiquetas de Matroska -### Lectura de metadatos de etiquetas Matroska -Las etiquetas almacenan información legible por humanos como títulos, artistas o notas personalizadas. +Las etiquetas almacenan información legible por humanos, como títulos, artistas o notas personalizadas. +`getTags()` devuelve la lista de entradas de etiqueta asociadas al archivo. ```java import com.groupdocs.metadata.Metadata; @@ -184,11 +229,13 @@ public class ReadMatroskaTagMetadata { ``` **Puntos clave** -- Las etiquetas se organizan por `targetType` (p. ej., `movie`, `track`). +- Las etiquetas se organizan por `targetType` (p.ej., `movie`, `track`). - Las entradas `simpleTag` contienen pares clave/valor como `TITLE=My Video`. -### Lectura de metadatos de pista Matroska -Las pistas representan flujos individuales de audio, video o subtítulos. +### Lectura de los metadatos de pista de Matroska + +Las pistas representan flujos individuales de audio, video o subtítulos dentro del contenedor. +`getTracks()` proporciona acceso a las especificaciones técnicas de cada pista. ```java import com.groupdocs.metadata.Metadata; @@ -213,45 +260,50 @@ public class ReadMatroskaTrackMetadata { ``` **Puntos clave** -- `track.getType()` indica si es video, audio o subtítulos. -- `codecId` le permite identificar el códec (p. ej., `V_MPEG4/ISO/AVC`). -- Estos datos son esenciales para pipelines de transcodificación o verificaciones de calidad. +- `track.getType()` indica si la corriente es video, audio o subtítulos. +- `codecId` identifica el códec (p.ej., `V_MPEG4/ISO/AVC`). +- Esta información es esencial para pipelines de transcodificación, controles de calidad y decisiones de transmisión dinámica. + +## Casos de uso comunes para leer metadatos mkv en Java -## Casos de uso comunes para leer mkv metadata java -- **Catálogos de medios** – Poblar tablas de base de datos con títulos, duraciones y códigos de idioma. -- **Control de calidad automatizado** – Verificar que cada archivo contenga las etiquetas requeridas antes de publicar. -- **Transmisión dinámica** – Elegir la pista de audio/subtítulo correcta según las preferencias del usuario. -- **Migración de contenido** – Extraer metadatos una vez, luego inyectarlos en un nuevo sistema de almacenamiento. +- **Catálogos de medios** – Poblar tablas de base de datos con títulos, duraciones y códigos de idioma para búsquedas rápidas. +- **Control de calidad automatizado** – Verificar que cada archivo contenga las etiquetas requeridas y cumpla con los estándares de códec antes del lanzamiento. +- **Transmisión dinámica** – Seleccionar la pista de audio o subtítulos adecuada según las preferencias del usuario en tiempo de ejecución. +- **Migración de contenido** – Extraer los metadatos una vez, luego inyectarlos en un nuevo sistema de almacenamiento o red de entrega de contenido. ## Problemas comunes y solución de problemas + | Síntoma | Causa probable | Solución | |---------|----------------|----------| -| `NullPointerException` when accessing `getEbmlHeader()` | Ruta de archivo incorrecta o archivo no encontrado | Verifique la ruta en `new Metadata("...")` y asegúrese de que el archivo exista. | -| No tags returned | El archivo MKV carece de elementos de etiqueta | Use un archivo multimedia que contenga etiquetas de metadatos (p. ej., añadidas mediante MKVToolNix). | -| Slow processing on large files | Memoria heap insuficiente | Aumente el heap de JVM (`-Xmx2g` o superior) o procese el archivo en fragmentos si es posible. | +| `NullPointerException` al acceder a `getEbmlHeader()` | Ruta del archivo incorrecta o archivo no encontrado | Verifica la ruta en `new Metadata("...")` y asegura que el archivo exista en el disco. | +| No se devolvieron etiquetas | El archivo MKV carece de elementos de etiqueta | Utiliza un archivo multimedia que contenga etiquetas de metadatos (p.ej., agregadas mediante MKVToolNix). | +| Procesamiento lento en archivos grandes | Memoria heap insuficiente | Aumenta la memoria heap de la JVM (`-Xmx2g` o superior) o procesa el archivo en fragmentos si es posible. | ## Preguntas frecuentes -**P: ¿Puedo extraer metadatos de otros formatos de video con la misma biblioteca?** -R: Sí, GroupDocs.Metadata admite MP4, AVI, MOV y muchos más. El patrón de la API es similar—simplemente use la clase de paquete raíz apropiada. - -**P: ¿Se requiere una licencia para uso en producción?** -R: Una licencia elimina los límites de la prueba y otorga funcionalidad completa. La biblioteca funciona en modo de prueba para evaluación. +**Q: ¿Puedo extraer metadatos de otros formatos de video con la misma biblioteca?** +A: Sí, GroupDocs.Metadata soporta MP4, AVI, MOV y muchos más. El patrón de la API es idéntico; solo usa la clase de paquete raíz adecuada para el formato. -**P: ¿La extracción se realiza sin conexión?** -R: Absolutamente. Una vez que el JAR está en su classpath, todas las lecturas de metadatos se realizan localmente sin llamadas a la red. +**Q: ¿Se requiere una licencia para uso en producción?** +A: Una licencia comercial elimina los límites de prueba y desbloquea la funcionalidad completa. La biblioteca funciona en modo de prueba para propósitos de evaluación. -**P: ¿Cómo funciona esto con archivos MKV muy grandes (varios GB)?** -R: La biblioteca transmite la estructura del contenedor, por lo que el uso de memoria se mantiene moderado, pero asegúrese de que su JVM tenga suficiente heap para cualquier colección grande de etiquetas. +**Q: ¿La extracción se realiza sin conexión?** +A: Absolutamente. Una vez que el JAR está en tu classpath, todas las lecturas de metadatos se ejecutan localmente sin llamadas a la red. -**P: ¿Puedo modificar los metadatos y escribirlos de nuevo en el archivo?** -R: GroupDocs.Metadata se centra principalmente en la lectura. Las capacidades de escritura son limitadas; consulte la documentación más reciente de la API para ver si hay soporte de escritura. +**Q: ¿Cómo se comporta la biblioteca con archivos MKV muy grandes (varios GB)?** +A: La biblioteca transmite la estructura del contenedor, manteniendo el uso de memoria moderado. Asegúrate de que tu JVM tenga suficiente heap para cualquier colección grande de etiquetas y considera aumentar `-Xmx` si procesas archivos extremadamente grandes. -## Conclusión -Ahora tiene una guía completa y lista para producción de **read mkv metadata java** usando GroupDocs.Metadata. Al acceder a los encabezados EBML, la información de segmento, las etiquetas y los detalles de pista, puede impulsar catálogos de medios, automatizar verificaciones de calidad o enriquecer los servicios de transmisión de video. Experimente con los fragmentos, adáptelos a sus flujos de trabajo y explore el soporte de formatos más amplio de la biblioteca para aún más posibilidades. +**Q: ¿Puedo modificar los metadatos y volver a escribirlos en el archivo?** +A: GroupDocs.Metadata se centra principalmente en la lectura. El soporte de escritura es limitado; consulta la documentación más reciente de la API para cualquier capacidad de escritura de regreso. --- -**Última actualización:** 2026-02-21 -**Probado con:** GroupDocs.Metadata 24.12 for Java -**Autor:** GroupDocs \ No newline at end of file +**Última actualización:** 2026-09-02 +**Probado con:** GroupDocs.Metadata 24.12 para Java +**Autor:** GroupDocs + +## Tutoriales relacionados + +- [Cómo extraer subtítulos mkv por lotes con Java y GroupDocs.Metadata](/metadata/java/audio-video-formats/extract-subtitles-mkv-files-java-groupdocs-metadata/) +- [Extraer metadatos de video java usando GroupDocs.Metadata](/metadata/java/audio-video-formats/mastering-avi-metadata-handling-groupdocs-java/) +- [Cómo extraer metadatos FLV Java con GroupDocs.Metadata](/metadata/java/audio-video-formats/flv-metadata-extraction-groupdocs-java/) \ No newline at end of file diff --git a/content/swedish/java/audio-video-formats/extract-matroska-metadata-groupdocs-java/_index.md b/content/swedish/java/audio-video-formats/extract-matroska-metadata-groupdocs-java/_index.md index 48bc8092d..c5c4ec6bb 100644 --- a/content/swedish/java/audio-video-formats/extract-matroska-metadata-groupdocs-java/_index.md +++ b/content/swedish/java/audio-video-formats/extract-matroska-metadata-groupdocs-java/_index.md @@ -1,51 +1,85 @@ --- -date: '2026-02-21' -description: Lär dig hur du läser mkv‑metadata i Java med GroupDocs.Metadata, extraherar - videometadata i Java och hanterar EBML‑huvuden, taggar och spår. +date: '2026-09-02' +description: Lär dig hur du extraherar mkv metadata i Java med GroupDocs.Metadata, + med EBML headers, tags, tracks och praktiska användningsfall. keywords: -- extract mkv metadata java -- groupdocs.metadata java -- read matroska file -title: Läs MKV-metadata i Java med GroupDocs.Metadata – Komplett guide +- how to extract mkv +- groupdocs metadata java +- extract video metadata java +lastmod: '2026-09-02' +og_description: Hur du extraherar mkv metadata i Java med GroupDocs.Metadata. Få steg‑för‑steg‑vägledning, + snabba svar och verkliga exempel för videokatalogisering. +og_image_alt: Guide showing Java code extracting Matroska (MKV) metadata with GroupDocs.Metadata +og_title: Hur man extraherar mkv metadata i Java med GroupDocs.Metadata +schemas: +- author: GroupDocs + dateModified: '2026-09-02' + description: Learn how to extract mkv metadata in Java using GroupDocs.Metadata, + covering EBML headers, tags, tracks, and practical use cases. + headline: How to extract mkv metadata in Java with GroupDocs.Metadata + type: TechArticle +- questions: + - answer: Yes, GroupDocs.Metadata supports MP4, AVI, MOV, and many more. The API + pattern is identical – just use the appropriate root package class for the format. + question: Can I extract metadata from other video formats with the same library? + - answer: A commercial license removes trial limits and unlocks full functionality. + The library works in trial mode for evaluation purposes. + question: Is a license required for production use? + - answer: Absolutely. Once the JAR is on your classpath, all metadata reads are + performed locally without any network calls. + question: Does the extraction happen offline? + - answer: The library streams the container structure, keeping memory usage modest. + Ensure your JVM has enough heap for any large tag collections, and consider + increasing `-Xmx` if you process extremely large files. + question: How does the library perform on very large MKV files (several GB)? + - answer: GroupDocs.Metadata primarily focuses on reading. Write support is limited; + refer to the latest API documentation for any write‑back capabilities. + question: Can I modify the metadata and write it back to the file? + type: FAQPage +tags: +- extract mkv +- groupdocs metadata +- java video processing +- matroska metadata +- metadata extraction +title: Hur man extraherar mkv metadata i Java med GroupDocs.Metadata type: docs url: /sv/java/audio-video-formats/extract-matroska-metadata-groupdocs-java/ weight: 1 --- -# Läs MKV-metadata Java med GroupDocs.Metadata +# Hur man extraherar mkv-metadata i Java med GroupDocs.Metadata -Multimediefiler finns överallt, och att kunna **read mkv metadata java** är avgörande för mediahantering, katalogisering och analys. I den här handledningen får du reda på varför det är viktigt att extrahera metadata från Matroska‑behållare, hur du konfigurerar GroupDocs.Metadata och steg‑för‑steg‑kod för att hämta EBML‑huvuden, segmentinformation, taggar och spårdata. Oavsett om du bygger en videokatalog, validerar kodningsparametrar eller genererar miniatyrbilder automatiskt, ger den här guiden dig allt du behöver. +I den här omfattande guiden kommer du att lära dig **hur man extraherar mkv-metadata i Java** med hjälp av GroupDocs.Metadata‑biblioteket. Oavsett om du bygger ett mediakatalog, validerar kodningsparametrar eller automatiserar miniatyrgenerering, sparar programmatisk läsning av Matroska (MKV)‑metadata otaliga manuella timmar. Vi går igenom varför, förutsättningarna, de exakta installationsstegen och detaljerade kodexempel som visar EBML‑huvuden, segmentinformation, taggar och spårdata. ## Snabba svar -- **Vad betyder “read mkv metadata java”?** Det är processen att programatiskt läsa metadata från MKV‑filer med Java. -- **Vilket bibliotek ska jag använda?** GroupDocs.Metadata för Java erbjuder ett omfattande API för Matroska‑filer. -- **Behöver jag en licens?** En gratis provversion fungerar för utvärdering; en licens tar bort användningsbegränsningar. -- **Kan jag läsa andra format?** Ja, samma bibliotek stödjer MP4, AVI, MP3 och många fler. -- **Krävs internetuppkoppling vid körning?** Nej, all extraktion sker lokalt efter att biblioteket lagts till i ditt projekt. +- **Vad betyder “read mkv metadata java”?** Det är den programmatisk extraktionen av Matroska‑behållarmetadata (titlar, codecs, varaktigheter osv.) från MKV‑filer med Java. +- **Vilket bibliotek ska jag använda?** GroupDocs.Metadata för Java erbjuder ett fullständigt, högpresterande API för Matroska och 50+ andra format. +- **Behöver jag en licens?** En gratis provversion fungerar för utvärdering; en kommersiell licens tar bort alla provbegränsningar. +- **Kan jag läsa andra format?** Ja – samma API läser MP4, AVI, MOV, MP3 och många fler behållare. +- **Krävs internetåtkomst vid körning?** Nej – all extraktion sker lokalt efter att JAR‑filen finns på din classpath. ## Vad är Matroska (MKV) metadata? -Matroska är ett öppet, flexibelt behållarformat. Dess metadata inkluderar EBML‑huvudet (filversion, dokumenttyp), segmentdetaljer (längd, mux‑applikation), taggar (titlar, beskrivningar) och spårspecifikationer (audio/video‑codecs, språk). Att komma åt dessa data låter dig bygga mediakataloger, verifiera filintegritet eller generera miniatyrbilder automatiskt. -## Varför läsa mkv metadata java? -- **Automation** – Hämta detaljer automatiskt för stora videobibliotek. -- **Kvalitetskontroll** – Validera codec‑ID:n, längder och spårspråk innan publicering. -- **Sök & upptäckt** – Fyll sökbara databaser med titlar, språk och tidsstämplar. -- **Konsistens över format** – Använd samma kodbas för att extrahera video‑metadata java från andra behållare (MP4, AVI, osv.). +Matroska (MKV)‑metadata är samlingen av strukturell och beskrivande information som lagras i en Matroska‑behållare, inklusive EBML‑huvudet (filversion och dokumenttyp), segmentdetaljer (varaktighet, mux‑applikation), användardefinierade taggar (titlar, beskrivningar) och spårspecifikationer (audio/video‑codec‑ID, språk, bitrate). Att komma åt dessa data gör det möjligt att bygga sökbara kataloger, verifiera filintegritet eller driva automatiserade arbetsflöden som miniatyrgenerering. + +## Varför läsa mkv-metadata i Java? + +Att läsa MKV‑metadata från Java låter dig **automatisera** katalogisering av tusentals videofiler, **validera** codec‑ och språkkrav innan publicering, och **fylla** sökbara databaser med titlar, varaktigheter och spårspråk. Det ger också en **enkel kodbas** för att extrahera videometadata från flera behållare, vilket minskar underhållsbelastning och säkerställer konsekventa kvalitetskontroller i din mediapipeline. ## Varför använda GroupDocs.Metadata för Java? -- **Fullt utrustat API** – Hanterar EBML, segment, taggar och spår utan låg‑nivå‑parsing. -- **Prestandaoptimerat** – Fungerar effektivt även med multi‑gigabyte‑filer. -- **Stöd för flera format** – Samma kodmönster gäller för många audio/video‑behållare. -- **Enkel Maven‑integration** – Lägg till ett enda beroende och börja extrahera. + +GroupDocs.Metadata för Java är ett moget bibliotek som stödjer **50+ in‑ och utdataformat**, inklusive Matroska, MP4, AVI och MOV. Det strömmar behållarstrukturer, så minnesförbrukningen förblir låg även för fler‑gigabyte‑filer. API‑et abstraherar låg‑nivå EBML‑parsning, så du kan fokusera på affärslogik. Integration är så enkelt som att lägga till ett Maven‑beroende, och biblioteket uppdateras kontinuerligt för att hantera de senaste codec‑specifikationerna. ## Förutsättningar -- **GroupDocs.Metadata för Java** version 24.12 eller senare. -- Java Development Kit (JDK) installerat. -- Maven (eller manuell JAR‑hantering). -- En MKV‑fil att experimentera med (placera den i `YOUR_DOCUMENT_DIRECTORY`). +- **GroupDocs.Metadata för Java** version 24.12 eller senare. +- Java Development Kit (JDK) 8 eller nyare installerat. +- Maven (eller manuell JAR‑hantering) för att hantera beroenden. +- En MKV‑fil för testning, placerad i en mapp du kan referera till från din kod (t.ex. `YOUR_DOCUMENT_DIRECTORY`). + +## Konfigurera GroupDocs.Metadata för Java -## Installera GroupDocs.Metadata för Java -Lägg till biblioteket i ditt projekt med Maven eller ladda ner JAR‑filen direkt. +GroupDocs.Metadata för Java är ett bibliotek som möjliggör läsning av metadata från över 50 filformat, inklusive Matroska (MKV). Lägg till det i ditt projekt med Maven eller ladda ner JAR‑filen manuellt. **Maven:** ```xml @@ -66,14 +100,16 @@ Lägg till biblioteket i ditt projekt med Maven eller ladda ner JAR‑filen dire ``` -**Direkt nedladdning:** -Om du föredrar att inte använda Maven, ladda ner den senaste versionen från [GroupDocs.Metadata for Java releases](https://releases.groupdocs.com/metadata/java/). +**Direct download:** +If you prefer not using Maven, download the latest version from [GroupDocs.Metadata for Java releases](https://releases.groupdocs.com/metadata/java/). -### Licensanskaffning -Börja med en gratis provperiod för att utforska funktionerna. För produktionsbruk, köp en licens eller skaffa en tillfällig licens från [GroupDocs](https://purchase.groupdocs.com/temporary-license/) för att ta bort provbegränsningarna. +### Licensförvärv + +Starta med en gratis provperiod för att utforska funktionerna. För produktionsbruk, köp en licens eller skaffa en tillfällig licens från [GroupDocs](https://purchase.groupdocs.com/temporary-license/) för att ta bort provbegränsningar. ### Grundläggande initiering och konfiguration -Nedan är den minsta koden som behövs för att öppna en MKV‑fil med GroupDocs.Metadata. + +Below is the minimal code needed to open an MKV file with GroupDocs.Metadata. ```java import com.groupdocs.metadata.Metadata; @@ -90,10 +126,14 @@ public class MetadataExtraction { ``` ## Hur man läser mkv metadata java med GroupDocs.Metadata -Nu går vi igenom varje metadata‑område du kan läsa. + +`Metadata` är huvudklassen som representerar en MKV‑fil och ger åtkomst till dess metadata. +Läs in din MKV‑fil med `new Metadata("path/to/file.mkv")` och anropa de lämpliga getters – `getRootPackageGeneric()`, `getSegments()`, `getTags()`, och `getTracks()` – för att hämta varje metadata‑sektion. Denna enkla kedja ger dig full insyn i EBML‑huvudet, segmentinformation, användartaggar och individuella spårdetaljer utan att skriva någon låg‑nivå parslogik. ### Läsa Matroska EBML‑huvud -EBML‑huvudet lagrar grundläggande filinformation såsom version och dokumenttyp. + +EBML‑huvudet lagrar grundläggande filinformation såsom version, dokumenttyp och filstorlek. +`getRootPackageGeneric()` returnerar EBML‑huvudpaketet för den öppnade filen. ```java import com.groupdocs.metadata.Metadata; @@ -117,11 +157,13 @@ public class ReadMatroskaEBMLHeader { ``` **Viktiga punkter** -- `getRootPackageGeneric()` ger dig Matroska‑paketets ingångspunkt. -- EBML‑egenskaper (`docType`, `version`, osv.) hjälper dig att verifiera filkompatibilitet. +- `getRootPackageGeneric()` returnerar Matroska‑paketets ingångspunkt. +- EBML‑egenskaper (`docType`, `version`, osv.) låter dig verifiera filkompatibilitet innan djupare bearbetning. ### Läsa Matroska segmentinformation -Segment beskriver den övergripande mediatidslinjen och skapandeverktyg. + +Segment beskriver den övergripande mediatidslinjen, skapandeverktyg och valfri titelinformation. +`getSegments()` hämtar en samling segmentobjekt som innehåller varaktighet och skapandedetaljer. ```java import com.groupdocs.metadata.Metadata; @@ -150,11 +192,13 @@ public class ReadMatroskaSegmentInformation { ``` **Viktiga punkter** -- `getSegments()` returnerar en samling; varje segment kan ha sin egen titel, längd och information om skapandeapplikation. -- Användbart för att bygga spellistor eller validera kodningsparametrar. +- `getSegments()` returnerar en samling; varje segment kan ha sin egen titel, varaktighet och skapande‑app‑detaljer. +- Denna data är användbar för att bygga spellistor eller validera kodningsparametrar över en batch av filer. + +### Läsa Matroska taggmetadata -### Läsa Matroska tagg‑metadata -Taggar lagrar mänskligt läsbar information som titlar, artister eller anpassade anteckningar. +Taggar lagrar mänskligt läsbar information som titlar, artister eller anpassade anteckningar. +`getTags()` returnerar listan med taggposter som är associerade med filen. ```java import com.groupdocs.metadata.Metadata; @@ -187,8 +231,10 @@ public class ReadMatroskaTagMetadata { - Taggar organiseras efter `targetType` (t.ex. `movie`, `track`). - `simpleTag`‑poster innehåller nyckel/värde‑par såsom `TITLE=My Video`. -### Läsa Matroska spår‑metadata -Spår representerar individuella audio‑, video‑ eller undertextströmmar. +### Läsa Matroska spårmetadata + +Spår representerar individuella audio-, video‑ eller undertextströmmar i behållaren. +`getTracks()` ger åtkomst till varje spårs tekniska specifikationer. ```java import com.groupdocs.metadata.Metadata; @@ -213,45 +259,50 @@ public class ReadMatroskaTrackMetadata { ``` **Viktiga punkter** -- `track.getType()` visar om det är video, audio eller undertexter. -- `codecId` låter dig identifiera codec‑en (t.ex. `V_MPEG4/ISO/AVC`). -- Dessa data är väsentliga för transkodningspipelines eller kvalitetskontroller. +- `track.getType()` talar om för dig om strömmen är video, audio eller undertexter. +- `codecId` identifierar codec‑en (t.ex. `V_MPEG4/ISO/AVC`). +- Denna information är avgörande för transkodningspipelines, kvalitetskontroller och dynamiska streaming‑beslut. ## Vanliga användningsfall för att läsa mkv metadata java -- **Mediakataloger** – Fyll databastabeller med titlar, längder och språkkoder. -- **Automatiserad QC** – Verifiera att varje fil innehåller nödvändiga taggar innan publicering. -- **Dynamisk streaming** – Välj rätt audio‑/undertextspår baserat på användarens preferenser. -- **Innehållsmigrering** – Extrahera metadata en gång, och injicera den i ett nytt lagringssystem. + +- **Media catalogs** – Fyll databastabeller med titlar, varaktigheter och språkkoder för snabb sökning. +- **Automated quality control** – Verifiera att varje fil innehåller obligatoriska taggar och följer codec‑standarder innan release. +- **Dynamic streaming** – Välj rätt audio‑ eller undertextspår baserat på användarpreferenser vid körning. +- **Content migration** – Extrahera metadata en gång, och injicera den sedan i ett nytt lagringssystem eller content‑delivery‑nätverk. ## Vanliga problem & felsökning -| Symptom | Trolig orsak | Åtgärd | + +| Symptom | Liklig orsak | Åtgärd | |---------|--------------|-----| -| `NullPointerException` när `getEbmlHeader()` anropas | Fel filväg eller filen saknas | Kontrollera sökvägen i `new Metadata("...")` och säkerställ att filen finns. | -| Inga taggar returneras | MKV‑filen saknar taggelement | Använd en mediefil som innehåller metadata‑taggar (t.ex. tillagda via MKVToolNix). | -| Långsam bearbetning på stora filer | Otillräckligt heap‑minne | Öka JVM‑heap (`-Xmx2g` eller högre) eller bearbeta filen i delar om möjligt. | +| `NullPointerException` when accessing `getEbmlHeader()` | Filväg felaktig eller filen hittas inte | Verifiera sökvägen i `new Metadata("...")` och säkerställ att filen finns på disken. | +| No tags returned | MKV‑fil saknar taggelement | Använd en mediFil som innehåller metadata‑taggar (t.ex. tillagda via MKVToolNix). | +| Slow processing on large files | Otillräckligt heap‑minne | Öka JVM‑heap (`-Xmx2g` eller högre) eller bearbeta filen i delar om möjligt. | ## Vanliga frågor **Q: Kan jag extrahera metadata från andra videoformat med samma bibliotek?** -A: Ja, GroupDocs.Metadata stödjer MP4, AVI, MOV och många fler. API‑mönstret är liknande – använd bara rätt rotpaket‑klass. +A: Ja, GroupDocs.Metadata stödjer MP4, AVI, MOV och många fler. API‑mönstret är identiskt – använd bara rätt rotpaket‑klass för formatet. **Q: Krävs en licens för produktionsbruk?** -A: En licens tar bort provbegränsningarna och ger full funktionalitet. Biblioteket fungerar i provläge för utvärdering. +A: En kommersiell licens tar bort provbegränsningar och låser upp full funktionalitet. Biblioteket fungerar i provläge för utvärderingsändamål. **Q: Görs extraktionen offline?** -A: Absolut. När JAR‑filen ligger på din classpath utförs alla metadata‑läsningar lokalt utan nätverksanrop. +A: Absolut. När JAR‑filen är på din classpath utförs alla metadata‑läsningar lokalt utan nätverksanrop. -**Q: Hur presterar detta på mycket stora MKV‑filer (flera GB)?** -A: Biblioteket strömmar behållarstrukturen, så minnesanvändningen förblir måttlig, men se till att din JVM har tillräckligt heap för eventuella stora tagg‑samlingar. +**Q: Hur presterar biblioteket på mycket stora MKV‑filer (flera GB)?** +A: Biblioteket strömmar behållarstrukturen, vilket håller minnesanvändningen modest. Säkerställ att din JVM har tillräckligt heap för stora tagg‑samlingar, och överväg att öka `-Xmx` om du bearbetar extremt stora filer. **Q: Kan jag modifiera metadata och skriva tillbaka till filen?** -A: GroupDocs.Metadata fokuserar främst på läsning. Skrivfunktioner är begränsade; kontrollera den senaste API‑dokumentationen för eventuell skrivstöd. - -## Slutsats -Du har nu en komplett, produktionsklar guide för **read mkv metadata java** med GroupDocs.Metadata. Genom att utnyttja EBML‑huvuden, segmentinfo, taggar och spårdetaljer kan du driva mediakataloger, automatisera kvalitetskontroller eller berika videostreamingtjänster. Experimentera med kodsnuttarna, anpassa dem till dina arbetsflöden och utforska bibliotekets bredare formatstöd för ännu fler möjligheter. +A: GroupDocs.Metadata fokuserar främst på läsning. Skrivstöd är begränsat; se den senaste API‑dokumentationen för eventuella skriv‑till‑bakåtfunktioner. --- -**Senast uppdaterad:** 2026-02-21 -**Testad med:** GroupDocs.Metadata 24.12 för Java -**Författare:** GroupDocs \ No newline at end of file +**Last Updated:** 2026-09-02 +**Tested With:** GroupDocs.Metadata 24.12 for Java +**Author:** GroupDocs + +## Relaterade handledningar + +- [Hur man batch-extraherar mkv-undertexter med Java och GroupDocs.Metadata](/metadata/java/audio-video-formats/extract-subtitles-mkv-files-java-groupdocs-metadata/) +- [Extrahera videometadata java med GroupDocs.Metadata](/metadata/java/audio-video-formats/mastering-avi-metadata-handling-groupdocs-java/) +- [Hur man extraherar FLV-metadata Java med GroupDocs.Metadata](/metadata/java/audio-video-formats/flv-metadata-extraction-groupdocs-java/) \ No newline at end of file diff --git a/content/thai/java/audio-video-formats/extract-matroska-metadata-groupdocs-java/_index.md b/content/thai/java/audio-video-formats/extract-matroska-metadata-groupdocs-java/_index.md index 1183d301f..8d387be84 100644 --- a/content/thai/java/audio-video-formats/extract-matroska-metadata-groupdocs-java/_index.md +++ b/content/thai/java/audio-video-formats/extract-matroska-metadata-groupdocs-java/_index.md @@ -1,57 +1,82 @@ --- -date: '2026-02-21' -description: เรียนรู้วิธีอ่านข้อมูลเมตา MKV ด้วย Java โดยใช้ GroupDocs.Metadata, ดึงข้อมูลเมตาวิดีโอด้วย - Java, และจัดการส่วนหัว EBML, แท็กและแทร็ก. +date: '2026-09-02' +description: เรียนรู้วิธีดึงข้อมูลเมตาดาต้า mkv ใน Java ด้วย GroupDocs.Metadata ครอบคลุม + EBML headers, tags, tracks, และกรณีการใช้งานจริง keywords: -- extract mkv metadata java -- groupdocs.metadata java -- read matroska file -title: อ่านข้อมูลเมตาดาต้า MKV ด้วย Java และ GroupDocs.Metadata – คู่มือครบถ้วน +- how to extract mkv +- groupdocs metadata java +- extract video metadata java +lastmod: '2026-09-02' +og_description: วิธีดึงข้อมูลเมตาดาต้า mkv ใน Java ด้วย GroupDocs.Metadata รับคำแนะนำแบบขั้นตอนต่อขั้นตอน + คำตอบเร็ว ๆ และตัวอย่างจากโลกจริงสำหรับ video cataloguing +og_image_alt: Guide showing Java code extracting Matroska (MKV) metadata with GroupDocs.Metadata +og_title: วิธีดึงข้อมูลเมตาดาต้า mkv ใน Java ด้วย GroupDocs.Metadata +schemas: +- author: GroupDocs + dateModified: '2026-09-02' + description: Learn how to extract mkv metadata in Java using GroupDocs.Metadata, + covering EBML headers, tags, tracks, and practical use cases. + headline: How to extract mkv metadata in Java with GroupDocs.Metadata + type: TechArticle +- questions: + - answer: Yes, GroupDocs.Metadata supports MP4, AVI, MOV, and many more. The API + pattern is identical – just use the appropriate root package class for the format. + question: Can I extract metadata from other video formats with the same library? + - answer: A commercial license removes trial limits and unlocks full functionality. + The library works in trial mode for evaluation purposes. + question: Is a license required for production use? + - answer: Absolutely. Once the JAR is on your classpath, all metadata reads are + performed locally without any network calls. + question: Does the extraction happen offline? + - answer: The library streams the container structure, keeping memory usage modest. + Ensure your JVM has enough heap for any large tag collections, and consider + increasing `-Xmx` if you process extremely large files. + question: How does the library perform on very large MKV files (several GB)? + - answer: GroupDocs.Metadata primarily focuses on reading. Write support is limited; + refer to the latest API documentation for any write‑back capabilities. + question: Can I modify the metadata and write it back to the file? + type: FAQPage +tags: +- extract mkv +- groupdocs metadata +- java video processing +- matroska metadata +- metadata extraction +title: วิธีดึงข้อมูลเมตาดาต้า mkv ใน Java ด้วย GroupDocs.Metadata type: docs url: /th/java/audio-video-formats/extract-matroska-metadata-groupdocs-java/ weight: 1 --- -ียน:**". Keep dates unchanged. +# วิธีการดึงข้อมูลเมตาดาต้า mkv ใน Java ด้วย GroupDocs.Metadata -Now produce final markdown with translations. +ในคู่มือฉบับครอบคลุมนี้คุณจะได้เรียนรู้ **วิธีการดึงข้อมูลเมตาดาต้า mkv ใน Java** ด้วยไลบรารี GroupDocs.Metadata ไม่ว่าคุณจะกำลังสร้างแคตาล็อกสื่อ, ตรวจสอบพารามิเตอร์การเข้ารหัส, หรือทำการสร้าง thumbnail อัตโนมัติ การอ่านเมตาดาต้า Matroska (MKV) อย่างโปรแกรมมิ่งจะช่วยประหยัดเวลามนุษย์เป็นจำนวนมาก เราจะอธิบายเหตุผล, ข้อกำหนดเบื้องต้น, ขั้นตอนการตั้งค่าอย่างละเอียด, และโค้ดตัวอย่างที่เปิดเผยหัวข้อ EBML, ข้อมูลเซกเมนต์, แท็ก, และข้อมูลแทร็ก -Make sure to keep code block placeholders unchanged. +## คำตอบสั้น +- **What does “read mkv metadata java” mean?** มันคือการสกัดข้อมูลเมตาดาต้า Matroska (ชื่อเรื่อง, codec, ระยะเวลา ฯลฯ) จากไฟล์ MKV โดยใช้ Java อย่างโปรแกรมมิ่ง +- **Which library should I use?** GroupDocs.Metadata for Java ให้ API ที่ครบถ้วนและประสิทธิภาพสูงสำหรับ Matroska และรูปแบบอื่นกว่า 50 รูปแบบ +- **Do I need a license?** การทดลองใช้ฟรีทำงานสำหรับการประเมิน; ใบอนุญาตเชิงพาณิชย์จะลบข้อจำกัดของการทดลองทั้งหมด +- **Can I read other formats?** ได้ – API เดียวกันสามารถอ่าน MP4, AVI, MOV, MP3 และคอนเทนเนอร์อื่น ๆ อีกมาก +- **Is internet access required at runtime?** ไม่ – การสกัดทั้งหมดทำงานในเครื่องหลังจากที่ JAR อยู่ใน classpath ของคุณ -Let's construct final answer.# อ่านเมตาดาต้า MKV ด้วย Java และ GroupDocs.Metadata - -ไฟล์มัลติมีเดียมีอยู่ทั่วไปและการสามารถ **read mkv metadata java** มีความสำคัญสำหรับการจัดการสื่อ การทำแคตาล็อก และการวิเคราะห์ ในบทแนะนำนี้คุณจะได้ค้นพบว่าทำไมการสกัดเมตาดาต้าจากคอนเทนเนอร์ Matroska ถึงสำคัญ วิธีตั้งค่า GroupDocs.Metadata และโค้ดขั้นตอนต่อขั้นตอนสำหรับดึงหัวข้อ EBML, ข้อมูลเซกเมนต์, แท็ก, และข้อมูลแทร็ก ไม่ว่าคุณจะสร้างแคตาล็อกวิดีโอ ตรวจสอบพารามิเตอร์การเข้ารหัส หรือสร้างภาพย่อโดยอัตโนมัติ คู่มือนี้ให้ทุกอย่างที่คุณต้องการ - -## คำตอบด่วน -- **“read mkv metadata java” หมายถึงอะไร?** เป็นกระบวนการอ่านเมตาดาต้าจากไฟล์ MKV โดยใช้ Java อย่างโปรแกรมมิ่ง -- **ควรใช้ไลบรารีใด?** GroupDocs.Metadata for Java มี API ครบวงจรสำหรับไฟล์ Matroska -- **ต้องการไลเซนส์หรือไม่?** การทดลองใช้ฟรีเพียงพอสำหรับการประเมิน; ไลเซนส์จะลบข้อจำกัดการใช้งาน -- **สามารถอ่านฟอร์แมตอื่นได้หรือไม่?** ได้, ไลบรารีเดียวกันสนับสนุน MP4, AVI, MP3 และอื่น ๆ อีกมาก -- **ต้องการการเชื่อมต่ออินเทอร์เน็ตขณะรันหรือไม่?** ไม่, การสกัดทั้งหมดทำในเครื่องหลังจากเพิ่มไลบรารีเข้าในโปรเจคของคุณ - -## Matroska (MKV) Metadata คืออะไร? -Matroska เป็นรูปแบบคอนเทนเนอร์แบบเปิดและยืดหยุ่น เมตาดาต้าของมันรวมถึงหัวข้อ EBML (เวอร์ชันไฟล์, ประเภทเอกสาร), รายละเอียดเซกเมนต์ (ระยะเวลา, แอปพลิเคชันการมิกซ์), แท็ก (ชื่อ, คำอธิบาย), และสเปคของแทร็ก (โค้ดเอ็กเสียง/วิดีโอ, ภาษา) การเข้าถึงข้อมูลนี้ทำให้คุณสร้างแคตาล็อกสื่อ, ตรวจสอบความสมบูรณ์ของไฟล์, หรือสร้างภาพย่อโดยอัตโนมัติ +## Matroska (MKV) เมตาดาต้าคืออะไร? +Matroska (MKV) เมตาดาต้าคือการรวบรวมข้อมูลเชิงโครงสร้างและคำอธิบายที่เก็บอยู่ภายในคอนเทนเนอร์ Matroska รวมถึงหัวข้อ EBML (เวอร์ชันไฟล์และประเภทเอกสาร), รายละเอียดเซกเมนต์ (ระยะเวลา, แอปพลิเคชันที่ทำการมักซ์), แท็กที่ผู้ใช้กำหนด (ชื่อเรื่อง, คำอธิบาย), และสเปคของแทร็ก (ID codec ของเสียง/วิดีโอ, ภาษา, bitrate) การเข้าถึงข้อมูลเหล่านี้ทำให้คุณสร้างแคตาล็อกที่ค้นหาได้, ตรวจสอบความสมบูรณ์ของไฟล์, หรือขับเคลื่อนเวิร์กโฟลว์อัตโนมัติเช่นการสร้าง thumbnail ## ทำไมต้องอ่าน mkv metadata java? -- **Automation** – ดึงรายละเอียดโดยอัตโนมัติสำหรับไลบรารีวิดีโอขนาดใหญ่. -- **Quality control** – ตรวจสอบ codec IDs, ระยะเวลา, และภาษาของแทร็กก่อนเผยแพร่. -- **Search & discovery** – เติมฐานข้อมูลที่ค้นหาได้ด้วยชื่อ, ภาษา, และเวลา. -- **Cross‑format consistency** – ใช้โค้ดฐานเดียวกันเพื่อสกัด video metadata java จากคอนเทนเนอร์อื่น (MP4, AVI, ฯลฯ). +การอ่านเมตาดาต้า MKV จาก Java ช่วยให้คุณ **อัตโนมัติ** การจัดทำแคตาล็อกของไฟล์วิดีโอนับพัน, **ตรวจสอบ** ความต้องการของ codec และภาษา ก่อนการเผยแพร่, และ **เติมข้อมูล** ฐานข้อมูลที่ค้นหาได้ด้วยชื่อเรื่อง, ระยะเวลา, และภาษาของแทร็ก นอกจากนี้ยังให้ **โค้ดเบสเดียว** สำหรับการสกัดเมตาดาต้าวิดีโอจากหลายคอนเทนเนอร์ ลดภาระการบำรุงรักษาและทำให้การตรวจสอบคุณภาพสอดคล้องกันทั่วทั้งสายงานสื่อของคุณ -## ทำไมต้องใช้ GroupDocs.Metadata สำหรับ Java? -- **Full‑featured API** – จัดการ EBML, เซกเมนต์, แท็ก, และแทร็กโดยไม่ต้องพาร์สระดับต่ำ. -- **Performance‑optimized** – ทำงานอย่างมีประสิทธิภาพแม้กับไฟล์หลายกิกะไบต์. -- **Cross‑format support** – รูปแบบโค้ดเดียวกันใช้ได้กับคอนเทนเนอร์เสียง/วิดีโอหลายประเภท. -- **Simple Maven integration** – เพิ่ม dependency เพียงหนึ่งรายการและเริ่มสกัดข้อมูล. +## ทำไมต้องใช้ GroupDocs.Metadata for Java? +GroupDocs.Metadata for Java เป็นไลบรารีที่เจริญเติบโตและรองรับ **50+ รูปแบบการเข้าและออก**, รวมถึง Matroska, MP4, AVI, และ MOV มันสตรีมโครงสร้างคอนเทนเนอร์ ทำให้การใช้หน่วยความจำต่ำแม้ไฟล์หลายกิกะไบต์ API แยกการพาร์ส EBML ระดับต่ำออกไป ทำให้คุณโฟกัสที่โลจิกธุรกิจ การรวมเข้ากับโปรเจกต์ง่ายเพียงเพิ่ม dependency ของ Maven หนึ่งรายการ และไลบรารีจะอัปเดตอย่างต่อเนื่องเพื่อรองรับสเปค codec ล่าสุด ## ข้อกำหนดเบื้องต้น -- **GroupDocs.Metadata for Java** เวอร์ชัน 24.12 หรือใหม่กว่า. -- Java Development Kit (JDK) ติดตั้งแล้ว. -- Maven (หรือการจัดการ JAR ด้วยตนเอง). -- ไฟล์ MKV สำหรับทดลอง (วางไว้ใน `YOUR_DOCUMENT_DIRECTORY`). +- **GroupDocs.Metadata for Java** เวอร์ชัน 24.12 หรือใหม่กว่า +- Java Development Kit (JDK) 8 หรือใหม่กว่า ติดตั้งแล้ว +- Maven (หรือการจัดการ JAR ด้วยตนเอง) เพื่อจัดการ dependencies +- ไฟล์ MKV สำหรับทดสอบ, วางในโฟลเดอร์ที่คุณสามารถอ้างอิงจากโค้ดของคุณ (เช่น `YOUR_DOCUMENT_DIRECTORY`) + +## การตั้งค่า GroupDocs.Metadata for Java -## การตั้งค่า GroupDocs.Metadata สำหรับ Java -เพิ่มไลบรารีเข้าสู่โปรเจคของคุณโดยใช้ Maven หรือดาวน์โหลด JAR โดยตรง. +GroupDocs.Metadata for Java เป็นไลบรารีที่ทำให้คุณอ่านเมตาดาต้าจากไฟล์กว่า 50 รูปแบบ รวมถึง Matroska (MKV) เพิ่มเข้าไปในโปรเจกต์ของคุณด้วย Maven หรือดาวน์โหลด JAR ด้วยตนเอง **Maven:** ```xml @@ -72,14 +97,14 @@ Matroska เป็นรูปแบบคอนเทนเนอร์แบ ``` -**Direct Download:** -หากคุณไม่ต้องการใช้ Maven ให้ดาวน์โหลดเวอร์ชันล่าสุดจาก [GroupDocs.Metadata for Java releases](https://releases.groupdocs.com/metadata/java/). +**ดาวน์โหลดโดยตรง:** +If you prefer not using Maven, download the latest version from [GroupDocs.Metadata for Java releases](https://releases.groupdocs.com/metadata/java/). -### การรับไลเซนส์ -เริ่มต้นด้วยการทดลองใช้ฟรีเพื่อสำรวจฟีเจอร์ สำหรับการใช้งานในผลิตภัณฑ์ ให้ซื้อไลเซนส์หรือรับไลเซนส์ชั่วคราวจาก [GroupDocs](https://purchase.groupdocs.com/temporary-license/) เพื่อยกเลิกข้อจำกัดการทดลอง. +### การรับใบอนุญาต +เริ่มต้นด้วยการทดลองใช้ฟรีเพื่อสำรวจฟีเจอร์ สำหรับการใช้งานในผลิตภัณฑ์ ให้ซื้อใบอนุญาตหรือรับใบอนุญาตชั่วคราวจาก [GroupDocs](https://purchase.groupdocs.com/temporary-license/) เพื่อเอาข้อจำกัดของการทดลองออก -### การเริ่มต้นและตั้งค่าเบื้องต้น -ด้านล่างเป็นโค้ดขั้นต่ำที่จำเป็นสำหรับเปิดไฟล์ MKV ด้วย GroupDocs.Metadata. +### การเริ่มต้นและตั้งค่าพื้นฐาน +ด้านล่างเป็นโค้ดขั้นต่ำที่จำเป็นเพื่อเปิดไฟล์ MKV ด้วย GroupDocs.Metadata ```java import com.groupdocs.metadata.Metadata; @@ -95,11 +120,12 @@ public class MetadataExtraction { } ``` -## วิธีอ่าน mkv metadata java ด้วย GroupDocs.Metadata -ต่อไปเราจะเจาะลึกแต่ละส่วนของเมตาดาต้าที่คุณสามารถอ่านได้. +## วิธีการอ่าน mkv metadata java ด้วย GroupDocs.Metadata +`Metadata` เป็นคลาสหลักที่แทนไฟล์ MKV และให้การเข้าถึงเมตาดาต้าของมัน โหลดไฟล์ MKV ของคุณด้วย `new Metadata("path/to/file.mkv")` แล้วเรียก getter ที่เหมาะสม – `getRootPackageGeneric()`, `getSegments()`, `getTags()`, และ `getTracks()` – เพื่อดึงแต่ละส่วนของเมตาดาต้า โซ่เรียกเดียวนี้ให้คุณมองเห็นหัวข้อ EBML, ข้อมูลเซกเมนต์, แท็กผู้ใช้, และรายละเอียดแทร็กแต่ละอันโดยไม่ต้องเขียนโค้ดพาร์สระดับต่ำ -### การอ่าน Matroska EBML Header -หัวข้อ EBML เก็บข้อมูลหลักของไฟล์เช่นเวอร์ชันและประเภทเอกสาร. +### การอ่านหัวข้อ EBML ของ Matroska +หัวข้อ EBML เก็บข้อมูลพื้นฐานของไฟล์ เช่น เวอร์ชัน, ประเภทเอกสาร, และขนาดไฟล์ +`getRootPackageGeneric()` คืนค่า entry point ของแพ็กเกจ Matroska ```java import com.groupdocs.metadata.Metadata; @@ -122,12 +148,13 @@ public class ReadMatroskaEBMLHeader { } ``` -**จุดสำคัญ** -- `getRootPackageGeneric()` ให้จุดเริ่มต้นของแพ็กเกจ Matroska. -- คุณสมบัติ EBML (`docType`, `version`, ฯลฯ) ช่วยให้คุณตรวจสอบความเข้ากันของไฟล์. +**ประเด็นสำคัญ** +- `getRootPackageGeneric()` คืนค่า entry point ของแพ็กเกจ Matroska +- คุณสมบัติ EBML (`docType`, `version` ฯลฯ) ช่วยให้คุณตรวจสอบความเข้ากันของไฟล์ก่อนการประมวลผลขั้นลึก -### การอ่านข้อมูล Segment ของ Matroska -Segment อธิบายไทม์ไลน์สื่อโดยรวมและเครื่องมือการสร้าง. +### การอ่านข้อมูลส่วนของ Matroska +เซกเมนต์อธิบายไทม์ไลน์สื่อโดยรวม, เครื่องมือที่ใช้สร้าง, และข้อมูลชื่อเรื่องเสริม +`getSegments()` คืนค่าคอลเลกชัน; แต่ละ segment สามารถเก็บชื่อ, ระยะเวลา, และรายละเอียดแอปพลิเคชันที่สร้างได้ ```java import com.groupdocs.metadata.Metadata; @@ -155,12 +182,13 @@ public class ReadMatroskaSegmentInformation { } ``` -**จุดสำคัญ** -- `getSegments()` คืนค่าคอลเลกชัน; แต่ละ segment สามารถมีชื่อ, ระยะเวลา, และรายละเอียดแอปพลิเคชันที่สร้างได้. -- มีประโยชน์สำหรับสร้างเพลย์ลิสต์หรือการตรวจสอบพารามิเตอร์การเข้ารหัส. +**ประเด็นสำคัญ** +- `getSegments()` คืนค่าคอลเลกชัน; แต่ละ segment สามารถเก็บชื่อ, ระยะเวลา, และรายละเอียดแอปพลิเคชันที่สร้างได้ +- ข้อมูลนี้มีประโยชน์สำหรับการสร้างเพลย์ลิสต์หรือการตรวจสอบพารามิเตอร์การเข้ารหัสในชุดไฟล์หลายไฟล์ -### การอ่านเมตาดาต้า Tag ของ Matroska -Tag เก็บข้อมูลที่มนุษย์อ่านได้ เช่น ชื่อ, ศิลปิน, หรือโน้ตกำหนดเอง. +### การอ่านเมตาดาต้าแท็กของ Matroska +แท็กเก็บข้อมูลที่มนุษย์อ่านได้ เช่น ชื่อเรื่อง, ศิลปิน, หรือบันทึกกำหนดเอง +`getTags()` คืนค่ารายการแท็กที่เชื่อมโยงกับไฟล์ ```java import com.groupdocs.metadata.Metadata; @@ -189,12 +217,13 @@ public class ReadMatroskaTagMetadata { } ``` -**จุดสำคัญ** -- Tag ถูกจัดระเบียบตาม `targetType` (เช่น `movie`, `track`). -- รายการ `simpleTag` เก็บคู่คีย์/ค่า เช่น `TITLE=My Video`. +**ประเด็นสำคัญ** +- แท็กจะจัดระเบียบตาม `targetType` (เช่น `movie`, `track`) +- รายการ `simpleTag` เก็บคู่คีย์/ค่า เช่น `TITLE=My Video` -### การอ่านเมตาดาต้า Track ของ Matroska -Track แสดงถึงสตรีมเสียง, วิดีโอ หรือซับไตเติลแต่ละอัน. +### การอ่านเมตาดาต้าแทร็กของ Matroska +แทร็กเป็นสตรีมเสียง, วิดีโอ, หรือซับไตเติลแยกกันภายในคอนเทนเนอร์ +`getTracks()` ให้การเข้าถึงสเปคเทคนิคของแต่ละแทร็ก ```java import com.groupdocs.metadata.Metadata; @@ -218,46 +247,50 @@ public class ReadMatroskaTrackMetadata { } ``` -**จุดสำคัญ** -- `track.getType()` บอกว่ามันเป็นวิดีโอ, เสียง, หรือซับไตเติล. -- `codecId` ช่วยให้คุณระบุโค้ดเอ็ก (เช่น `V_MPEG4/ISO/AVC`). -- ข้อมูลนี้สำคัญสำหรับกระบวนการแปลงสัญญาณหรือการตรวจสอบคุณภาพ. +**ประเด็นสำคัญ** +- `track.getType()` บอกว่าสตรีมเป็นวิดีโอ, เสียง, หรือซับไตเติล +- `codecId` ระบุ codec (เช่น `V_MPEG4/ISO/AVC`) +- ข้อมูลนี้สำคัญสำหรับ pipeline การแปลงรูป, การตรวจสอบคุณภาพ, และการตัดสินใจสตรีมแบบไดนามิก ## กรณีการใช้งานทั่วไปสำหรับการอ่าน mkv metadata java -- **Media catalogues** – เติมตารางฐานข้อมูลด้วยชื่อ, ระยะเวลา, และรหัสภาษา. -- **Automated QC** – ตรวจสอบว่าไฟล์ทุกไฟล์มีแท็กที่ต้องการก่อนเผยแพร่. -- **Dynamic streaming** – เลือกแทร็กเสียง/ซับไตเติลที่เหมาะสมตามการตั้งค่าของผู้ใช้. -- **Content migration** – สกัดเมตาดาต้าแล้วนำเข้าไปยังระบบจัดเก็บใหม่. +- **แคตาล็อกสื่อ** – เติมตารางฐานข้อมูลด้วยชื่อ, ระยะเวลา, และรหัสภาษาเพื่อการค้นหาอย่างรวดเร็ว +- **การควบคุมคุณภาพอัตโนมัติ** – ตรวจสอบว่าไฟล์ทุกไฟล์มีแท็กที่จำเป็นและสอดคล้องกับมาตรฐาน codec ก่อนการปล่อย +- **สตรีมมิ่งแบบไดนามิก** – เลือกแทร็กเสียงหรือซับไตเติลที่เหมาะสมตามการตั้งค่าผู้ใช้ในขณะรันไทม์ +- **การย้ายเนื้อหา** – สกัดเมตาดาต้าแล้วนำเข้าไปยังระบบจัดเก็บใหม่หรือ CDN -## ปัญหาทั่วไปและการแก้ไข -| Symptom | Likely Cause | Fix | +## ปัญหาทั่วไป & การแก้ไขข้อผิดพลาด + +| อาการ | สาเหตุที่เป็นไปได้ | วิธีแก้ | |---------|--------------|-----| -| `NullPointerException` when accessing `getEbmlHeader()` | เส้นทางไฟล์ไม่ถูกต้องหรือไม่พบไฟล์ | ตรวจสอบเส้นทางใน `new Metadata("...")` และให้แน่ใจว่าไฟล์มีอยู่. | -| No tags returned | ไฟล์ MKV ไม่มีองค์ประกอบแท็ก | ใช้ไฟล์สื่อที่มีแท็กเมตาดาต้า (เช่นที่เพิ่มด้วย MKVToolNix). | -| Slow processing on large files | หน่วยความจำ heap ไม่เพียงพอ | เพิ่ม heap ของ JVM (`-Xmx2g` หรือมากกว่า) หรือประมวลผลไฟล์เป็นชิ้นส่วนหากเป็นไปได้. | +| `NullPointerException` เมื่อเข้าถึง `getEbmlHeader()` | เส้นทางไฟล์ไม่ถูกต้องหรือไฟล์ไม่พบ | ตรวจสอบเส้นทางใน `new Metadata("...")` และให้แน่ใจว่าไฟล์มีอยู่บนดิสก์ | +| ไม่มีแท็กที่คืนค่า | ไฟล์ MKV ขาดองค์ประกอบแท็ก | ใช้ไฟล์สื่อที่มีแท็กเมตาดาต้า (เช่น เพิ่มโดย MKVToolNix) | +| การประมวลผลช้าในไฟล์ขนาดใหญ่ | หน่วยความจำ heap ไม่เพียงพอ | เพิ่ม heap ของ JVM (`-Xmx2g` หรือสูงกว่า) หรือประมวลผลไฟล์เป็นชิ้นส่วนหากเป็นไปได้ | ## คำถามที่พบบ่อย -**Q: ฉันสามารถสกัดเมตาดาต้าจากฟอร์แมตวิดีโออื่นด้วยไลบรารีเดียวกันได้หรือไม่?** -A: ได้, GroupDocs.Metadata รองรับ MP4, AVI, MOV และอื่น ๆ อีกมากมาย รูปแบบ API คล้ายกัน—เพียงใช้คลาส root package ที่เหมาะสม. - -**Q: จำเป็นต้องมีไลเซนส์สำหรับการใช้งานในผลิตภัณฑ์หรือไม่?** -A: ไลเซนส์จะลบข้อจำกัดการทดลองและให้ฟังก์ชันเต็มไลบรารีทำงานในโหมดทดลองเพื่อการประเมิน. +**Q: Can I extract metadata from other video formats with the same library?** +A: Yes, GroupDocs.Metadata supports MP4, AVI, MOV, and many more. The API pattern is identical – just use the appropriate root package class for the format. -**Q: การสกัดทำงานแบบออฟไลน์หรือไม่?** -A: แน่นอน เมื่อติดตั้ง JAR บน classpath ของคุณ การอ่านเมตาดาต้าทั้งหมดจะทำในเครื่องโดยไม่ต้องเรียกใช้เครือข่าย. +**Q: Is a license required for production use?** +A: A commercial license removes trial limits and unlocks full functionality. The library works in trial mode for evaluation purposes. -**Q: ประสิทธิภาพเป็นอย่างไรกับไฟล์ MKV ขนาดใหญ่มาก (หลาย GB)?** -A: ไลบรารีสตรีมโครงสร้างคอนเทนเนอร์ ทำให้การใช้หน่วยความจำน้อยลง แต่ควรตรวจสอบว่า JVM มี heap เพียงพอสำหรับคอลเลกชันแท็กขนาดใหญ่. +**Q: Does the extraction happen offline?** +A: Absolutely. Once the JAR is on your classpath, all metadata reads are performed locally without any network calls. -**Q: ฉันสามารถแก้ไขเมตาดาต้าและเขียนกลับไปยังไฟล์ได้หรือไม่?** -A: GroupDocs.Metadata เน้นการอ่านเป็นหลัก ความสามารถในการเขียนจำกัด; ตรวจสอบเอกสาร API ล่าสุดเพื่อดูว่ามีการสนับสนุนการเขียนหรือไม่. +**Q: How does the library perform on very large MKV files (several GB)?** +A: The library streams the container structure, keeping memory usage modest. Ensure your JVM has enough heap for any large tag collections, and consider increasing `-Xmx` if you process extremely large files. -## สรุป -ตอนนี้คุณมีคู่มือครบถ้วนพร้อมใช้งานในผลิตภัณฑ์สำหรับ **read mkv metadata java** ด้วย GroupDocs.Metadata โดยการเข้าถึงหัวข้อ EBML, ข้อมูลเซกเมนต์, แท็ก, และรายละเอียดแทร็ก คุณสามารถเสริมพลังให้กับแคตาล็อกสื่อ, ทำการตรวจสอบคุณภาพอัตโนมัติ, หรือเพิ่มคุณค่าให้กับบริการสตรีมวิดีโอ ทดลองใช้โค้ดตัวอย่าง ปรับให้เข้ากับกระบวนการทำงานของคุณ และสำรวจการสนับสนุนฟอร์แมตที่กว้างขวางของไลบรารีเพื่อโอกาสที่มากขึ้น. +**Q: Can I modify the metadata and write it back to the file?** +A: GroupDocs.Metadata primarily focuses on reading. Write support is limited; refer to the latest API documentation for any write‑back capabilities. --- -**อัปเดตล่าสุด:** 2026-02-21 -**ทดสอบกับ:** GroupDocs.Metadata 24.12 for Java -**ผู้เขียน:** GroupDocs \ No newline at end of file +**อัปเดตล่าสุด:** 2026-09-02 +**ทดสอบด้วย:** GroupDocs.Metadata 24.12 for Java +**ผู้เขียน:** GroupDocs + +## บทแนะนำที่เกี่ยวข้อง + +- [วิธีการดึงซับไตเติล mkv เป็นชุดด้วย Java และ GroupDocs.Metadata](/metadata/java/audio-video-formats/extract-subtitles-mkv-files-java-groupdocs-metadata/) +- [สกัดเมตาดาต้าวิดีโอ java ด้วย GroupDocs.Metadata](/metadata/java/audio-video-formats/mastering-avi-metadata-handling-groupdocs-java/) +- [วิธีการสกัดเมตาดาต้า FLV Java ด้วย GroupDocs.Metadata](/metadata/java/audio-video-formats/flv-metadata-extraction-groupdocs-java/) \ No newline at end of file diff --git a/content/turkish/java/audio-video-formats/extract-matroska-metadata-groupdocs-java/_index.md b/content/turkish/java/audio-video-formats/extract-matroska-metadata-groupdocs-java/_index.md index d2b1d6d20..d5c5c262e 100644 --- a/content/turkish/java/audio-video-formats/extract-matroska-metadata-groupdocs-java/_index.md +++ b/content/turkish/java/audio-video-formats/extract-matroska-metadata-groupdocs-java/_index.md @@ -1,52 +1,86 @@ --- -date: '2026-02-21' -description: GroupDocs.Metadata kullanarak Java’da mkv meta verilerini nasıl okuyacağınızı, - video meta verilerini Java’da nasıl çıkaracağınızı ve EBML başlıklarını, etiketlerini - ve izlerini nasıl yöneteceğinizi öğrenin. +date: '2026-09-02' +description: GroupDocs.Metadata kullanarak Java'da mkv meta verilerini nasıl çıkaracağınızı + öğrenin; EBML başlıkları, etiketler, izler ve pratik kullanım örneklerini kapsar. keywords: -- extract mkv metadata java -- groupdocs.metadata java -- read matroska file -title: Java ile GroupDocs.Metadata kullanarak MKV Metaverisini Okuma – Tam Kılavuz +- how to extract mkv +- groupdocs metadata java +- extract video metadata java +lastmod: '2026-09-02' +og_description: Java'da GroupDocs.Metadata kullanarak mkv meta verilerini nasıl çıkaracağınız. + Adım adım rehberlik, hızlı cevaplar ve video kataloglaması için gerçek dünya örnekleri + alın. +og_image_alt: Guide showing Java code extracting Matroska (MKV) metadata with GroupDocs.Metadata +og_title: Java'da GroupDocs.Metadata ile mkv meta verilerini nasıl çıkarılır +schemas: +- author: GroupDocs + dateModified: '2026-09-02' + description: Learn how to extract mkv metadata in Java using GroupDocs.Metadata, + covering EBML headers, tags, tracks, and practical use cases. + headline: How to extract mkv metadata in Java with GroupDocs.Metadata + type: TechArticle +- questions: + - answer: Yes, GroupDocs.Metadata supports MP4, AVI, MOV, and many more. The API + pattern is identical – just use the appropriate root package class for the format. + question: Can I extract metadata from other video formats with the same library? + - answer: A commercial license removes trial limits and unlocks full functionality. + The library works in trial mode for evaluation purposes. + question: Is a license required for production use? + - answer: Absolutely. Once the JAR is on your classpath, all metadata reads are + performed locally without any network calls. + question: Does the extraction happen offline? + - answer: The library streams the container structure, keeping memory usage modest. + Ensure your JVM has enough heap for any large tag collections, and consider + increasing `-Xmx` if you process extremely large files. + question: How does the library perform on very large MKV files (several GB)? + - answer: GroupDocs.Metadata primarily focuses on reading. Write support is limited; + refer to the latest API documentation for any write‑back capabilities. + question: Can I modify the metadata and write it back to the file? + type: FAQPage +tags: +- extract mkv +- groupdocs metadata +- java video processing +- matroska metadata +- metadata extraction +title: Java'da GroupDocs.Metadata ile mkv meta verilerini nasıl çıkarılır type: docs url: /tr/java/audio-video-formats/extract-matroska-metadata-groupdocs-java/ weight: 1 --- -# GroupDocs.Metadata ile Java’da MKV Metadata Okuma +# Java ile GroupDocs.Metadata kullanarak mkv meta verilerini çıkarma -Multimedya dosyaları her yerde bulunur ve **read mkv metadata java** yapabilmek medya yönetimi, kataloglama ve analiz için esastır. Bu öğreticide Matroska kapsayıcılarından metadata çıkarmanın neden önemli olduğunu, GroupDocs.Metadata'ı nasıl kuracağınızı ve EBML başlıkları, segment bilgileri, etiketler ve iz verilerini çekmek için adım adım kodu keşfedeceksiniz. İster bir video kataloğu oluşturuyor, kodlama parametrelerini doğruluyor ya da otomatik olarak küçük resimler üretiyor olun, bu kılavuz ihtiyacınız olan her şeyi sunar. +Bu kapsamlı rehberde **Java'da mkv meta verilerini nasıl çıkarılır** konusunu GroupDocs.Metadata kütüphanesini kullanarak öğreneceksiniz. Medya kataloğu oluşturuyor, kodlama parametrelerini doğruluyor ya da küçük resim oluşturmayı otomatikleştiriyor olun, Matroska (MKV) meta verilerini programatik olarak okumak sayısız manuel saati tasarruf ettirir. Nedenlerini, önkoşulları, tam kurulum adımlarını ve EBML başlıklarını, segment bilgilerini, etiketleri ve iz (track) verilerini ortaya çıkaran ayrıntılı kod parçacıklarını adım adım inceleyeceğiz. -## Hızlı Yanıtlar -- **“read mkv metadata java” ne anlama geliyor?** Java kullanarak MKV dosyalarından programlı olarak metadata okuma sürecidir. -- **Hangi kütüphaneyi kullanmalıyım?** Java için GroupDocs.Metadata, Matroska dosyaları için kapsamlı bir API sağlar. -- **Bir lisansa ihtiyacım var mı?** Değerlendirme için ücretsiz deneme çalışır; bir lisans kullanım sınırlamalarını kaldırır. -- **Diğer formatları okuyabilir miyim?** Evet, aynı kütüphane MP4, AVI, MP3 ve daha birçok formatı destekler. -- **Çalışma zamanında internet erişimi gerekli mi?** Hayır, kütüphane projenize eklendikten sonra tüm çıkarma işlemleri yerel olarak gerçekleşir. +## Hızlı cevaplar +- **“read mkv metadata java” ne anlama geliyor?** Java kullanarak MKV dosyalarından Matroska konteyner meta verilerini (başlıklar, codec'ler, süreler vb.) programatik olarak çıkarmaktır. +- **Hangi kütüphaneyi kullanmalıyım?** GroupDocs.Metadata for Java, Matroska ve 50+ diğer format için tam özellikli, yüksek performanslı bir API sunar. +- **Lisans gerekir mi?** Değerlendirme için ücretsiz deneme çalışır; ticari bir lisans tüm deneme sınırlamalarını kaldırır. +- **Diğer formatları da okuyabilir miyim?** Evet – aynı API MP4, AVI, MOV, MP3 ve daha birçok konteyneri okur. +- **Çalışma zamanında internet erişimi gerekli mi?** Hayır – JAR sınıf yolunuzda olduğunda tüm çıkarma işlemleri yerel olarak gerçekleşir. -## Matroska (MKV) Metadata Nedir? -Matroska, açık ve esnek bir kapsayıcı formatıdır. Metadata'sı EBML başlığı (dosya sürümü, belge türü), segment detayları (süre, çoklama uygulaması), etiketler (başlıklar, açıklamalar) ve iz özelliklerini (ses/video codec'leri, dil) içerir. Bu verilere erişmek, medya katalogları oluşturmanıza, dosya bütünlüğünü doğrulamanıza veya otomatik olarak küçük resimler üretmenize olanak tanır. +## Matroska (MKV) meta verileri nedir? -## Neden mkv metadata java okunmalı? -- **Otomasyon** – Büyük video kütüphaneleri için detayları otomatik olarak çek. -- **Kalite kontrolü** – Yayınlamadan önce codec ID'lerini, süreleri ve iz dillerini doğrula. -- **Arama ve keşif** – Başlıklar, diller ve zaman damgalarıyla aranabilir veritabanları doldur. -- **Çapraz format tutarlılığı** – Diğer kapsayıcılardan (MP4, AVI vb.) video metadata java çıkarmak için aynı kod tabanını kullan. +Matroska (MKV) meta verileri, bir Matroska konteyneri içinde depolanan yapısal ve açıklayıcı bilgilerin koleksiyonudur; EBML başlığı (dosya sürümü ve belge türü), segment detayları (süre, muxing uygulaması), kullanıcı tanımlı etiketler (başlıklar, açıklamalar) ve iz (track) özellikleri (audio/video codec ID'leri, dil, bit hızı) gibi. Bu verilere erişmek, aranabilir kataloglar oluşturmanıza, dosya bütünlüğünü doğrulamanıza veya küçük resim oluşturma gibi otomatik iş akışlarını yönlendirmenize olanak tanır. -## Neden Java için GroupDocs.Metadata Kullanılmalı? -- **Tam özellikli API** – Düşük seviyeli ayrıştırma yapmadan EBML, segmentler, etiketler ve izleri yönetir. -- **Performans odaklı** – Çok gigabaytlık dosyalarda bile verimli çalışır. -- **Çapraz format desteği** – Aynı kod deseni birçok ses/video kapsayıcısına uygulanabilir. -- **Basit Maven entegrasyonu** – Tek bir bağımlılık ekleyin ve çıkarma işlemine başlayın. +## Neden Java ile mkv meta verilerini okuyalım? + +Java'dan MKV meta verilerini okumak, binlerce video dosyasının **otomatik** olarak kataloglanmasını, yayınlamadan önce codec ve dil gereksinimlerinin **doğrulanmasını** ve başlıklar, süreler ve iz dilleriyle **aranabilir** veri tabanlarının doldurulmasını sağlar. Ayrıca, birden çok konteynerden video meta verilerini çıkarmak için **tek bir kod tabanı** sunarak bakım yükünü azaltır ve medya hattınızda tutarlı kalite kontrolleri yapılmasını garantiler. + +## Neden GroupDocs.Metadata for Java kullanmalıyım? + +GroupDocs.Metadata for Java, Matroska, MP4, AVI ve MOV dahil **50+ giriş ve çıkış formatını** destekleyen olgun bir kütüphanedir. Kapsayıcı yapılarını akış (stream) olarak işler, bu sayede çok‑gigabayt dosyalarda bile bellek tüketimi düşük kalır. API, düşük seviyeli EBML ayrıştırmasını soyutlayarak iş mantığınıza odaklanmanızı sağlar. Entegrasyon, tek bir Maven bağımlılığı eklemek kadar basittir ve kütüphane en yeni codec spesifikasyonlarını karşılayacak şekilde sürekli güncellenir. ## Önkoşullar -- **GroupDocs.Metadata for Java** sürüm 24.12 veya üzeri. -- Java Development Kit (JDK) yüklü. -- Maven (veya manuel JAR yönetimi). -- Deneme amaçlı bir MKV dosyası (`YOUR_DOCUMENT_DIRECTORY` içine yerleştirin). +- **GroupDocs.Metadata for Java** sürüm 24.12 veya üzeri. +- Java Development Kit (JDK) 8 veya daha yeni bir sürüm yüklü. +- Bağımlılıkları yönetmek için Maven (veya manuel JAR yönetimi). +- Test amaçlı bir MKV dosyası, kodunuzdan referans verebileceğiniz bir klasörde bulunmalı (ör. `YOUR_DOCUMENT_DIRECTORY`). + +## GroupDocs.Metadata for Java kurulumu -## GroupDocs.Metadata for Java Kurulumu -Kütüphaneyi Maven kullanarak projenize ekleyin veya JAR dosyasını doğrudan indirin. +GroupDocs.Metadata for Java, Matroska (MKV) dahil 50'den fazla dosya formatından meta veri okumasını sağlayan bir kütüphanedir. Projenize Maven ile ekleyin veya JAR dosyasını manuel olarak indirin. **Maven:** ```xml @@ -67,13 +101,15 @@ Kütüphaneyi Maven kullanarak projenize ekleyin veya JAR dosyasını doğrudan ``` -**Doğrudan İndirme:** +**Doğrudan indirme:** Maven kullanmak istemiyorsanız, en son sürümü [GroupDocs.Metadata for Java releases](https://releases.groupdocs.com/metadata/java/) adresinden indirin. -### Lisans Edinme -Özellikleri keşfetmek için ücretsiz deneme ile başlayın. Üretim kullanımında bir lisans satın alın veya deneme sınırlamalarını kaldırmak için [GroupDocs](https://purchase.groupdocs.com/temporary-license/) üzerinden geçici bir lisans edinin. +### Lisans edinme + +Özellikleri keşfetmek için ücretsiz deneme ile başlayın. Üretim ortamı için bir lisans satın alın veya deneme sınırlamalarını kaldırmak amacıyla [GroupDocs](https://purchase.groupdocs.com/temporary-license/) üzerinden geçici bir lisans alın. + +### Temel başlatma ve kurulum -### Temel Başlatma ve Kurulum Aşağıda GroupDocs.Metadata ile bir MKV dosyasını açmak için gereken minimum kod yer almaktadır. ```java @@ -90,11 +126,14 @@ public class MetadataExtraction { } ``` -## GroupDocs.Metadata ile mkv metadata java Nasıl Okunur -Şimdi okuyabileceğiniz her bir metadata alanına derinlemesine bakacağız. +## GroupDocs.Metadata ile Java’da mkv meta verilerini nasıl okuyabilirim + +`Metadata` bir MKV dosyasını temsil eden ana sınıftır ve meta verilerine erişim sağlar. `new Metadata("path/to/file.mkv")` ile MKV dosyanızı yükleyin ve uygun getter'ları – `getRootPackageGeneric()`, `getSegments()`, `getTags()`, ve `getTracks()` – çağırarak her meta veri bölümünü alın. Bu tek zincir, düşük seviyeli ayrıştırma kodu yazmadan EBML başlığı, segment bilgileri, kullanıcı etiketleri ve bireysel iz detaylarına tam görünürlük kazandırır. -### Matroska EBML Başlığını Okuma -EBML başlığı, sürüm ve belge türü gibi temel dosya bilgilerini depolar. +### Matroska EBML başlığını okuma + +EBML başlığı, sürüm, belge türü ve dosya boyutu gibi temel dosya bilgilerini saklar. +`getRootPackageGeneric()` açılan dosyanın EBML başlık paketini döndürür. ```java import com.groupdocs.metadata.Metadata; @@ -117,12 +156,14 @@ public class ReadMatroskaEBMLHeader { } ``` -**Anahtar Noktalar** -- `getRootPackageGeneric()` size Matroska paketinin giriş noktasını verir. -- EBML özellikleri (`docType`, `version`, vb.) dosya uyumluluğunu doğrulamanıza yardımcı olur. +**Anahtar noktalar** +- `getRootPackageGeneric()` Matroska paketinin giriş noktasını döndürür. +- EBML özellikleri (`docType`, `version` vb.) daha derin işleme geçmeden dosya uyumluluğunu doğrulamanıza olanak tanır. + +### Matroska segment bilgilerini okuma -### Matroska Segment Bilgilerini Okuma -Segmentler, genel medya zaman çizelgesini ve oluşturma araçlarını tanımlar. +Segmentler, genel medya zaman çizelgesini, oluşturma araçlarını ve isteğe bağlı başlık bilgisini tanımlar. +`getSegments()` süre ve oluşturma detaylarını içeren segment nesneleri koleksiyonunu getirir. ```java import com.groupdocs.metadata.Metadata; @@ -150,12 +191,14 @@ public class ReadMatroskaSegmentInformation { } ``` -**Anahtar Noktalar** +**Anahtar noktalar** - `getSegments()` bir koleksiyon döndürür; her segment kendi başlığını, süresini ve oluşturma uygulaması detaylarını tutabilir. -- Çalma listeleri oluşturmak veya kodlama parametrelerini doğrulamak için faydalıdır. +- Bu veri, oynatma listeleri oluşturmak veya bir dosya topluluğu üzerindeki kodlama parametrelerini doğrulamak için faydalıdır. -### Matroska Etiket Metadata'sını Okuma -Etiketler, başlıklar, sanatçılar veya özel notlar gibi insan tarafından okunabilir bilgileri depolar. +### Matroska etiket meta verilerini okuma + +Etiketler, başlıklar, sanatçılar veya özel notlar gibi insan tarafından okunabilir bilgileri saklar. +`getTags()` dosyayla ilişkili etiket girişlerinin listesini döndürür. ```java import com.groupdocs.metadata.Metadata; @@ -184,12 +227,14 @@ public class ReadMatroskaTagMetadata { } ``` -**Anahtar Noktalar** +**Anahtar noktalar** - Etiketler `targetType` (ör. `movie`, `track`) ile düzenlenir. - `simpleTag` girişleri `TITLE=My Video` gibi anahtar/değer çiftlerini tutar. -### Matroska İz Metadata'sını Okuma -İzler, bireysel ses, video veya altyazı akışlarını temsil eder. +### Matroska iz (track) meta verilerini okuma + +İzler, konteyner içindeki ayrı audio, video veya altyazı akışlarını temsil eder. +`getTracks()` her bir izin teknik özelliklerine erişim sağlar. ```java import com.groupdocs.metadata.Metadata; @@ -213,46 +258,51 @@ public class ReadMatroskaTrackMetadata { } ``` -**Anahtar Noktalar** -- `track.getType()` izin video, ses veya altyazı olduğunu gösterir. -- `codecId` codec'i tanımlamanızı sağlar (ör. `V_MPEG4/ISO/AVC`). -- Bu veri, kod dönüştürme hatları veya kalite kontrolleri için esastır. +**Anahtar noktalar** +- `track.getType()` akışın video, audio veya altyazı olduğunu belirtir. +- `codecId` codec'i tanımlar (ör. `V_MPEG4/ISO/AVC`). +- Bu bilgi, kod dönüştürme hatları, kalite kontrolleri ve dinamik akış kararları için kritiktir. -## mkv metadata java Okumak İçin Yaygın Kullanım Durumları -- **Medya katalogları** – Başlıklar, süreler ve dil kodlarıyla veritabanı tablolarını doldur. -- **Otomatik QC** – Yayınlamadan önce her dosyanın gerekli etiketleri içerdiğini doğrula. -- **Dinamik akış** – Kullanıcı tercihine göre doğru ses/altyazı izini seç. -- **İçerik taşıma** – Metadata'yı bir kez çıkar, ardından yeni bir depolama sistemine enjekte et. +## Java’da mkv meta verilerini okuma için yaygın kullanım senaryoları -## Yaygın Sorunlar ve Sorun Giderme -| Belirti | Muhtemel Neden | Çözüm | -|---------|----------------|------| -| `NullPointerException` when accessing `getEbmlHeader()` | Dosya yolu hatalı veya dosya bulunamadı | `new Metadata("...")` içindeki yolu doğrulayın ve dosyanın mevcut olduğundan emin olun. | -| No tags returned | MKV dosyasında etiket öğeleri yok | Metadata etiketleri içeren bir medya dosyası kullanın (ör. MKVToolNix ile eklenmiş). | -| Slow processing on large files | Yetersiz yığın (heap) belleği | JVM yığınını artırın (`-Xmx2g` veya daha yüksek) veya mümkünse dosyayı parçalar halinde işleyin. | +- **Medya katalogları** – Hızlı arama için başlıklar, süreler ve dil kodlarıyla veritabanı tablolarını doldurun. +- **Otomatik kalite kontrol** – Her dosyanın gerekli etiketleri içerdiğini ve codec standartlarına uygun olduğunu yayın öncesi doğrulayın. +- **Dinamik akış** – Çalışma zamanında kullanıcı tercihine göre uygun audio veya altyazı izini seçin. +- **İçerik taşıma** – Meta verileri bir kez çıkarın, ardından yeni bir depolama sistemi veya içerik‑teslim ağına enjekte edin. -## Sıkça Sorulan Sorular +## Yaygın sorunlar ve çözüm yolları -**S: Aynı kütüphane ile diğer video formatlarından metadata çıkarabilir miyim?** -C: Evet, GroupDocs.Metadata MP4, AVI, MOV ve daha birçok formatı destekler. API deseni benzer—sadece uygun kök paket sınıfını kullanın. +| Semptom | Muhtemel neden | Çözüm | +|---------|----------------|-------| +| `NullPointerException` when accessing `getEbmlHeader()` | Dosya yolu hatalı veya dosya bulunamadı | `new Metadata("...")` içindeki yolu doğrulayın ve dosyanın diskte mevcut olduğundan emin olun. | +| No tags returned | MKV dosyasında etiket öğeleri yok | Meta veri etiketleri içeren bir medya dosyası kullanın (ör. MKVToolNix ile eklenmiş). | +| Slow processing on large files | Yetersiz heap belleği | JVM heap'ini artırın (`-Xmx2g` veya daha yüksek) veya mümkünse dosyayı parçalara bölerek işleyin. | -**S: Üretim kullanımında lisans gerekli mi?** -C: Lisans deneme sınırlamalarını kaldırır ve tam işlevsellik sağlar. Kütüphane değerlendirme için deneme modunda çalışır. +## Sıkça sorulan sorular -**S: Çıkarma işlemi çevrimdışı mı gerçekleşir?** -C: Kesinlikle. JAR sınıf yolunuza eklendikten sonra tüm metadata okumaları ağ çağrısı olmadan yerel olarak yapılır. +**S: Aynı kütüphane ile diğer video formatlarından meta veri çıkarabilir miyim?** +C: Evet, GroupDocs.Metadata MP4, AVI, MOV ve daha birçok formatı destekler. API deseni aynıdır – sadece format için uygun kök paket sınıfını kullanın. -**S: Çok büyük MKV dosyalarında (birkaç GB) nasıl performans gösterir?** -C: Kütüphane kapsayıcı yapısını akış olarak okur, bu yüzden bellek kullanımı düşük kalır, ancak büyük etiket koleksiyonları için JVM'inizin yeterli yığını olduğundan emin olun. +**S: Üretim ortamında lisans gerekli mi?** +C: Ticari bir lisans deneme sınırlamalarını kaldırır ve tam işlevselliği açar. Kütüphane değerlendirme amaçlı deneme modunda çalışır. -**S: Metadata'yı değiştirebilir ve dosyaya geri yazabilir miyim?** -C: GroupDocs.Metadata öncelikle okuma üzerine odaklanır. Yazma yetenekleri sınırlıdır; yazma desteği için en yeni API belgelerine bakın. +**S: Çıkarma işlemi çevrim dışı mı gerçekleşir?** +C: Kesinlikle. JAR sınıf yolunda olduğunda tüm meta veri okumaları yerel olarak, ağ çağrısı olmadan yapılır. -## Sonuç -Artık GroupDocs.Metadata kullanarak **read mkv metadata java** için eksiksiz, üretim‑hazır bir kılavuza sahipsiniz. EBML başlıkları, segment bilgileri, etiketler ve iz detaylarına erişerek medya kataloglarını güçlendirebilir, kalite kontrollerini otomatikleştirebilir veya video akış hizmetlerini zenginleştirebilirsiniz. Kod parçacıklarıyla deney yapın, iş akışlarınıza uyarlayın ve kütüphanenin daha geniş format desteğini keşfederek daha fazla olasılık elde edin. +**S: Kütüphane çok büyük MKV dosyalarında (birkaç GB) nasıl performans gösterir?** +C: Kütüphane konteyner yapısını akış olarak işler, bellek kullanımını düşük tutar. Büyük etiket koleksiyonları için JVM heap'inin yeterli olduğundan emin olun ve çok büyük dosyalar işliyorsanız `-Xmx` değerini artırmayı düşünün. + +**S: Meta veriyi değiştirip dosyaya geri yazabilir miyim?** +C: GroupDocs.Metadata öncelikle okuma üzerine odaklanır. Yazma desteği sınırlıdır; yazma‑geri yetenekleri için en son API belgelerine bakın. --- -**Son Güncelleme:** 2026-02-21 -**Test Edilen Versiyon:** GroupDocs.Metadata 24.12 for Java -**Yazar:** GroupDocs \ No newline at end of file +**Son Güncelleme:** 2026-09-02 +**Test Edilen:** GroupDocs.Metadata 24.12 for Java +**Yazar:** GroupDocs + +## İlgili Eğitimler + +- [Java ve GroupDocs.Metadata ile toplu olarak mkv altyazılarını çıkarma](/metadata/java/audio-video-formats/extract-subtitles-mkv-files-java-groupdocs-metadata/) +- [GroupDocs.Metadata kullanarak video meta verilerini java ile çıkarma](/metadata/java/audio-video-formats/mastering-avi-metadata-handling-groupdocs-java/) +- [GroupDocs.Metadata ile FLV Meta Verilerini Java’da çıkarma](/metadata/java/audio-video-formats/flv-metadata-extraction-groupdocs-java/) \ No newline at end of file diff --git a/content/vietnamese/java/audio-video-formats/extract-matroska-metadata-groupdocs-java/_index.md b/content/vietnamese/java/audio-video-formats/extract-matroska-metadata-groupdocs-java/_index.md index 1283f8cf3..1cedd873d 100644 --- a/content/vietnamese/java/audio-video-formats/extract-matroska-metadata-groupdocs-java/_index.md +++ b/content/vietnamese/java/audio-video-formats/extract-matroska-metadata-groupdocs-java/_index.md @@ -1,51 +1,86 @@ --- -date: '2026-02-21' -description: Tìm hiểu cách đọc siêu dữ liệu mkv bằng Java sử dụng GroupDocs.Metadata, - trích xuất siêu dữ liệu video bằng Java và xử lý các tiêu đề EBML, thẻ và track. +date: '2026-09-02' +description: Tìm hiểu cách trích xuất siêu dữ liệu mkv trong Java bằng GroupDocs.Metadata, + bao gồm tiêu đề EBML, thẻ, track và các trường hợp sử dụng thực tế. keywords: -- extract mkv metadata java -- groupdocs.metadata java -- read matroska file -title: Đọc siêu dữ liệu MKV trong Java với GroupDocs.Metadata – Hướng dẫn toàn diện +- how to extract mkv +- groupdocs metadata java +- extract video metadata java +lastmod: '2026-09-02' +og_description: Cách trích xuất siêu dữ liệu mkv trong Java bằng GroupDocs.Metadata. + Nhận hướng dẫn chi tiết từng bước, câu trả lời nhanh, và các ví dụ thực tế cho việc + lập danh mục video. +og_image_alt: Guide showing Java code extracting Matroska (MKV) metadata with GroupDocs.Metadata +og_title: Cách trích xuất siêu dữ liệu mkv trong Java với GroupDocs.Metadata +schemas: +- author: GroupDocs + dateModified: '2026-09-02' + description: Learn how to extract mkv metadata in Java using GroupDocs.Metadata, + covering EBML headers, tags, tracks, and practical use cases. + headline: How to extract mkv metadata in Java with GroupDocs.Metadata + type: TechArticle +- questions: + - answer: Yes, GroupDocs.Metadata supports MP4, AVI, MOV, and many more. The API + pattern is identical – just use the appropriate root package class for the format. + question: Can I extract metadata from other video formats with the same library? + - answer: A commercial license removes trial limits and unlocks full functionality. + The library works in trial mode for evaluation purposes. + question: Is a license required for production use? + - answer: Absolutely. Once the JAR is on your classpath, all metadata reads are + performed locally without any network calls. + question: Does the extraction happen offline? + - answer: The library streams the container structure, keeping memory usage modest. + Ensure your JVM has enough heap for any large tag collections, and consider + increasing `-Xmx` if you process extremely large files. + question: How does the library perform on very large MKV files (several GB)? + - answer: GroupDocs.Metadata primarily focuses on reading. Write support is limited; + refer to the latest API documentation for any write‑back capabilities. + question: Can I modify the metadata and write it back to the file? + type: FAQPage +tags: +- extract mkv +- groupdocs metadata +- java video processing +- matroska metadata +- metadata extraction +title: Cách trích xuất siêu dữ liệu mkv trong Java với GroupDocs.Metadata type: docs url: /vi/java/audio-video-formats/extract-matroska-metadata-groupdocs-java/ weight: 1 --- -# Đọc Metadata MKV Java với GroupDocs.Metadata +# Cách trích xuất mkv metadata trong Java với GroupDocs.Metadata -Các tệp đa phương tiện hiện diện khắp nơi, và việc **đọc mkv metadata java** là điều thiết yếu cho việc quản lý, lập danh mục và phân tích phương tiện. Trong hướng dẫn này, bạn sẽ khám phá tại sao việc trích xuất metadata từ các container Matroska lại quan trọng, cách thiết lập GroupDocs.Metadata, và mã từng bước để lấy các header EBML, thông tin segment, thẻ và dữ liệu track. Dù bạn đang xây dựng một danh mục video, xác thực các tham số mã hoá, hay tự động tạo thumbnail, hướng dẫn này cung cấp mọi thứ bạn cần. +Trong hướng dẫn toàn diện này, bạn sẽ học **cách trích xuất mkv metadata trong Java** bằng thư viện GroupDocs.Metadata. Dù bạn đang xây dựng danh mục media, xác thực các tham số mã hoá, hay tự động tạo thumbnail, việc đọc siêu dữ liệu Matroska (MKV) một cách lập trình sẽ tiết kiệm vô số giờ làm việc thủ công. Chúng tôi sẽ đi qua lý do, các yêu cầu trước, các bước cài đặt chi tiết, và các đoạn mã mẫu cho phép truy cập tiêu đề EBML, thông tin segment, thẻ và dữ liệu track. ## Câu trả lời nhanh -- **“read mkv metadata java” có nghĩa là gì?** Đó là quá trình đọc metadata từ các tệp MKV bằng Java một cách lập trình. -- **Thư viện nào nên dùng?** GroupDocs.Metadata cho Java cung cấp API toàn diện cho các tệp Matroska. -- **Có cần giấy phép không?** Bản dùng thử miễn phí đủ cho việc đánh giá; giấy phép sẽ loại bỏ các giới hạn sử dụng. -- **Có thể đọc các định dạng khác không?** Có, cùng một thư viện hỗ trợ MP4, AVI, MP3 và nhiều hơn nữa. -- **Cần kết nối internet khi chạy không?** Không, mọi quá trình trích xuất diễn ra cục bộ sau khi thư viện được thêm vào dự án của bạn. - -## Metadata Matroska (MKV) là gì? -Matroska là một định dạng container mở, linh hoạt. Metadata của nó bao gồm header EBML (phiên bản tệp, loại tài liệu), chi tiết segment (độ dài, ứng dụng muxing), thẻ (tiêu đề, mô tả), và các thông số track (codec âm/video, ngôn ngữ). Truy cập dữ liệu này cho phép bạn xây dựng danh mục phương tiện, xác minh tính toàn vẹn của tệp, hoặc tự động tạo thumbnail. - -## Tại sao cần đọc mkv metadata java? -- **Tự động hoá** – Lấy chi tiết tự động cho các thư viện video lớn. -- **Kiểm soát chất lượng** – Xác thực ID codec, thời lượng và ngôn ngữ track trước khi công bố. -- **Tìm kiếm & khám phá** – Điền cơ sở dữ liệu có thể tìm kiếm với tiêu đề, ngôn ngữ và dấu thời gian. -- **Độ nhất quán đa định dạng** – Sử dụng cùng một codebase để trích xuất metadata video java từ các container khác (MP4, AVI, v.v.). - -## Tại sao nên dùng GroupDocs.Metadata cho Java? -- **API đầy đủ tính năng** – Xử lý EBML, segment, thẻ và track mà không cần phân tích cấp thấp. -- **Tối ưu hiệu năng** – Hoạt động hiệu quả ngay cả với các tệp đa gigabyte. -- **Hỗ trợ đa định dạng** – Mẫu code giống nhau áp dụng cho nhiều container âm/video. -- **Tích hợp Maven đơn giản** – Thêm một dependency duy nhất và bắt đầu trích xuất. - -## Điều kiện tiên quyết -- **GroupDocs.Metadata cho Java** phiên bản 24.12 trở lên. -- Java Development Kit (JDK) đã được cài đặt. -- Maven (hoặc xử lý JAR thủ công). -- Một tệp MKV để thử nghiệm (đặt nó trong `YOUR_DOCUMENT_DIRECTORY`). +- **“read mkv metadata java” có nghĩa là gì?** Đó là việc trích xuất lập trình siêu dữ liệu của container Matroska (tiêu đề, codec, thời lượng, v.v.) từ các tệp MKV bằng Java. +- **Tôi nên dùng thư viện nào?** GroupDocs.Metadata cho Java cung cấp API đầy đủ tính năng, hiệu suất cao cho Matroska và hơn 50 định dạng khác. +- **Có cần giấy phép không?** Bản dùng thử miễn phí đủ cho việc đánh giá; giấy phép thương mại sẽ loại bỏ mọi giới hạn của bản dùng thử. +- **Tôi có thể đọc các định dạng khác không?** Có – cùng một API có thể đọc MP4, AVI, MOV, MP3 và nhiều container khác. +- **Có cần truy cập internet khi chạy không?** Không – mọi quá trình trích xuất diễn ra cục bộ sau khi JAR đã có trong classpath của bạn. + +## Siêu dữ liệu Matroska (MKV) là gì? + +Siêu dữ liệu Matroska (MKV) là tập hợp thông tin cấu trúc và mô tả được lưu bên trong container Matroska, bao gồm tiêu đề EBML (phiên bản tệp và loại tài liệu), chi tiết segment (thời lượng, ứng dụng muxing), thẻ do người dùng định nghĩa (tiêu đề, mô tả), và các thông số track (ID codec audio/video, ngôn ngữ, bitrate). Truy cập dữ liệu này cho phép bạn xây dựng danh mục có thể tìm kiếm, xác minh tính toàn vẹn của tệp, hoặc điều khiển các quy trình tự động như tạo thumbnail. + +## Tại sao đọc mkv metadata java? + +Đọc siêu dữ liệu MKV từ Java cho phép bạn **tự động** lập danh mục cho hàng ngàn video, **xác thực** yêu cầu codec và ngôn ngữ trước khi phát hành, và **điền** dữ liệu vào cơ sở dữ liệu có thể tìm kiếm với tiêu đề, thời lượng và ngôn ngữ track. Nó cũng cung cấp **một mã nguồn duy nhất** để trích xuất siêu dữ liệu video từ nhiều container, giảm gánh nặng bảo trì và đảm bảo kiểm tra chất lượng đồng nhất trong quy trình media của bạn. + +## Tại sao sử dụng GroupDocs.Metadata cho Java? + +GroupDocs.Metadata cho Java là thư viện đã trưởng thành, hỗ trợ **hơn 50 định dạng nhập và xuất**, bao gồm Matroska, MP4, AVI và MOV. Thư viện stream cấu trúc container, vì vậy mức tiêu thụ bộ nhớ vẫn thấp ngay cả với các tệp đa gigabyte. API trừu tượng việc phân tích EBML cấp thấp, cho phép bạn tập trung vào logic nghiệp vụ. Việc tích hợp đơn giản chỉ cần thêm một dependency Maven, và thư viện luôn được cập nhật để hỗ trợ các thông số codec mới nhất. + +## Yêu cầu trước +- **GroupDocs.Metadata for Java** phiên bản 24.12 hoặc mới hơn. +- Java Development Kit (JDK) 8 hoặc mới hơn đã được cài đặt. +- Maven (hoặc quản lý JAR thủ công) để quản lý các phụ thuộc. +- Một tệp MKV để thử nghiệm, đặt trong thư mục bạn có thể tham chiếu từ mã (ví dụ, `YOUR_DOCUMENT_DIRECTORY`). ## Cài đặt GroupDocs.Metadata cho Java -Thêm thư viện vào dự án của bạn bằng Maven hoặc tải JAR trực tiếp. + +GroupDocs.Metadata cho Java là thư viện cho phép đọc siêu dữ liệu từ hơn 50 định dạng tệp, bao gồm Matroska (MKV). Thêm nó vào dự án của bạn bằng Maven hoặc tải JAR thủ công. **Maven:** ```xml @@ -66,13 +101,15 @@ Thêm thư viện vào dự án của bạn bằng Maven hoặc tải JAR trực ``` -**Tải trực tiếp:** +**Direct download:** Nếu bạn không muốn dùng Maven, tải phiên bản mới nhất từ [GroupDocs.Metadata for Java releases](https://releases.groupdocs.com/metadata/java/). ### Nhận giấy phép + Bắt đầu với bản dùng thử miễn phí để khám phá các tính năng. Đối với môi trường sản xuất, mua giấy phép hoặc lấy giấy phép tạm thời từ [GroupDocs](https://purchase.groupdocs.com/temporary-license/) để loại bỏ các giới hạn của bản dùng thử. -### Khởi tạo và cấu hình cơ bản +### Khởi tạo và cài đặt cơ bản + Dưới đây là đoạn mã tối thiểu cần thiết để mở một tệp MKV bằng GroupDocs.Metadata. ```java @@ -90,10 +127,14 @@ public class MetadataExtraction { ``` ## Cách đọc mkv metadata java với GroupDocs.Metadata -Bây giờ chúng ta sẽ đi sâu vào từng khu vực metadata mà bạn có thể đọc. -### Đọc Header EBML của Matroska -Header EBML lưu trữ thông tin cốt lõi của tệp như phiên bản và loại tài liệu. +`Metadata` là lớp chính đại diện cho một tệp MKV và cung cấp quyền truy cập vào siêu dữ liệu của nó. +Tải tệp MKV của bạn bằng `new Metadata("path/to/file.mkv")` và gọi các getter phù hợp – `getRootPackageGeneric()`, `getSegments()`, `getTags()`, và `getTracks()` – để lấy từng phần siêu dữ liệu. Chuỗi gọi duy nhất này cho bạn toàn bộ thông tin về tiêu đề EBML, thông tin segment, thẻ người dùng và chi tiết từng track mà không cần viết bất kỳ logic phân tích cấp thấp nào. + +### Đọc tiêu đề EBML Matroska + +Tiêu đề EBML lưu trữ thông tin cốt lõi của tệp như phiên bản, loại tài liệu và kích thước tệp. +`getRootPackageGeneric()` trả về gói tiêu đề EBML của tệp đã mở. ```java import com.groupdocs.metadata.Metadata; @@ -118,10 +159,12 @@ public class ReadMatroskaEBMLHeader { **Các điểm chính** - `getRootPackageGeneric()` trả về điểm vào của gói Matroska. -- Các thuộc tính EBML (`docType`, `version`, …) giúp bạn xác thực tính tương thích của tệp. +- Các thuộc tính EBML (`docType`, `version`, v.v.) cho phép bạn xác minh tính tương thích của tệp trước khi xử lý sâu hơn. + +### Đọc thông tin đoạn Matroska -### Đọc Thông tin Segment của Matroska -Segment mô tả toàn bộ dòng thời gian phương tiện và công cụ tạo ra. +Segment mô tả toàn bộ dòng thời gian media, công cụ tạo và thông tin tiêu đề tùy chọn. +`getSegments()` trả về một tập hợp các đối tượng segment chứa thời lượng và chi tiết tạo. ```java import com.groupdocs.metadata.Metadata; @@ -150,11 +193,13 @@ public class ReadMatroskaSegmentInformation { ``` **Các điểm chính** -- `getSegments()` trả về một collection; mỗi segment có thể chứa tiêu đề, độ dài và chi tiết ứng dụng tạo. -- Hữu ích cho việc xây dựng playlist hoặc xác thực các tham số mã hoá. +- `getSegments()` trả về một collection; mỗi segment có thể chứa tiêu đề, thời lượng và chi tiết ứng dụng tạo riêng. +- Dữ liệu này hữu ích cho việc xây dựng playlist hoặc xác thực các tham số mã hoá trên một loạt tệp. + +### Đọc siêu dữ liệu thẻ Matroska -### Đọc Metadata Thẻ (Tag) của Matroska -Thẻ lưu trữ thông tin có thể đọc được bởi con người như tiêu đề, nghệ sĩ hoặc ghi chú tùy chỉnh. +Thẻ lưu trữ thông tin đọc được bởi con người như tiêu đề, nghệ sĩ hoặc ghi chú tùy chỉnh. +`getTags()` trả về danh sách các mục thẻ liên quan tới tệp. ```java import com.groupdocs.metadata.Metadata; @@ -187,8 +232,10 @@ public class ReadMatroskaTagMetadata { - Thẻ được tổ chức theo `targetType` (ví dụ: `movie`, `track`). - Các mục `simpleTag` chứa các cặp key/value như `TITLE=My Video`. -### Đọc Metadata Track của Matroska -Track đại diện cho các luồng âm thanh, video hoặc phụ đề riêng lẻ. +### Đọc siêu dữ liệu track Matroska + +Track đại diện cho các luồng audio, video hoặc phụ đề riêng lẻ bên trong container. +`getTracks()` cung cấp quyền truy cập vào các thông số kỹ thuật của từng track. ```java import com.groupdocs.metadata.Metadata; @@ -213,45 +260,50 @@ public class ReadMatroskaTrackMetadata { ``` **Các điểm chính** -- `track.getType()` cho biết đây là video, audio hay subtitles. -- `codecId` giúp bạn xác định codec (ví dụ: `V_MPEG4/ISO/AVC`). -- Dữ liệu này rất quan trọng cho các pipeline chuyển đổi định dạng hoặc kiểm tra chất lượng. - -## Các trường hợp sử dụng phổ biến cho đọc mkv metadata java -- **Danh mục phương tiện** – Điền các bảng cơ sở dữ liệu với tiêu đề, độ dài và mã ngôn ngữ. -- **QC tự động** – Xác minh mỗi tệp đều chứa các thẻ bắt buộc trước khi công bố. -- **Streaming động** – Chọn track âm thanh/phụ đề phù hợp dựa trên sở thích người dùng. -- **Di chuyển nội dung** – Trích xuất metadata một lần, sau đó chèn vào hệ thống lưu trữ mới. - -## Các vấn đề thường gặp & Khắc phục -| Triệu chứng | Nguyên nhân có thể | Cách khắc phục | +- `track.getType()` cho biết luồng là video, audio hay phụ đề. +- `codecId` xác định codec (ví dụ: `V_MPEG4/ISO/AVC`). +- Thông tin này thiết yếu cho các pipeline chuyển đổi, kiểm tra chất lượng và quyết định streaming động. + +## Các trường hợp sử dụng phổ biến cho việc đọc mkv metadata java + +- **Danh mục media** – Điền các bảng cơ sở dữ liệu với tiêu đề, thời lượng và mã ngôn ngữ để tìm kiếm nhanh. +- **Kiểm soát chất lượng tự động** – Xác minh mỗi tệp đều có các thẻ cần thiết và tuân thủ tiêu chuẩn codec trước khi phát hành. +- **Streaming động** – Chọn track audio hoặc phụ đề phù hợp dựa trên sở thích của người dùng tại thời gian chạy. +- **Di chuyển nội dung** – Trích xuất siêu dữ liệu một lần, sau đó chèn vào hệ thống lưu trữ mới hoặc mạng phân phối nội dung. + +## Các vấn đề thường gặp & khắc phục + +| Triệu chứng | Nguyên nhân khả dĩ | Cách khắc phục | |------------|--------------------|----------------| -| `NullPointerException` khi truy cập `getEbmlHeader()` | Đường dẫn tệp không đúng hoặc tệp không tồn tại | Kiểm tra lại đường dẫn trong `new Metadata("...")` và đảm bảo tệp tồn tại. | -| Không có thẻ nào được trả về | Tệp MKV thiếu các phần tử thẻ | Sử dụng tệp phương tiện có chứa thẻ metadata (ví dụ: được thêm bằng MKVToolNix). | -| Xử lý chậm với tệp lớn | Bộ nhớ heap không đủ | Tăng heap JVM (`-Xmx2g` hoặc cao hơn) hoặc xử lý tệp theo từng phần nếu có thể. | +| `NullPointerException` khi truy cập `getEbmlHeader()` | Đường dẫn tệp không đúng hoặc tệp không tồn tại | Kiểm tra lại đường dẫn trong `new Metadata("...")` và chắc chắn tệp tồn tại trên đĩa. | +| Không có thẻ nào được trả về | Tệp MKV thiếu các phần tử thẻ | Sử dụng tệp media có chứa thẻ siêu dữ liệu (ví dụ: đã thêm qua MKVToolNix). | +| Xử lý chậm trên tệp lớn | Bộ nhớ heap không đủ | Tăng bộ nhớ heap JVM (`-Xmx2g` hoặc cao hơn) hoặc xử lý tệp theo từng phần nếu có thể. | ## Câu hỏi thường gặp -**H: Tôi có thể trích xuất metadata từ các định dạng video khác bằng cùng thư viện không?** -Đ: Có, GroupDocs.Metadata hỗ trợ MP4, AVI, MOV và nhiều định dạng khác. Mẫu API tương tự—chỉ cần dùng lớp gói gốc phù hợp. - -**H: Có cần giấy phép cho môi trường sản xuất không?** -Đ: Giấy phép sẽ loại bỏ các giới hạn của bản dùng thử và cung cấp đầy đủ chức năng. Thư viện vẫn hoạt động ở chế độ dùng thử để đánh giá. +**Q: Tôi có thể trích xuất siêu dữ liệu từ các định dạng video khác bằng cùng một thư viện không?** +A: Có, GroupDocs.Metadata hỗ trợ MP4, AVI, MOV và nhiều định dạng khác. Mẫu API giống hệt – chỉ cần dùng lớp gói gốc phù hợp cho định dạng đó. -**H: Quá trình trích xuất có diễn ra offline không?** -Đ: Hoàn toàn. Khi JAR đã có trong classpath, mọi việc đọc metadata đều được thực hiện cục bộ mà không cần gọi mạng. +**Q: Có cần giấy phép cho việc sử dụng trong môi trường sản xuất không?** +A: Giấy phép thương mại sẽ loại bỏ các giới hạn của bản dùng thử và mở khóa toàn bộ chức năng. Thư viện vẫn hoạt động ở chế độ dùng thử cho mục đích đánh giá. -**H: Hiệu năng của thư viện như thế nào với các tệp MKV rất lớn (vài GB)?** -Đ: Thư viện stream cấu trúc container, do đó mức sử dụng bộ nhớ vẫn ở mức vừa phải, nhưng hãy đảm bảo JVM của bạn có đủ heap cho bất kỳ bộ sưu tập thẻ lớn nào. +**Q: Quá trình trích xuất có diễn ra offline không?** +A: Hoàn toàn có. Khi JAR đã có trong classpath, mọi việc đọc siêu dữ liệu đều được thực hiện cục bộ mà không có bất kỳ cuộc gọi mạng nào. -**H: Tôi có thể sửa đổi metadata và ghi lại vào tệp không?** -Đ: GroupDocs.Metadata chủ yếu tập trung vào việc đọc. Khả năng ghi còn hạn chế; hãy kiểm tra tài liệu API mới nhất để biết hỗ trợ ghi nếu có. +**Q: Thư viện hoạt động như thế nào với các tệp MKV rất lớn (nhiều GB)?** +A: Thư viện stream cấu trúc container, giữ mức tiêu thụ bộ nhớ ở mức vừa phải. Đảm bảo JVM của bạn có đủ heap cho bất kỳ collection thẻ lớn nào, và cân nhắc tăng `-Xmx` nếu xử lý các tệp cực lớn. -## Kết luận -Bạn đã có một hướng dẫn hoàn chỉnh, sẵn sàng cho môi trường sản xuất để **đọc mkv metadata java** bằng GroupDocs.Metadata. Bằng cách khai thác header EBML, thông tin segment, thẻ và chi tiết track, bạn có thể xây dựng danh mục phương tiện, tự động hoá kiểm tra chất lượng, hoặc làm phong phú dịch vụ streaming video. Hãy thử nghiệm các đoạn mã, tùy chỉnh chúng cho quy trình công việc của bạn, và khám phá hỗ trợ đa định dạng của thư viện để mở rộng hơn nữa. +**Q: Tôi có thể chỉnh sửa siêu dữ liệu và ghi lại vào tệp không?** +A: GroupDocs.Metadata chủ yếu tập trung vào việc đọc. Hỗ trợ ghi bị giới hạn; hãy tham khảo tài liệu API mới nhất để biết khả năng ghi ngược lại. --- -**Cập nhật lần cuối:** 2026-02-21 -**Đã kiểm tra với:** GroupDocs.Metadata 24.12 cho Java -**Tác giả:** GroupDocs \ No newline at end of file +**Cập nhật lần cuối:** 2026-09-02 +**Kiểm tra với:** GroupDocs.Metadata 24.12 cho Java +**Tác giả:** GroupDocs + +## Hướng dẫn liên quan + +- [Cách trích xuất hàng loạt phụ đề mkv bằng Java và GroupDocs.Metadata](/metadata/java/audio-video-formats/extract-subtitles-mkv-files-java-groupdocs-metadata/) +- [Trích xuất siêu dữ liệu video java bằng GroupDocs.Metadata](/metadata/java/audio-video-formats/mastering-avi-metadata-handling-groupdocs-java/) +- [Cách trích xuất siêu dữ liệu FLV Java với GroupDocs.Metadata](/metadata/java/audio-video-formats/flv-metadata-extraction-groupdocs-java/) \ No newline at end of file From 2f3c1de6c5c11021898d2988592f16020aae0f12 Mon Sep 17 00:00:00 2001 From: Muhammad Muqarrab Date: Wed, 2 Sep 2026 01:52:58 +0000 Subject: [PATCH 2/4] =?UTF-8?q?Optimize=20page:=20content/english/java/aud?= =?UTF-8?q?io-video-formats/extract-wav-metadata-groupdocs-java/=5Findex.m?= =?UTF-8?q?d=20-=20-=20Updated=20title,=20description,=20and=20Open=20Grap?= =?UTF-8?q?h=20fields=20to=20include=20primary=20keyword=20=E2=80=9Cget=20?= =?UTF-8?q?audio=20metadata=20java=E2=80=9D.=20-=20Added=20definition=20an?= =?UTF-8?q?chors=20for=20`Metadata`=20and=20`RiffInfoPackage`=20classes.?= =?UTF-8?q?=20-=20Inserted=20direct=E2=80=91answer=20paragraphs=20after=20?= =?UTF-8?q?every=20=E2=80=9CHow/What/Why=E2=80=9D=20heading=20(40=E2=80=93?= =?UTF-8?q?70=20words=20each).=20-=20Replaced=20vague=20statements=20with?= =?UTF-8?q?=20quantified=20claims=20(e.g.,=20=E2=80=9C50+=20audio=20and=20?= =?UTF-8?q?video=20formats=E2=80=9D).=20-=20Expanded=20introductions,=20pr?= =?UTF-8?q?actical=20applications,=20and=20performance=20tips=20to=20excee?= =?UTF-8?q?d=20original=20length=20while=20preserving=20all=20original=20l?= =?UTF-8?q?inks=20and=20code=E2=80=91block=20placeholders.?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../_index.md | 194 ++++++++++----- .../_index.md | 206 ++++++++++------ .../_index.md | 201 ++++++++++----- .../_index.md | 189 +++++++++----- .../_index.md | 176 +++++++++---- .../og-image.png | Bin 0 -> 53170 bytes .../_index.md | 211 ++++++++++------ .../_index.md | 226 ++++++++++------- .../_index.md | 218 ++++++++++------ .../_index.md | 207 +++++++++++----- .../_index.md | 215 ++++++++++------ .../_index.md | 202 +++++++++------ .../_index.md | 209 ++++++++++------ .../_index.md | 193 ++++++++++----- .../_index.md | 216 ++++++++++------ .../_index.md | 210 ++++++++++------ .../_index.md | 207 +++++++++++----- .../_index.md | 210 ++++++++++------ .../_index.md | 201 ++++++++++----- .../_index.md | 186 +++++++++----- .../_index.md | 194 ++++++++++----- .../_index.md | 224 +++++++++++------ .../_index.md | 231 +++++++++++------ .../_index.md | 233 ++++++++++++------ 24 files changed, 3170 insertions(+), 1589 deletions(-) create mode 100644 content/english/java/audio-video-formats/extract-wav-metadata-groupdocs-java/og-image.png diff --git a/content/arabic/java/audio-video-formats/extract-wav-metadata-groupdocs-java/_index.md b/content/arabic/java/audio-video-formats/extract-wav-metadata-groupdocs-java/_index.md index 2341bbb9a..618992bb1 100644 --- a/content/arabic/java/audio-video-formats/extract-wav-metadata-groupdocs-java/_index.md +++ b/content/arabic/java/audio-video-formats/extract-wav-metadata-groupdocs-java/_index.md @@ -1,40 +1,93 @@ --- -date: '2026-02-24' -description: تعلم كيفية استخراج بيانات تعريف ملفات WAV في Java بكفاءة باستخدام GroupDocs.Metadata - for Java، المكتبة القوية لإدارة بيانات تعريف ملفات الصوت. +date: '2026-09-02' +description: تعلم كيفية الحصول على بيانات تعريف الصوت java باستخدام GroupDocs.Metadata، + المكتبة القوية للغة Java لاستخراج بيانات ميتا ملفات WAV، وتدعم المعالجة الدفعية + واستخدام منخفض للذاكرة. keywords: +- get audio metadata java - extract wav metadata -- WAV file metadata management -- GroupDocs.Metadata for Java -title: استخراج بيانات تعريف wav في جافا باستخدام GroupDocs.Metadata – دليل شامل +- GroupDocs.Metadata Java +lastmod: '2026-09-02' +og_description: تعلم كيفية الحصول على بيانات تعريف الصوت java باستخدام GroupDocs.Metadata، + المكتبة القوية للغة Java لاستخراج بيانات ميتا ملفات WAV، وتدعم المعالجة الدفعية + واستخدام منخفض للذاكرة. +og_image_alt: Guide showing how to get audio metadata java from WAV files using GroupDocs.Metadata +og_title: كيفية الحصول على بيانات تعريف الصوت java باستخدام GroupDocs.Metadata +schemas: +- author: GroupDocs + dateModified: '2026-09-02' + description: Learn how to get audio metadata java with GroupDocs.Metadata, the robust + Java library for extracting WAV file metadata, supporting batch processing and + low memory usage. + headline: How to get audio metadata java using GroupDocs.Metadata + type: TechArticle +- description: Learn how to get audio metadata java with GroupDocs.Metadata, the robust + Java library for extracting WAV file metadata, supporting batch processing and + low memory usage. + name: How to get audio metadata java using GroupDocs.Metadata + steps: + - name: import required classes + text: 'Make sure the necessary GroupDocs classes are imported:' + - name: initialize Metadata object + text: 'Create a `Metadata` object pointing at your WAV file:' + - name: accessing the RIFF info package + text: 'The `RiffInfoPackage` class exposes the INFO chunk of a WAV file, containing + human‑readable tags. If the INFO chunk exists, pull the individual tag values: + **Explanation:** The code checks for the presence of a `RiffInfoPackage`. When + available, it extracts fields such as `artist`, `comment`, and `s' + type: HowTo +- questions: + - answer: Metadata in a WAV file includes information such as the artist name, comments, + creation date, and the software used to produce the audio. + question: What is metadata in a WAV file? + - answer: Yes, the library supports both reading and writing metadata fields. + question: Can I modify the metadata of a WAV file using GroupDocs.Metadata for + Java? + - answer: Always check `root.getRiffInfoPackage()` for `null` before accessing its + properties to avoid `NullPointerException`. + question: How do I handle files without an INFO chunk? + - answer: Absolutely. GroupDocs.Metadata works with many audio and video formats, + allowing you to retrieve tags from MP3, FLAC, MP4, and more. + question: Is it possible to extract other types of metadata from audio files? + - answer: Process files in smaller batches, reuse `Metadata` objects wisely, and + consider increasing the JVM heap size if necessary. + question: What should I do if my application runs out of memory while processing + large files? + type: FAQPage +tags: +- audio metadata +- GroupDocs.Metadata +- Java audio processing +- WAV metadata extraction +title: كيفية الحصول على بيانات تعريف الصوت java باستخدام GroupDocs.Metadata type: docs url: /ar/java/audio-video-formats/extract-wav-metadata-groupdocs-java/ weight: 1 --- -# كيفية استخراج بيانات تعريف ملف WAV باستخدام GroupDocs.Metadata للغة Java +# كيف تحصل على بيانات تعريف الصوت java باستخدام GroupDocs.Metadata -إذا كنت بحاجة إلى **extract wav metadata java**، فقد وصلت إلى المكان الصحيح. في هذا الدليل سنستعرض كل ما تحتاج معرفته لاستخلاص معلومات مفصلة—من أسماء الفنانين إلى وسوم البرامج—من ملفات WAV باستخدام مكتبة GroupDocs.Metadata في Java. سواء كنت تبني مدير مكتبة وسائط، أو سير عمل أصول رقمية، أو مجرد فضول حول البيانات المخفية في ملفات الصوت الخاصة بك، فإن هذا البرنامج التعليمي يقدم لك حلاً كاملاً وجاهزًا للإنتاج. +إذا كنت بحاجة إلى **get audio metadata java**، فقد وصلت إلى المكان الصحيح. في هذا الدليل سنستعرض كل ما تحتاج معرفته لاستخراج معلومات مفصلة—من أسماء الفنانين إلى وسوم البرامج—من ملفات WAV باستخدام مكتبة GroupDocs.Metadata للـ Java. سواء كنت تبني مدير مكتبة وسائط، أو سير عمل أصول رقمية، أو ببساطة تستكشف البيانات المخفية في ملفات الصوت، فإن هذا البرنامج التعليمي يقدم حلاً كاملاً وجاهزًا للإنتاج. ## إجابات سريعة - **ما المكتبة التي تتعامل مع بيانات تعريف WAV في Java؟** GroupDocs.Metadata for Java. -- **هل أحتاج إلى ترخيص للتطوير؟** نسخة تجريبية مجانية تعمل للتقييم؛ الترخيص يزيل جميع القيود. +- **هل أحتاج إلى ترخيص للتطوير؟** النسخة التجريبية المجانية تعمل للتقييم؛ الترخيص يزيل جميع القيود. - **ما نسخة Java المطلوبة؟** Java 8 أو أحدث. -- **هل يمكنني معالجة العديد من الملفات مرة واحدة؟** نعم—معالجة الدفعات مدعومة ومُوضحة لاحقًا. -- **هل استهلاك الذاكرة مصدر قلق؟** تخلص من كائنات `Metadata` فورًا للحفاظ على البصمة منخفضة. +- **هل يمكنني معالجة العديد من الملفات في آن واحد؟** نعم—معالجة الدُفعات مدعومة ومُوضحة لاحقًا. +- **هل استهلاك الذاكرة مصدر قلق؟** تخلص من كائنات `Metadata` بسرعة للحفاظ على حجم الذاكرة منخفضًا. ## ما هو “extract wav metadata java”؟ -استخراج بيانات تعريف WAV في Java يعني قراءة جزء INFO وغيرها من العلامات المدمجة داخل ملف صوتي WAV. هذه العلامات تخزن تفاصيل قيمة مثل الفنان، التعليقات، تاريخ الإنشاء، والبرنامج المستخدم لإنشاء الملف. الوصول إلى هذه البيانات يتيح لك فهرسة، بحث، أو التحقق من أصول الصوت برمجيًا. +استخراج بيانات تعريف WAV في Java يعني قراءة جزء INFO وغيرها من العلامات المدمجة داخل ملف صوتي WAV. تخزن هذه العلامات تفاصيل قيمة مثل الفنان، التعليقات، تاريخ الإنشاء، والبرنامج المستخدم لإنتاج الملف. الوصول إلى هذه البيانات يتيح لك فهرسة، بحث، أو التحقق من أصول الصوت برمجيًا. -## لماذا نستخدم GroupDocs.Metadata للغة Java؟ -GroupDocs.Metadata ي抽象解析 الثنائي منخفض المستوى المطلوب لملفات RIFF/WAV ويوفر API نظيفًا موجهًا للكائنات. يدعم عشرات صيغ الصوت والفيديو، يقدم معالجة أخطاء قوية، ويعمل بشكل ثابت عبر بيئات Windows و macOS و Linux. +## لماذا تستخدم GroupDocs.Metadata للـ Java؟ +GroupDocs.Metadata ي抽象 عملية التحليل الثنائي منخفض المستوى المطلوبة لملفات RIFF/WAV ويوفر واجهة برمجة تطبيقات نظيفة كائنية التوجه. يدعم **50+ audio and video formats**، ويقدم معالجة أخطاء قوية، ويعمل بشكل متسق عبر بيئات Windows و macOS و Linux. يمكن للمكتبة معالجة مستندات متعددة المئات من الصفحات دون تحميل الملف بالكامل إلى الذاكرة، مما يوفر أداءً متوقعًا حتى على الخوادم ذات الموارد المحدودة. ## المتطلبات المسبقة - **Java Development Kit (JDK)** – الإصدار 8 أو أعلى. - **IDE** – IntelliJ IDEA أو Eclipse أو أي محرر تفضله. -- **Maven** – لإدارة الاعتمادات (اختياري لكن يُنصح به). +- **Maven** – لإدارة التبعيات (اختياري لكن يُنصح به). -## إعداد GroupDocs.Metadata للغة Java +## إعداد GroupDocs.Metadata للـ Java ### التثبيت @@ -63,10 +116,10 @@ GroupDocs.Metadata ي抽象解析 الثنائي منخفض المستوى ال إذا كنت تفضل عدم استخدام Maven، احصل على أحدث JAR من [صفحة الإصدارات](https://releases.groupdocs.com/metadata/java/). ### الحصول على الترخيص -ترخيص تجريبي مجاني يزيل حدود التقييم أثناء التجربة. للاستخدام الإنتاجي، اشترِ ترخيصًا من موقع GroupDocs. +ترخيص التجربة المجاني يزيل حدود التقييم أثناء التجربة. للاستخدام الإنتاجي، اشترِ ترخيصًا من موقع GroupDocs. ### التهيئة الأساسية والإعداد -بمجرد إضافة المكتبة إلى مسار الفئات الخاص بك، يمكنك إنشاء مثيل `Metadata` لفتح ملف WAV: +`Metadata` هي الفئة الأساسية في GroupDocs.Metadata التي تمثل ملفًا وتوفر الوصول إلى حزم البيانات التعريفية الخاصة به. بمجرد أن تكون المكتبة على مسار الفئات الخاص بك، يمكنك إنشاء مثيل `Metadata` لفتح ملف WAV: ```java import com.groupdocs.metadata.Metadata; @@ -80,24 +133,22 @@ try (Metadata metadata = new Metadata(inputFile)) { ``` ## كيفية قراءة بيانات تعريف WAV في Java -إذا كنت تتساءل **how to read wav metadata**، فإن العملية تتلخص في ثلاث خطوات بسيطة: تحميل الملف باستخدام `Metadata`، الانتقال إلى `RiffInfoPackage`، واستخراج قيم العلامات الفردية التي تهمك. توضح مقتطفات الشيفرة أدناه كل خطوة بطريقة واضحة وجاهزة للإنتاج. +حمّل الملف المستهدف باستخدام كائن `Metadata`، حدد `RiffInfoPackage`، ثم استعلم عن خصائص العلامات الفردية التي تحتاجها. هذا النمط المكوّن من ثلاث خطوات—التهيئة، استرجاع الحزمة، واستخراج الخصائص—يغطي **99% من سيناريوهات بيانات تعريف WAV الشائعة** ويعمل أيضًا مع وظائف الدُفعات. -## دليل التنفيذ - -### كيفية استخراج wav metadata java – الوصول إلى جزء INFO - -#### نظرة عامة +## كيفية استخراج wav metadata java – الوصول إلى جزء INFO جزء INFO يحتوي على علامات قابلة للقراءة من قبل الإنسان مثل الفنان، النوع، والبرنامج. أدناه سنسترجع أكثر الحقول شيوعًا. -##### الخطوة 1: استيراد الفئات المطلوبة -تأكد من استيراد فئات GroupDocs اللازمة: +جزء INFO هو جزء قياسي من بنية RIFF يخزن بيانات تعريف نصية. باستخدام GroupDocs.Metadata يمكنك قراءة حقول مثل `artist`، `genre`، `software`، `comment`، و`creationDate`. تُعيد المكتبة هذه القيم كسلاسل نصية، ويمكنك التعامل مع العلامات المفقودة عن طريق التحقق من كونها null. هذا النهج يعمل مع أي ملف WAV يحتوي على جزء INFO. + +### الخطوة 1: استيراد الفئات المطلوبة +تأكد من استيراد الفئات اللازمة من GroupDocs: ```java import com.groupdocs.metadata.Metadata; import com.groupdocs.metadata.core.WavRootPackage; ``` -##### الخطوة 2: تهيئة كائن Metadata +### الخطوة 2: تهيئة كائن Metadata أنشئ كائن `Metadata` يشير إلى ملف WAV الخاص بك: ```java @@ -111,8 +162,8 @@ try (Metadata metadata = new Metadata(inputFile)) { } ``` -##### الخطوة 3: الوصول إلى حزمة RIFF Info -إذا كان جزء INFO موجودًا، استخرج قيم العلامات الفردية: +### الخطوة 3: الوصول إلى حزمة معلومات RIFF +فئة `RiffInfoPackage` تكشف عن جزء INFO من ملف WAV، وتحتوي على علامات قابلة للقراءة من قبل الإنسان. إذا كان جزء INFO موجودًا، استخرج قيم العلامات الفردية: ```java if (root.getRiffInfoPackage() != null) { @@ -128,61 +179,86 @@ if (root.getRiffInfoPackage() != null) { } ``` -**Explanation:** يتحقق الكود من وجود `RiffInfoPackage`. عندما يكون متاحًا، يستخرج حقولًا مثل `artist` و `comment` و `software` مباشرةً من جزء INFO في ملف WAV. +**شرح:** يتحقق الكود من وجود `RiffInfoPackage`. عندما يكون متاحًا، يستخرج حقولًا مثل `artist`، `comment`، و`software` مباشرةً من جزء INFO لملف WAV. **نصائح استكشاف الأخطاء وإصلاحها** -- **Metadata مفقودة:** ليست كل ملفات WAV تحتوي على جزء INFO. تحقق باستخدام أداة مثل Audacity أو MediaInfo. -- **أخطاء مسار الملف:** تأكد من أن المسار مطلق أو نسبي إلى جذر مشروعك وأن الملف قابل للقراءة. +- **Missing metadata:** ليست كل ملفات WAV تحتوي على جزء INFO. تحقق باستخدام أداة مثل Audacity أو MediaInfo. +- **File path errors:** تأكد من أن المسار مطلق أو نسبي إلى جذر المشروع وأن الملف قابل للقراءة. ## تطبيقات عملية -يمكن للبيانات المستخرجة تمكين العديد من السيناريوهات الواقعية: -1. **أنظمة إدارة الوسائط** – وضع علامات تلقائيًا وتنظيم مكتبات صوتية ضخمة. -2. **إدارة الأصول الرقمية** – تحسين البحث عبر فهرسة التعليقات، حقوق النشر، والنوع. -3. **التحليل الجنائي الصوتي** – تحديد برنامج الإنشاء أو المهندس لأغراض التحقيق. +يمكن للبيانات التعريفية المستخرجة تمكين العديد من السيناريوهات الواقعية: +1. **أنظمة إدارة الوسائط** – وضع وسوم تلقائية وتنظيم مكتبات صوتية ضخمة. +2. **إدارة الأصول الرقمية** – تحسين البحث عن طريق فهرسة التعليقات، حقوق النشر، والنوع. +3. **تحليل الأدلة الصوتية** – تحديد برنامج الإنشاء أو المهندس لأغراض التحقيق. ## اعتبارات الأداء -عند معالجة آلاف الملفات، ضع هذه النصائح في الاعتبار: -- **معالجة الدفعات:** استخدم `ExecutorService` في Java لتشغيل الاستخلاصات بالتوازي. -- **إدارة الذاكرة:** غلف كل مثيل `Metadata` بكتلة `try‑with‑resources` (كما هو موضح) لتحرير الموارد الأصلية فورًا. -- **التحليل:** أدوات مثل VisualVM يمكنها اكتشاف عنق الزجاجة في I/O أو تخصيص الكائنات. +عند معالجة آلاف الملفات، احرص على مراعاة النصائح التالية: +- **معالجة الدُفعات:** استخدم `ExecutorService` في Java لتشغيل الاستخراجات بشكل متوازي. +- **إدارة الذاكرة:** غلف كل مثيل `Metadata` بكتلة try‑with‑resources (كما هو موضح) لتحرير الموارد الأصلية بسرعة. +- **تحليل الأداء:** أدوات مثل VisualVM يمكنها اكتشاف عنق الزجاجة في عمليات الإدخال/الإخراج أو تخصيص الكائنات. ## المشكلات الشائعة والحلول -| المشكلة | لماذا يحدث | كيفية الإصلاح | + +| المشكلة | سبب حدوثه | كيفية الإصلاح | |-------|----------------|------------| -| **NullPointerException على `root.getRiffInfoPackage()`** | ملف WAV يفتقر إلى جزء INFO. | تحقق دائمًا من `null` قبل الوصول إلى خصائصه (كما هو موضح في الشيفرة). | -| **OutOfMemoryError عند معالجة العديد من الملفات الكبيرة** | كل مثيل `Metadata` يحتفظ بموارد أصلية. | عالج الملفات على دفعات أصغر وأعد استخدام مجموعة خيوط واحدة. | -| **مسار ملف غير صحيح** | تم حل المسار النسبي من دليل عمل غير صحيح. | استخدم مسارات مطلقة أو اضبط دليل العمل في IDE إلى جذر المشروع. | +| **NullPointerException on `root.getRiffInfoPackage()`** | ملف WAV يفتقر إلى جزء INFO. | تحقق دائمًا من كون القيمة `null` قبل الوصول إلى خصائصه (كما هو موضح في الكود). | +| **OutOfMemoryError when processing many large files** | كل مثيل `Metadata` يحتفظ بموارد أصلية. | عالج الملفات على دفعات أصغر وأعد استخدام مجموعة خيوط واحدة. | +| **Incorrect file path** | المسار النسبي يُحل من دليل عمل خاطئ. | استخدم مسارات مطلقة أو قم بتهيئة دليل العمل في IDE إلى جذر المشروع. | ## الأسئلة المتكررة -**س: ما هي البيانات التعريفية في ملف WAV؟** -ج: تشمل البيانات التعريفية في ملف WAV معلومات مثل اسم الفنان، التعليقات، تاريخ الإنشاء، والبرنامج المستخدم لإنتاج الصوت. +**س: ما هو البيانات التعريفية في ملف WAV؟** +ج: البيانات التعريفية في ملف WAV تشمل معلومات مثل اسم الفنان، التعليقات، تاريخ الإنشاء، والبرنامج المستخدم لإنتاج الصوت. -**س: هل يمكنني تعديل بيانات تعريف WAV باستخدام GroupDocs.Metadata للغة Java؟** -ج: نعم، المكتبة تدعم كلًا من قراءة وكتابة حقول البيانات التعريفية. +**س: هل يمكنني تعديل البيانات التعريفية لملف WAV باستخدام GroupDocs.Metadata للـ Java؟** +ج: نعم، المكتبة تدعم كل من قراءة وكتابة حقول البيانات التعريفية. **س: كيف أتعامل مع الملفات التي لا تحتوي على جزء INFO؟** -ج: تحقق دائمًا من `root.getRiffInfoPackage()` لتكون `null` قبل الوصول إلى خصائصه لتجنب `NullPointerException`. +ج: تحقق دائمًا من `root.getRiffInfoPackage()` إذا كان `null` قبل الوصول إلى خصائصه لتجنب `NullPointerException`. **س: هل يمكن استخراج أنواع أخرى من البيانات التعريفية من ملفات الصوت؟** -ج: بالتأكيد. يعمل GroupDocs.Metadata مع العديد من صيغ الصوت والفيديو، مما يتيح لك استرجاع العلامات من MP3 و FLAC و MP4 وغيرها. +ج: بالتأكيد. GroupDocs.Metadata يعمل مع العديد من صيغ الصوت والفيديو، مما يتيح لك استرجاع العلامات من MP3 و FLAC و MP4 وغيرها. **س: ماذا أفعل إذا نفدت الذاكرة في تطبيقى أثناء معالجة ملفات كبيرة؟** -ج: عالج الملفات على دفعات أصغر، أعد استخدام كائنات `Metadata` بحكمة، وفكر في زيادة حجم heap للـ JVM إذا لزم الأمر. +ج: عالج الملفات على دفعات أصغر، أعد استخدام كائنات `Metadata` بحكمة، وفكر في زيادة حجم الذاكرة heap للـ JVM إذا لزم الأمر. ## الخلاصة -أنت الآن تعرف كيفية **extract wav metadata java** باستخدام GroupDocs.Metadata. تفتح هذه القدرة الباب أمام تطبيقات صوتية أذكى، من الفهرسة إلى التحليل الجنائي. بعد ذلك، استكشف الصيغ المدعومة الأخرى (MP3، FLAC، MP4) أو تعمق في قدرات الكتابة للمكتبة لتعديل البيانات التعريفية مباشرة. +أنت الآن تعرف كيف **get audio metadata java** باستخدام GroupDocs.Metadata. هذه القدرة تفتح الباب لتطبيقات صوتية أذكى، من الفهرسة إلى التحليل الجنائي. بعد ذلك، استكشف الصيغ المدعومة الأخرى (MP3، FLAC، MP4) أو تعمق أكثر في إمكانيات الكتابة للمكتبة لتعديل البيانات التعريفية مباشرة. إذا واجهت أي تحديات، لا تتردد في طلب المساعدة على [منتدى الدعم المجاني](https://forum.groupdocs.com/c/metadata/). ## الموارد -- **التوثيق**: [GroupDocs.Metadata Documentation](https://docs.groupdocs.com/metadata/java/) -- **مرجع API**: [API Reference](https://reference.groupdocs.com/metadata/java/) -- **التنزيل**: [GroupDocs.Metadata Releases](https://releases.groupdocs.com/metadata/java/) -- **GitHub**: [GitHub Repository](https://github.com/groupdocs-metadata/GroupDocs.Metadata-for-Java) +- **التوثيق:** [GroupDocs.Metadata Documentation](https://docs.groupdocs.com/metadata/java/) +- **مرجع API:** [API Reference](https://reference.groupdocs.com/metadata/java/) +- **التنزيل:** [GroupDocs.Metadata Releases](https://releases.groupdocs.com/metadata/java/) +- **GitHub:** [GitHub Repository](https://github.com/groupdocs-metadata/GroupDocs.Metadata-for-Java) --- -**آخر تحديث:** 2026-02-24 -**تم الاختبار مع:** GroupDocs.Metadata 24.12 للغة Java -**المؤلف:** GroupDocs \ No newline at end of file +**آخر تحديث:** 2026-09-02 +**تم الاختبار مع:** GroupDocs.Metadata 24.12 for Java +**المؤلف:** GroupDocs + +```xml + + + repository.groupdocs.com + GroupDocs Repository + https://releases.groupdocs.com/metadata/java/ + + + + + + com.groupdocs + groupdocs-metadata + 24.12 + + +``` + +## دروس ذات صلة + +- [مكتبة بيانات تعريف MP3 للـ Java – دليل كامل مع GroupDocs.Metadata](/metadata/java/audio-video-formats/read-mp3-metadata-groupdocs-metadata-java/) +- [كيفية استخراج بيانات تعريف FLV للـ Java باستخدام GroupDocs.Metadata](/metadata/java/audio-video-formats/flv-metadata-extraction-groupdocs-java/) +- [استخراج بيانات تعريف MP3 للـ Java – دروس GroupDocs.Metadata](/metadata/java/audio-video-formats/) \ No newline at end of file diff --git a/content/chinese/java/audio-video-formats/extract-wav-metadata-groupdocs-java/_index.md b/content/chinese/java/audio-video-formats/extract-wav-metadata-groupdocs-java/_index.md index 90caac7ee..f7f311073 100644 --- a/content/chinese/java/audio-video-formats/extract-wav-metadata-groupdocs-java/_index.md +++ b/content/chinese/java/audio-video-formats/extract-wav-metadata-groupdocs-java/_index.md @@ -1,62 +1,94 @@ --- -date: '2026-02-24' -description: 了解如何使用 GroupDocs.Metadata for Java 高效提取 wav 元数据,这是一款强大的音频文件元数据管理库。 +date: '2026-09-02' +description: 了解如何使用 GroupDocs.Metadata 获取音频元数据(Java),这是一款强大的 Java 库,可提取 WAV 文件元数据,支持批处理和低内存使用。 keywords: +- get audio metadata java - extract wav metadata -- WAV file metadata management -- GroupDocs.Metadata for Java -title: 使用 GroupDocs.Metadata 在 Java 中提取 wav 元数据 – 综合指南 +- GroupDocs.Metadata Java +lastmod: '2026-09-02' +og_description: 了解如何使用 GroupDocs.Metadata 获取音频元数据(Java),这是一款强大的 Java 库,可提取 WAV 文件元数据,支持批处理和低内存使用。 +og_image_alt: Guide showing how to get audio metadata java from WAV files using GroupDocs.Metadata +og_title: 如何使用 GroupDocs.Metadata 获取音频元数据(Java) +schemas: +- author: GroupDocs + dateModified: '2026-09-02' + description: Learn how to get audio metadata java with GroupDocs.Metadata, the robust + Java library for extracting WAV file metadata, supporting batch processing and + low memory usage. + headline: How to get audio metadata java using GroupDocs.Metadata + type: TechArticle +- description: Learn how to get audio metadata java with GroupDocs.Metadata, the robust + Java library for extracting WAV file metadata, supporting batch processing and + low memory usage. + name: How to get audio metadata java using GroupDocs.Metadata + steps: + - name: import required classes + text: 'Make sure the necessary GroupDocs classes are imported:' + - name: initialize Metadata object + text: 'Create a `Metadata` object pointing at your WAV file:' + - name: accessing the RIFF info package + text: 'The `RiffInfoPackage` class exposes the INFO chunk of a WAV file, containing + human‑readable tags. If the INFO chunk exists, pull the individual tag values: + **Explanation:** The code checks for the presence of a `RiffInfoPackage`. When + available, it extracts fields such as `artist`, `comment`, and `s' + type: HowTo +- questions: + - answer: Metadata in a WAV file includes information such as the artist name, comments, + creation date, and the software used to produce the audio. + question: What is metadata in a WAV file? + - answer: Yes, the library supports both reading and writing metadata fields. + question: Can I modify the metadata of a WAV file using GroupDocs.Metadata for + Java? + - answer: Always check `root.getRiffInfoPackage()` for `null` before accessing its + properties to avoid `NullPointerException`. + question: How do I handle files without an INFO chunk? + - answer: Absolutely. GroupDocs.Metadata works with many audio and video formats, + allowing you to retrieve tags from MP3, FLAC, MP4, and more. + question: Is it possible to extract other types of metadata from audio files? + - answer: Process files in smaller batches, reuse `Metadata` objects wisely, and + consider increasing the JVM heap size if necessary. + question: What should I do if my application runs out of memory while processing + large files? + type: FAQPage +tags: +- audio metadata +- GroupDocs.Metadata +- Java audio processing +- WAV metadata extraction +title: 如何使用 GroupDocs.Metadata 获取音频元数据(Java) type: docs url: /zh/java/audio-video-formats/extract-wav-metadata-groupdocs-java/ weight: 1 --- -: +# 如何使用 GroupDocs.Metadata 获取音频元数据 java ---- - -**Last Updated:** 2026-02-24 -**Tested With:** GroupDocs.Metadata 24.12 for Java -**Author:** GroupDocs - -Translate labels. - -Now produce final markdown with Chinese. - -Make sure to keep code block placeholders unchanged. - -Also note the requirement: "For Chinese, ensure proper RTL formatting if needed" Not needed. - -Proceed to construct final answer. - -# 如何使用 GroupDocs.Metadata for Java 提取 WAV 文件元数据 - -如果您需要 **extract wav metadata java**,您来对地方了。在本指南中,我们将逐步讲解使用 Java 中的 GroupDocs.Metadata 库从 WAV 文件中提取详细信息——从艺术家名称到软件标签——的全部内容。无论您是在构建媒体库管理器、数字资产工作流,还是仅仅对音频文件中的隐藏数据感兴趣,本教程都提供了完整、可投入生产的解决方案。 +如果您需要 **获取音频元数据 java**,您来对地方了。在本指南中,我们将逐步讲解使用 GroupDocs.Metadata Java 库从 WAV 文件中提取详细信息——从艺术家名称到软件标签——的全部内容。无论您是构建媒体库管理器、数字资产工作流,还是仅仅探索音频文件中的隐藏数据,本教程都提供了完整的、可投入生产的解决方案。 ## 快速答案 -- **哪个库在 Java 中处理 WAV 元数据?** GroupDocs.Metadata for Java. -- **开发时需要许可证吗?** 免费试用可用于评估;购买许可证可解除所有限制。 -- **需要哪个 Java 版本?** Java 8 或更高。 -- **可以一次处理大量文件吗?** 可以——支持批处理,后文有示例。 -- **内存使用是否是问题?** 及时释放 `Metadata` 对象以保持占用低。 +- **什么库处理 Java 中的 WAV 元数据?** GroupDocs.Metadata for Java. +- **开发是否需要许可证?** 免费试用可用于评估;许可证可消除所有限制。 +- **需要哪个 Java 版本?** Java 8 或更高版本。 +- **我可以一次处理多个文件吗?** 是的——支持批处理,后文有演示。 +- **内存使用是否是一个问题?** 及时释放 `Metadata` 对象以保持占用内存低。 ## 什么是 “extract wav metadata java”? -在 Java 中提取 WAV 元数据是指读取 WAV 音频文件内部的 INFO 块以及其他嵌入的标签。这些标签存储了诸如艺术家、评论、创建日期以及用于生成文件的软件等有价值的细节。访问这些数据可以让您以编程方式对音频资产进行目录编制、搜索或验证。 +在 Java 中提取 WAV 元数据是指读取 WAV 音频文件内部的 INFO 块以及其他嵌入的标签。这些标签存储了诸如艺术家、注释、创建日期以及用于生成文件的软件等有价值的细节。访问这些数据可以让您以编程方式对音频资产进行目录编制、搜索或验证。 ## 为什么使用 GroupDocs.Metadata for Java? -GroupDocs.Metadata 抽象了 RIFF/WAV 文件所需的底层二进制解析,提供了简洁的面向对象 API。它支持数十种音视频格式,具备强大的错误处理能力,并且在 Windows、macOS 和 Linux 环境中表现一致。 +GroupDocs.Metadata 抽象了 RIFF/WAV 文件所需的低层二进制解析,提供了简洁的面向对象 API。它支持 **50+ 音频和视频格式**,提供强大的错误处理,并在 Windows、macOS 和 Linux 环境中保持一致的工作方式。该库能够在不将整个文件加载到内存的情况下处理数百页的文档,即使在普通服务器上也能提供可预测的性能。 ## 前置条件 - **Java Development Kit (JDK)** – 版本 8 或更高。 - **IDE** – IntelliJ IDEA、Eclipse 或您喜欢的任何编辑器。 - **Maven** – 用于依赖管理(可选但推荐)。 -## 设置 GroupDocs.Metadata for Java +## 为 Java 设置 GroupDocs.Metadata ### 安装 #### 使用 Maven -将仓库和依赖添加到您的 `pom.xml`: +在您的 `pom.xml` 中添加仓库和依赖: ```xml @@ -77,13 +109,13 @@ GroupDocs.Metadata 抽象了 RIFF/WAV 文件所需的底层二进制解析,提 ``` #### 直接下载 -如果您不想使用 Maven,可以从 [releases page](https://releases.groupdocs.com/metadata/java/) 下载最新的 JAR 包。 +如果您不想使用 Maven,可以从[发布页面](https://releases.groupdocs.com/metadata/java/)获取最新的 JAR。 ### 获取许可证 -免费试用许可证可在实验时移除评估限制。生产环境请在 GroupDocs 网站购买许可证。 +免费试用许可证在您实验时会移除评估限制。生产环境使用请在 GroupDocs 网站购买许可证。 ### 基本初始化和设置 -库加入类路径后,您可以创建 `Metadata` 实例来打开 WAV 文件: +`Metadata` 是 GroupDocs.Metadata 中的核心类,代表一个文件并提供对其元数据包的访问。一旦库位于您的类路径中,您可以创建 `Metadata` 实例来打开 WAV 文件: ```java import com.groupdocs.metadata.Metadata; @@ -97,24 +129,22 @@ try (Metadata metadata = new Metadata(inputFile)) { ``` ## 如何在 Java 中读取 WAV 元数据 -如果您想了解 **how to read wav metadata**,整个过程归结为三个简单步骤:使用 `Metadata` 加载文件,导航到 `RiffInfoPackage`,然后提取您关心的各个标签值。下面的代码片段以清晰、可投入生产的方式演示了每一步。 - -## 实现指南 +使用 `Metadata` 对象加载目标文件,定位 `RiffInfoPackage`,然后查询所需的各个标签属性。这种三步模式——初始化、包检索和属性提取——覆盖了 **99% 的常见 WAV 元数据场景**,同样适用于批处理任务。 -### 如何提取 wav metadata java – 访问 INFO 块 +## 如何提取 wav metadata java – 访问 INFO 块 +INFO 块包含诸如艺术家、流派和软件等可读标签。下面我们将检索最常见的字段。 -#### 概述 -INFO 块保存了可读的标签,如艺术家、流派和软件。下面我们将检索最常用的字段。 +INFO 块是 RIFF 结构的标准组成部分,用于存储文本元数据。使用 GroupDocs.Metadata,您可以读取诸如 `artist`、`genre`、`software`、`comment` 和 `creationDate` 等字段。库将这些值作为字符串返回,您可以通过检查 null 来处理缺失的标签。此方法适用于任何包含 INFO 块的 WAV 文件。 -##### 步骤 1:导入所需类 -确保导入了必要的 GroupDocs 类: +### 步骤 1:导入所需类 +确保已导入必要的 GroupDocs 类: ```java import com.groupdocs.metadata.Metadata; import com.groupdocs.metadata.core.WavRootPackage; ``` -##### 步骤 2:初始化 Metadata 对象 +### 步骤 2:初始化 Metadata 对象 创建指向您的 WAV 文件的 `Metadata` 对象: ```java @@ -128,8 +158,8 @@ try (Metadata metadata = new Metadata(inputFile)) { } ``` -##### 步骤 3:访问 RIFF Info 包 -如果 INFO 块存在,提取各个标签值: +### 步骤 3:访问 RIFF 信息包 +`RiffInfoPackage` 类公开 WAV 文件的 INFO 块,包含可读标签。如果 INFO 块存在,提取各个标签值: ```java if (root.getRiffInfoPackage() != null) { @@ -145,61 +175,87 @@ if (root.getRiffInfoPackage() != null) { } ``` -**说明:** 代码会检查是否存在 `RiffInfoPackage`。如果可用,它会直接从 WAV 文件的 INFO 块中提取 `artist`、`comment`、`software` 等字段。 +**说明:** 代码检查 `RiffInfoPackage` 是否存在。若存在,它会直接从 WAV 文件的 INFO 块中提取 `artist`、`comment`、`software` 等字段。 **故障排除提示** - **缺少元数据:** 并非所有 WAV 文件都包含 INFO 块。可使用 Audacity 或 MediaInfo 等工具进行验证。 - **文件路径错误:** 确保路径是绝对路径或相对于项目根目录,并且文件可读。 ## 实际应用 -提取的元数据可以驱动许多真实场景: +提取的元数据可以驱动许多实际场景: + 1. **媒体管理系统** – 自动标记并组织大型音频库。 -2. **数字资产管理** – 通过索引评论、版权和流派等信息提升搜索能力。 -3. **音频取证** – 识别创建软件或工程师,以用于调查目的。 +2. **数字资产管理** – 通过索引注释、版权和流派来增强搜索。 +3. **音频取证** – 确定创建软件或工程师,以用于调查目的。 + +## 性能考虑因素 +在处理成千上万的文件时,请记住以下提示: -## 性能考虑 -在处理成千上万文件时,请记住以下要点: -- **批处理:** 使用 Java 的 `ExecutorService` 并行执行提取。 -- **内存管理:** 将每个 `Metadata` 实例放在 try‑with‑resources 块中(如示例所示),及时释放本机资源。 -- **性能分析:** 使用 VisualVM 等工具定位 I/O 或对象分配的瓶颈。 +- **批处理:** 使用 Java 的 `ExecutorService` 并行运行提取。 +- **内存管理:** 将每个 `Metadata` 实例包装在 try‑with‑resources 块中(如示例所示),以及时释放本机资源。 +- **性能分析:** 使用 VisualVM 等工具可以发现 I/O 或对象分配的瓶颈。 ## 常见问题及解决方案 -| Issue | Why It Happens | How to Fix | +| 问题 | 原因 | 解决办法 | |-------|----------------|------------| -| **NullPointerException on `root.getRiffInfoPackage()`** | WAV 文件缺少 INFO 块。 | 在访问属性之前始终检查是否为 `null`(如代码所示)。 | -| **OutOfMemoryError when processing many large files** | 每个 `Metadata` 实例持有本机资源。 | 将文件分成更小的批次处理,并复用单个线程池。 | -| **Incorrect file path** | 相对路径在错误的工作目录下解析。 | 使用绝对路径或将 IDE 的工作目录配置为项目根目录。 | +| **NullPointerException on `root.getRiffInfoPackage()`** | WAV 文件缺少 INFO 块。 | 在访问其属性之前始终检查是否为 `null`(如代码所示)。 | +| **OutOfMemoryError when processing many large files** | 每个 `Metadata` 实例占用本机资源。 | 将文件分成更小的批次处理,并复用单个线程池。 | +| **Incorrect file path** | 相对路径解析自错误的工作目录。 | 使用绝对路径或将 IDE 的工作目录配置为项目根目录。 | ## 常见问题 **Q: WAV 文件中的元数据是什么?** -A: WAV 文件的元数据包括艺术家名称、评论、创建日期以及用于生成音频的软件等信息。 +A: WAV 文件中的元数据包括艺术家名称、注释、创建日期以及用于生成音频的软件等信息。 **Q: 我可以使用 GroupDocs.Metadata for Java 修改 WAV 文件的元数据吗?** A: 可以,库同时支持读取和写入元数据字段。 **Q: 如何处理没有 INFO 块的文件?** -A: 在访问 `root.getRiffInfoPackage()` 前务必检查是否为 `null`,以避免 `NullPointerException`。 +A: 在访问属性之前,始终检查 `root.getRiffInfoPackage()` 是否为 `null`,以避免 `NullPointerException`。 -**Q: 能否从其他类型的音频文件中提取元数据?** -A: 当然可以。GroupDocs.Metadata 支持多种音视频格式,您可以从 MP3、FLAC、MP4 等文件中检索标签。 +**Q: 能否从音频文件中提取其他类型的元数据?** +A: 当然可以。GroupDocs.Metadata 支持多种音频和视频格式,您可以检索 MP3、FLAC、MP4 等文件的标签。 -**Q: 如果我的应用在处理大文件时内存不足该怎么办?** -A: 将文件分成更小的批次处理,合理复用 `Metadata` 对象,并在必要时增大 JVM 堆大小。 +**Q: 如果在处理大文件时应用程序内存不足,我该怎么办?** +A: 将文件分成更小的批次处理,合理复用 `Metadata` 对象,并在必要时考虑增大 JVM 堆大小。 ## 结论 -现在您已经掌握了使用 GroupDocs.Metadata **extract wav metadata java** 的方法。这一能力为更智能的音频应用打开了大门,从目录编制到取证分析皆可实现。接下来,您可以探索其他受支持的格式(MP3、FLAC、MP4),或深入了解库的写入功能,直接编辑元数据。 +您现在已经了解如何使用 GroupDocs.Metadata **获取音频元数据 java**。此功能为更智能的音频应用打开了大门,从目录管理到取证分析皆可受益。接下来,您可以探索其他受支持的格式(MP3、FLAC、MP4),或深入了解库的写入功能,以直接编辑元数据。 -如果遇到任何挑战,欢迎在 [free support forum](https://forum.groupdocs.com/c/metadata/) 提问获取帮助。 +如果遇到任何挑战,欢迎在[免费支持论坛](https://forum.groupdocs.com/c/metadata/)寻求帮助。 ## 资源 -- **文档**: [GroupDocs.Metadata Documentation](https://docs.groupdocs.com/metadata/java/) -- **API 参考**: [API Reference](https://reference.groupdocs.com/metadata/java/) -- **下载**: [GroupDocs.Metadata Releases](https://releases.groupdocs.com/metadata/java/) -- **GitHub**: [GitHub Repository](https://github.com/groupdocs-metadata/GroupDocs.Metadata-for-Java) +- **文档:** [GroupDocs.Metadata 文档](https://docs.groupdocs.com/metadata/java/) +- **API 参考:** [API 参考](https://reference.groupdocs.com/metadata/java/) +- **下载:** [GroupDocs.Metadata 发布](https://releases.groupdocs.com/metadata/java/) +- **GitHub:** [GitHub 仓库](https://github.com/groupdocs-metadata/GroupDocs.Metadata-for-Java) --- -**最后更新:** 2026-02-24 +**最后更新:** 2026-09-02 **测试环境:** GroupDocs.Metadata 24.12 for Java -**作者:** GroupDocs \ No newline at end of file +**作者:** GroupDocs + +```xml + + + repository.groupdocs.com + GroupDocs Repository + https://releases.groupdocs.com/metadata/java/ + + + + + + com.groupdocs + groupdocs-metadata + 24.12 + + +``` + +## 相关教程 + +- [Java MP3 元数据库 – 使用 GroupDocs.Metadata 的完整指南](/metadata/java/audio-video-formats/read-mp3-metadata-groupdocs-metadata-java/) +- [如何使用 GroupDocs.Metadata 提取 FLV 元数据 Java](/metadata/java/audio-video-formats/flv-metadata-extraction-groupdocs-java/) +- [提取 MP3 元数据 Java – GroupDocs.Metadata 教程](/metadata/java/audio-video-formats/) \ No newline at end of file diff --git a/content/czech/java/audio-video-formats/extract-wav-metadata-groupdocs-java/_index.md b/content/czech/java/audio-video-formats/extract-wav-metadata-groupdocs-java/_index.md index 635ffbe32..f61525cac 100644 --- a/content/czech/java/audio-video-formats/extract-wav-metadata-groupdocs-java/_index.md +++ b/content/czech/java/audio-video-formats/extract-wav-metadata-groupdocs-java/_index.md @@ -1,42 +1,93 @@ --- -date: '2026-02-24' -description: Naučte se, jak efektivně extrahovat metadata WAV v Javě pomocí GroupDocs.Metadata - pro Javu, výkonné knihovny pro správu metadat audio souborů. +date: '2026-09-02' +description: Naučte se, jak získat audio metadata v Javě pomocí GroupDocs.Metadata, + robustní knihovny Java pro extrakci metadata souborů WAV, podporující dávkové zpracování + a nízkou spotřebu paměti. keywords: +- get audio metadata java - extract wav metadata -- WAV file metadata management -- GroupDocs.Metadata for Java -title: Extrahování metadat WAV v Javě pomocí GroupDocs.Metadata – komplexní průvodce +- GroupDocs.Metadata Java +lastmod: '2026-09-02' +og_description: Naučte se, jak získat audio metadata v Javě pomocí GroupDocs.Metadata, + robustní knihovny Java pro extrakci metadata souborů WAV, podporující dávkové zpracování + a nízkou spotřebu paměti. +og_image_alt: Guide showing how to get audio metadata java from WAV files using GroupDocs.Metadata +og_title: Jak získat audio metadata v Javě pomocí GroupDocs.Metadata +schemas: +- author: GroupDocs + dateModified: '2026-09-02' + description: Learn how to get audio metadata java with GroupDocs.Metadata, the robust + Java library for extracting WAV file metadata, supporting batch processing and + low memory usage. + headline: How to get audio metadata java using GroupDocs.Metadata + type: TechArticle +- description: Learn how to get audio metadata java with GroupDocs.Metadata, the robust + Java library for extracting WAV file metadata, supporting batch processing and + low memory usage. + name: How to get audio metadata java using GroupDocs.Metadata + steps: + - name: import required classes + text: 'Make sure the necessary GroupDocs classes are imported:' + - name: initialize Metadata object + text: 'Create a `Metadata` object pointing at your WAV file:' + - name: accessing the RIFF info package + text: 'The `RiffInfoPackage` class exposes the INFO chunk of a WAV file, containing + human‑readable tags. If the INFO chunk exists, pull the individual tag values: + **Explanation:** The code checks for the presence of a `RiffInfoPackage`. When + available, it extracts fields such as `artist`, `comment`, and `s' + type: HowTo +- questions: + - answer: Metadata in a WAV file includes information such as the artist name, comments, + creation date, and the software used to produce the audio. + question: What is metadata in a WAV file? + - answer: Yes, the library supports both reading and writing metadata fields. + question: Can I modify the metadata of a WAV file using GroupDocs.Metadata for + Java? + - answer: Always check `root.getRiffInfoPackage()` for `null` before accessing its + properties to avoid `NullPointerException`. + question: How do I handle files without an INFO chunk? + - answer: Absolutely. GroupDocs.Metadata works with many audio and video formats, + allowing you to retrieve tags from MP3, FLAC, MP4, and more. + question: Is it possible to extract other types of metadata from audio files? + - answer: Process files in smaller batches, reuse `Metadata` objects wisely, and + consider increasing the JVM heap size if necessary. + question: What should I do if my application runs out of memory while processing + large files? + type: FAQPage +tags: +- audio metadata +- GroupDocs.Metadata +- Java audio processing +- WAV metadata extraction +title: Jak získat audio metadata v Javě pomocí GroupDocs.Metadata type: docs url: /cs/java/audio-video-formats/extract-wav-metadata-groupdocs-java/ weight: 1 --- -. +# Jak získat audio metadata v Javě pomocí GroupDocs.Metadata -Now craft final answer.# Jak extrahovat metadata WAV souboru pomocí GroupDocs.Metadata pro Java - -Pokud potřebujete **extract wav metadata java**, jste na správném místě. V tomto průvodci vás provedeme vším, co potřebujete vědět, abyste získali podrobné informace – od jmen umělců po softwarové značky – z WAV souborů pomocí knihovny GroupDocs.Metadata v Javě. Ať už budujete správce mediální knihovny, workflow pro digitální aktiva, nebo jste jen zvědaví na skryté údaje ve vašich audio souborech, tento tutoriál vám poskytne kompletní, produkčně připravené řešení. +Pokud potřebujete **získat audio metadata java**, jste na správném místě. V tomto průvodci projdeme vše, co potřebujete vědět, abyste pomocí knihovny GroupDocs.Metadata pro Javu získali podrobné informace – od jmen umělců po značky softwaru – z WAV souborů. Ať už vytváříte správce mediální knihovny, workflow digitálních aktiv, nebo jen zkoumáte skrytá data v audio souborech, tento tutoriál poskytuje kompletní, produkčně připravené řešení. ## Rychlé odpovědi -- **Která knihovna zpracovává metadata WAV v Javě?** GroupDocs.Metadata for Java. -- **Potřebuji licenci pro vývoj?** Bezplatná zkušební licence funguje pro hodnocení; licence odstraňuje všechna omezení. -- **Jaká verze Javy je vyžadována?** Java 8 nebo novější. -- **Mohu zpracovávat mnoho souborů najednou?** Ano – podporováno dávkové zpracování, které je ukázáno později. -- **Je spotřeba paměti problém?** Okamžitě uvolňujte objekty `Metadata`, aby byl paměťový otisk nízký. +- **Která knihovna zpracovává WAV metadata v Javě?** GroupDocs.Metadata for Java. +- **Potřebuji licenci pro vývoj?** Bezplatná zkušební verze funguje pro hodnocení; licence odstraňuje všechna omezení. +- **Jaká verze Javy je požadována?** Java 8 nebo novější. +- **Mohu zpracovávat mnoho souborů najednou?** Ano — dávkové zpracování je podporováno a bude ukázáno později. +- **Je spotřeba paměti problém?** Uvolněte objekty `Metadata` okamžitě, aby byl otisk paměti nízký. ## Co je “extract wav metadata java”? -Extrahování metadata WAV v Javě znamená čtení INFO chunku a dalších vložených značek uvnitř audio souboru WAV. Tyto značky ukládají cenné údaje, jako je umělec, komentáře, datum vytvoření a software použité k vytvoření souboru. Přístup k těmto datům vám umožní katalogizovat, vyhledávat nebo programově ověřovat audio aktiva. +Extrahování WAV metadata v Javě znamená čtení INFO chunku a dalších vložených značek uvnitř WAV audio souboru. Tyto značky ukládají cenné podrobnosti, jako je umělec, komentáře, datum vytvoření a software použitý k vytvoření souboru. Přístup k těmto datům vám umožní katalogizovat, vyhledávat nebo programově ověřovat audio aktiva. -## Proč použít GroupDocs.Metadata pro Java? -GroupDocs.Metadata abstrahuje nízkoúrovňové binární parsování potřebné pro soubory RIFF/WAV a poskytuje čisté, objektově orientované API. Podporuje desítky audio a video formátů, nabízí robustní zpracování chyb a funguje konzistentně napříč Windows, macOS a Linux prostředími. +## Proč použít GroupDocs.Metadata pro Javu? +GroupDocs.Metadata abstrahuje nízkoúrovňové binární parsování potřebné pro soubory RIFF/WAV a poskytuje čisté, objektově orientované API. Podporuje **více než 50 audio a video formátů**, nabízí robustní zpracování chyb a funguje konzistentně napříč Windows, macOS a Linux prostředími. Knihovna dokáže zpracovat stovky stránek dokumentů, aniž by načítala celý soubor do paměti, což zajišťuje předvídatelný výkon i na skromných serverech. -## Požadavky +## Předpoklady - **Java Development Kit (JDK)** – verze 8 nebo vyšší. - **IDE** – IntelliJ IDEA, Eclipse nebo jakýkoli editor, který preferujete. - **Maven** – pro správu závislostí (volitelné, ale doporučené). -## Nastavení GroupDocs.Metadata pro Java +## Nastavení GroupDocs.Metadata pro Javu ### Instalace @@ -68,7 +119,7 @@ Pokud raději nepoužíváte Maven, stáhněte si nejnovější JAR ze [stránky Bezplatná zkušební licence odstraňuje omezení hodnocení, zatímco experimentujete. Pro produkční použití zakupte licenci na webu GroupDocs. ### Základní inicializace a nastavení -Jakmile je knihovna na vašem classpath, můžete vytvořit instanci `Metadata` pro otevření WAV souboru: +`Metadata` je hlavní třída v GroupDocs.Metadata, která představuje soubor a poskytuje přístup k jeho balíčkům metadata. Jakmile je knihovna ve vašem classpath, můžete vytvořit instanci `Metadata` pro otevření WAV souboru: ```java import com.groupdocs.metadata.Metadata; @@ -81,17 +132,15 @@ try (Metadata metadata = new Metadata(inputFile)) { } ``` -## Jak číst metadata WAV v Javě -Pokud se ptáte **how to read wav metadata**, proces se zjednodušuje na tři jednoduché kroky: načíst soubor pomocí `Metadata`, přejít na `RiffInfoPackage` a získat jednotlivé hodnoty značek, které vás zajímají. Níže uvedené úryvky kódu demonstrují každý krok jasným, produkčně připraveným způsobem. - -## Průvodce implementací +## Jak číst WAV metadata v Javě +Načtěte cílový soubor pomocí objektu `Metadata`, najděte `RiffInfoPackage` a poté dotazujte jednotlivé vlastnosti značek, které potřebujete. Tento tříkrokový vzor — inicializace, získání balíčku a extrakce vlastností — pokrývá **99 % běžných scénářů WAV metadata** a funguje i pro dávkové úlohy. -### Jak extrahovat wav metadata java – Přístup k INFO chunku +## Jak extrahovat wav metadata java – přístup k INFO chunku +INFO chunk obsahuje lidsky čitelné značky jako umělec, žánr a software. Níže získáme nejčastější pole. -#### Přehled -INFO chunk obsahuje lidsky čitelné značky, jako je umělec, žánr a software. Níže získáme nejčastější pole. +INFO chunk je standardní část struktury RIFF, která ukládá textová metadata. Pomocí GroupDocs.Metadata můžete číst pole jako `artist`, `genre`, `software`, `comment` a `creationDate`. Knihovna vrací tyto hodnoty jako řetězce a můžete ošetřit chybějící značky kontrolou na `null`. Tento přístup funguje pro jakýkoli WAV soubor, který obsahuje INFO chunk. -##### Krok 1: Importovat požadované třídy +### Krok 1: import požadovaných tříd Ujistěte se, že jsou importovány potřebné třídy GroupDocs: ```java @@ -99,7 +148,7 @@ import com.groupdocs.metadata.Metadata; import com.groupdocs.metadata.core.WavRootPackage; ``` -##### Krok 2: Inicializovat objekt Metadata +### Krok 2: inicializovat objekt Metadata Vytvořte objekt `Metadata` ukazující na váš WAV soubor: ```java @@ -113,8 +162,8 @@ try (Metadata metadata = new Metadata(inputFile)) { } ``` -##### Krok 3: Přístup k RIFF Info balíčku -Pokud INFO chunk existuje, získávejte jednotlivé hodnoty značek: +### Krok 3: přístup k balíčku RIFF info +Třída `RiffInfoPackage` vystavuje INFO chunk WAV souboru, který obsahuje lidsky čitelné značky. Pokud INFO chunk existuje, načtěte jednotlivé hodnoty značek: ```java if (root.getRiffInfoPackage() != null) { @@ -132,59 +181,81 @@ if (root.getRiffInfoPackage() != null) { **Explanation:** Kód kontroluje přítomnost `RiffInfoPackage`. Pokud je k dispozici, extrahuje pole jako `artist`, `comment` a `software` přímo z INFO chunku WAV souboru. -**Troubleshooting Tips** -- **Missing Metadata:** Ne všechny WAV soubory obsahují INFO chunk. Ověřte pomocí nástroje jako Audacity nebo MediaInfo. -- **File Path Errors:** Ujistěte se, že cesta je absolutní nebo relativní k kořenu projektu a že soubor je čitelný. +**Troubleshooting tips** +- **Missing metadata:** Ne všechny WAV soubory obsahují INFO chunk. Ověřte pomocí nástroje jako Audacity nebo MediaInfo. +- **File path errors:** Ujistěte se, že cesta je absolutní nebo relativní k kořenu projektu a že soubor je čitelný. ## Praktické aplikace -1. **Media Management Systems** – Automatické označování a organizace velkých audio knihoven. -2. **Digital Asset Management** – Vylepšení vyhledávání indexováním komentářů, autorských práv a žánru. -3. **Audio Forensics** – Identifikace softwaru nebo inženýra, který soubor vytvořil, pro vyšetřovací účely. +Extrahovaná metadata mohou pohánět mnoho reálných scénářů: +1. **Systémy správy médií** – Automatické označování a organizace velkých audio knihoven. +2. **Digitální správa aktiv** – Vylepšení vyhledávání indexováním komentářů, autorských práv a žánru. +3. **Audio forenzika** – Identifikace softwaru nebo inženýra, který soubor vytvořil, pro vyšetřovací účely. ## Úvahy o výkonu -Při zpracování tisíců souborů mějte na paměti tyto tipy: -- **Batch Processing:** Použijte `ExecutorService` v Javě k paralelnímu spouštění extrakcí. -- **Memory Management:** Zabalte každou instanci `Metadata` do bloku try‑with‑resources (jak je ukázáno), aby se nativní zdroje okamžitě uvolnily. -- **Profiling:** Nástroje jako VisualVM mohou odhalit úzká místa v I/O nebo alokaci objektů. - -## Běžné problémy a řešení - -| Problém | Proč k tomu dochází | Jak opravit | -|-------|----------------|------------| -| **NullPointerException on `root.getRiffInfoPackage()`** | WAV soubor postrádá INFO chunk. | Vždy kontrolujte `null` před přístupem k jeho vlastnostem (jak je ukázáno v kódu). | -| **OutOfMemoryError when processing many large files** | Každá instance `Metadata` drží nativní zdroje. | Zpracovávejte soubory v menších dávkách a znovu použijte jeden thread pool. | +Při zpracování tisíců souborů mějte na paměti: +- **Dávkové zpracování:** Použijte `ExecutorService` v Javě pro paralelní extrakce. +- **Správa paměti:** Zabalte každou instanci `Metadata` do bloku try‑with‑resources (jak je ukázáno), aby se nativní zdroje uvolnily okamžitě. +- **Profilování:** Nástroje jako VisualVM mohou odhalit úzká místa v I/O nebo alokaci objektů. + +## Časté problémy a řešení +| Problém | Proč se to děje | Jak opravit | +|---------|----------------|------------| +| **NullPointerException on `root.getRiffInfoPackage()`** | WAV soubor neobsahuje INFO chunk. | Vždy kontrolujte `null` před přístupem k jeho vlastnostem (jak je ukázáno v kódu). | +| **OutOfMemoryError when processing many large files** | Každá instance `Metadata` drží nativní zdroje. | Zpracovávejte soubory v menších dávkách a znovu použijte jediný thread pool. | | **Incorrect file path** | Relativní cesta je vyřešena z nesprávného pracovního adresáře. | Používejte absolutní cesty nebo nakonfigurujte pracovní adresář IDE na kořen projektu. | ## Často kladené otázky -**Q: Co jsou metadata v souboru WAV?** -A: Metadata v souboru WAV zahrnují informace jako jméno umělce, komentáře, datum vytvoření a software použitý k vytvoření audia. +**Q: What is metadata in a WAV file?** +A: Metadata ve WAV souboru zahrnují informace jako jméno umělce, komentáře, datum vytvoření a software použitý k vytvoření audia. -**Q: Mohu pomocí GroupDocs.Metadata pro Java upravovat metadata WAV souboru?** -A: Ano, knihovna podporuje jak čtení, tak zápis polí metadata. +**Q: Can I modify the metadata of a WAV file using GroupDocs.Metadata for Java?** +A: Ano, knihovna podporuje jak čtení, tak zápis metadatových polí. -**Q: Jak mám zacházet se soubory bez INFO chunku?** +**Q: How do I handle files without an INFO chunk?** A: Vždy kontrolujte `root.getRiffInfoPackage()` na `null` před přístupem k jeho vlastnostem, abyste se vyhnuli `NullPointerException`. -**Q: Je možné extrahovat jiné typy metadata z audio souborů?** +**Q: Is it possible to extract other types of metadata from audio files?** A: Rozhodně. GroupDocs.Metadata pracuje s mnoha audio a video formáty, což vám umožní získávat značky z MP3, FLAC, MP4 a dalších. -**Q: Co mám dělat, když moje aplikace dojde k nedostatku paměti při zpracování velkých souborů?** +**Q: What should I do if my application runs out of memory while processing large files?** A: Zpracovávejte soubory v menších dávkách, rozumně znovu používejte objekty `Metadata` a zvažte zvýšení velikosti haldy JVM, pokud je to nutné. ## Závěr -Nyní víte, jak **extract wav metadata java** pomocí GroupDocs.Metadata. Tato schopnost otevírá dveře k inteligentnějším audio aplikacím, od katalogizace po forenzní analýzu. Dále prozkoumejte další podporované formáty (MP3, FLAC, MP4) nebo se ponořte hlouběji do možností zápisu knihovny pro přímou úpravu metadata. +Nyní víte, jak **získat audio metadata java** pomocí GroupDocs.Metadata. Tato schopnost otevírá dveře k chytřejším audio aplikacím, od katalogizace po forenzní analýzu. Dále prozkoumejte další podporované formáty (MP3, FLAC, MP4) nebo se ponořte hlouběji do možností zápisu knihovny pro přímou úpravu metadat. Pokud narazíte na jakékoli potíže, neváhejte požádat o pomoc na [free support forum](https://forum.groupdocs.com/c/metadata/). ## Zdroje -- **Documentation**: [GroupDocs.Metadata Documentation](https://docs.groupdocs.com/metadata/java/) -- **API Reference**: [API Reference](https://reference.groupdocs.com/metadata/java/) -- **Download**: [GroupDocs.Metadata Releases](https://releases.groupdocs.com/metadata/java/) -- **GitHub**: [GitHub Repository](https://github.com/groupdocs-metadata/GroupDocs.Metadata-for-Java) +- **Documentation:** [GroupDocs.Metadata Documentation](https://docs.groupdocs.com/metadata/java/) +- **API reference:** [API Reference](https://reference.groupdocs.com/metadata/java/) +- **Download:** [GroupDocs.Metadata Releases](https://releases.groupdocs.com/metadata/java/) +- **GitHub:** [GitHub Repository](https://github.com/groupdocs-metadata/GroupDocs.Metadata-for-Java) ---- - -**Poslední aktualizace:** 2026-02-24 +**Poslední aktualizace:** 2026-09-02 **Testováno s:** GroupDocs.Metadata 24.12 for Java -**Autor:** GroupDocs \ No newline at end of file +**Autor:** GroupDocs + +```xml + + + repository.groupdocs.com + GroupDocs Repository + https://releases.groupdocs.com/metadata/java/ + + + + + + com.groupdocs + groupdocs-metadata + 24.12 + + +``` + +## Související tutoriály + +- [Java MP3 Metadata Library – Kompletní průvodce s GroupDocs.Metadata](/metadata/java/audio-video-formats/read-mp3-metadata-groupdocs-metadata-java/) +- [How to Extract FLV Metadata Java with GroupDocs.Metadata](/metadata/java/audio-video-formats/flv-metadata-extraction-groupdocs-java/) +- [Extract MP3 Metadata Java – GroupDocs.Metadata Tutorials](/metadata/java/audio-video-formats/) \ No newline at end of file diff --git a/content/dutch/java/audio-video-formats/extract-wav-metadata-groupdocs-java/_index.md b/content/dutch/java/audio-video-formats/extract-wav-metadata-groupdocs-java/_index.md index 9a293d500..e918b6d9a 100644 --- a/content/dutch/java/audio-video-formats/extract-wav-metadata-groupdocs-java/_index.md +++ b/content/dutch/java/audio-video-formats/extract-wav-metadata-groupdocs-java/_index.md @@ -1,52 +1,97 @@ --- -date: '2026-02-24' -description: Leer hoe je wav-metadata efficiënt kunt extraheren met Java met behulp - van GroupDocs.Metadata voor Java, de krachtige bibliotheek voor het beheer van audio‑bestandsmetadata. +date: '2026-09-02' +description: Leer hoe u audio-metadata in Java kunt ophalen met GroupDocs.Metadata, + de robuuste Java-bibliotheek voor het extraheren van WAV-bestandsmetadata, met ondersteuning + voor batchverwerking en een laag geheugenverbruik. keywords: +- get audio metadata java - extract wav metadata -- WAV file metadata management -- GroupDocs.Metadata for Java -title: Wav-metadata extraheren in Java met GroupDocs.Metadata – Een uitgebreide gids +- GroupDocs.Metadata Java +lastmod: '2026-09-02' +og_description: Leer hoe u audio-metadata in Java kunt ophalen met GroupDocs.Metadata, + de robuuste Java-bibliotheek voor het extraheren van WAV-bestandsmetadata, met ondersteuning + voor batchverwerking en een laag geheugenverbruik. +og_image_alt: Guide showing how to get audio metadata java from WAV files using GroupDocs.Metadata +og_title: Hoe audio-metadata opvragen in Java met GroupDocs.Metadata +schemas: +- author: GroupDocs + dateModified: '2026-09-02' + description: Learn how to get audio metadata java with GroupDocs.Metadata, the robust + Java library for extracting WAV file metadata, supporting batch processing and + low memory usage. + headline: How to get audio metadata java using GroupDocs.Metadata + type: TechArticle +- description: Learn how to get audio metadata java with GroupDocs.Metadata, the robust + Java library for extracting WAV file metadata, supporting batch processing and + low memory usage. + name: How to get audio metadata java using GroupDocs.Metadata + steps: + - name: import required classes + text: 'Make sure the necessary GroupDocs classes are imported:' + - name: initialize Metadata object + text: 'Create a `Metadata` object pointing at your WAV file:' + - name: accessing the RIFF info package + text: 'The `RiffInfoPackage` class exposes the INFO chunk of a WAV file, containing + human‑readable tags. If the INFO chunk exists, pull the individual tag values: + **Explanation:** The code checks for the presence of a `RiffInfoPackage`. When + available, it extracts fields such as `artist`, `comment`, and `s' + type: HowTo +- questions: + - answer: Metadata in a WAV file includes information such as the artist name, comments, + creation date, and the software used to produce the audio. + question: What is metadata in a WAV file? + - answer: Yes, the library supports both reading and writing metadata fields. + question: Can I modify the metadata of a WAV file using GroupDocs.Metadata for + Java? + - answer: Always check `root.getRiffInfoPackage()` for `null` before accessing its + properties to avoid `NullPointerException`. + question: How do I handle files without an INFO chunk? + - answer: Absolutely. GroupDocs.Metadata works with many audio and video formats, + allowing you to retrieve tags from MP3, FLAC, MP4, and more. + question: Is it possible to extract other types of metadata from audio files? + - answer: Process files in smaller batches, reuse `Metadata` objects wisely, and + consider increasing the JVM heap size if necessary. + question: What should I do if my application runs out of memory while processing + large files? + type: FAQPage +tags: +- audio metadata +- GroupDocs.Metadata +- Java audio processing +- WAV metadata extraction +title: Hoe audio-metadata opvragen in Java met GroupDocs.Metadata type: docs url: /nl/java/audio-video-formats/extract-wav-metadata-groupdocs-java/ weight: 1 --- - => "**Getest met:**" +# Hoe audio-metadata opvragen in Java met GroupDocs.Metadata -**Author:** => "**Auteur:**" - -Keep dates unchanged. - -Now ensure we preserve all markdown formatting, code placeholders, links, etc. - -Now produce final content.# Hoe WAV-bestandsmetadata te extraheren met GroupDocs.Metadata voor Java - -Als je **extract wav metadata java** nodig hebt, ben je op de juiste plek. In deze gids lopen we alles door wat je moet weten om gedetailleerde informatie—van artiestnamen tot software‑tags—uit WAV‑bestanden te halen met behulp van de GroupDocs.Metadata‑bibliotheek in Java. Of je nu een mediabibliotheek‑manager, een digitale‑asset‑workflow bouwt, of gewoon nieuwsgierig bent naar de verborgen gegevens in je audiobestanden, deze tutorial biedt een volledige, productie‑klare oplossing. +Als je **audio-metadata java** wilt ophalen, ben je op de juiste plek. In deze gids lopen we alles door wat je moet weten om gedetailleerde informatie—van artiestnamen tot software‑tags—uit WAV‑bestanden te halen met de GroupDocs.Metadata‑bibliotheek voor Java. Of je nu een mediabibliotheek‑manager, een digitale‑asset‑workflow bouwt, of gewoon verborgen gegevens in audiobestanden verkent, deze tutorial biedt een complete, productie‑klare oplossing. ## Snelle antwoorden - **Welke bibliotheek verwerkt WAV-metadata in Java?** GroupDocs.Metadata for Java. -- **Heb ik een licentie nodig voor ontwikkeling?** Een gratis proefversie werkt voor evaluatie; een licentie verwijdert alle beperkingen. +- **Heb ik een licentie nodig voor ontwikkeling?** Een gratis proeflicentie werkt voor evaluatie; een licentie verwijdert alle beperkingen. - **Welke Java‑versie is vereist?** Java 8 of hoger. - **Kan ik veel bestanden tegelijk verwerken?** Ja—batchverwerking wordt ondersteund en later gedemonstreerd. -- **Is geheugengebruik een zorg?** Ruim `Metadata`‑objecten direct op om de footprint laag te houden. +- **Is geheugengebruik een zorg?** Verwijder `Metadata`‑objecten direct om de geheugenvoetafdruk laag te houden. ## Wat is “extract wav metadata java”? -Het extraheren van WAV-metadata in Java betekent het lezen van de INFO‑chunk en andere ingebedde tags in een WAV‑audiobestand. Deze tags bevatten waardevolle details zoals de artiest, opmerkingen, aanmaakdatum en de software die is gebruikt om het bestand te produceren. Toegang tot deze gegevens stelt je in staat om audio‑assets programmatically te catalogiseren, zoeken of valideren. +Het extraheren van WAV‑metadata in Java betekent het lezen van de INFO‑chunk en andere ingebedde tags in een WAV‑audiobestand. Deze tags slaan waardevolle details op, zoals de artiest, opmerkingen, aanmaakdatum en de software die is gebruikt om het bestand te produceren. Toegang tot deze gegevens stelt je in staat om audio‑assets programmatisch te catalogiseren, doorzoeken of valideren. ## Waarom GroupDocs.Metadata voor Java gebruiken? -GroupDocs.Metadata abstraheert de low‑level binaire parsing die nodig is voor RIFF/WAV‑bestanden en biedt een schone, object‑georiënteerde API. Het ondersteunt tientallen audio‑ en videoformaten, biedt robuuste foutafhandeling en werkt consistent op Windows, macOS en Linux‑omgevingen. +GroupDocs.Metadata abstraheert de low‑level binaire parsing die nodig is voor RIFF/WAV‑bestanden en biedt een schone, object‑georiënteerde API. Het ondersteunt **50+ audio‑ en videoformaten**, biedt robuuste foutafhandeling en werkt consistent op Windows, macOS en Linux‑omgevingen. De bibliotheek kan documenten van honderden pagina's verwerken zonder het volledige bestand in het geheugen te laden, waardoor voorspelbare prestaties worden geleverd, zelfs op bescheiden servers. ## Voorvereisten - **Java Development Kit (JDK)** – versie 8 of hoger. -- **IDE** – IntelliJ IDEA, Eclipse, of elke editor die je verkiest. -- **Maven** – voor dependency‑beheer (optioneel maar aanbevolen). +- **IDE** – IntelliJ IDEA, Eclipse, of een andere editor die je verkiest. +- **Maven** – voor afhankelijkheidsbeheer (optioneel maar aanbevolen). ## GroupDocs.Metadata voor Java instellen ### Installatie -#### Maven gebruiken +#### Gebruik van Maven Voeg de repository en afhankelijkheid toe aan je `pom.xml`: ```xml @@ -67,14 +112,14 @@ Voeg de repository en afhankelijkheid toe aan je `pom.xml`: ``` -#### Direct downloaden +#### Directe download Als je liever geen Maven gebruikt, download dan de nieuwste JAR van de [releases page](https://releases.groupdocs.com/metadata/java/). ### Licentie‑acquisitie Een gratis proeflicentie verwijdert evaluatielimieten terwijl je experimenteert. Voor productiegebruik koop je een licentie op de GroupDocs‑website. -### Basisinitialisatie en -setup -Zodra de bibliotheek op je classpath staat, kun je een `Metadata`‑instance maken om een WAV‑bestand te openen: +### Basisinitialisatie en configuratie +`Metadata` is de kernklasse in GroupDocs.Metadata die een bestand vertegenwoordigt en toegang biedt tot zijn metadata‑pakketten. Zodra de bibliotheek op je classpath staat, kun je een `Metadata`‑instantie maken om een WAV‑bestand te openen: ```java import com.groupdocs.metadata.Metadata; @@ -87,26 +132,24 @@ try (Metadata metadata = new Metadata(inputFile)) { } ``` -## Hoe WAV-metadata te lezen in Java -Als je je afvraagt **how to read wav metadata**, bestaat het proces uit drie eenvoudige stappen: laad het bestand met `Metadata`, navigeer naar de `RiffInfoPackage` en haal de individuele tag‑waarden op die je nodig hebt. De code‑fragmenten hieronder demonstreren elke stap op een duidelijke, productie‑klare manier. +## Hoe WAV‑metadata lezen in Java +Laad het doelbestand met een `Metadata`‑object, vind het `RiffInfoPackage`, en vraag vervolgens de individuele tag‑eigenschappen op die je nodig hebt. Dit drie‑stappen‑patroon—initialisatie, pakket‑ophaling en eigenschapsextractie—dekt **99 % van de veelvoorkomende WAV‑metadata‑scenario's** en werkt ook voor batch‑taken. -## Implementatie‑gids - -### How to extract wav metadata java – Toegang tot de INFO‑Chunk - -#### Overzicht +## Hoe wav‑metadata java extraheren – toegang tot de INFO‑chunk De INFO‑chunk bevat menselijk leesbare tags zoals artiest, genre en software. Hieronder halen we de meest voorkomende velden op. -##### Stap 1: Vereiste klassen importeren -Zorg ervoor dat de benodigde GroupDocs‑klassen worden geïmporteerd: +De INFO‑chunk is een standaardonderdeel van de RIFF‑structuur dat tekstuele metadata opslaat. Met GroupDocs.Metadata kun je velden lezen zoals `artist`, `genre`, `software`, `comment` en `creationDate`. De bibliotheek retourneert deze waarden als strings, en je kunt ontbrekende tags afhandelen door op null te controleren. Deze aanpak werkt voor elk WAV‑bestand dat een INFO‑chunk bevat. + +### Stap 1: vereiste klassen importeren +Zorg ervoor dat de benodigde GroupDocs‑klassen zijn geïmporteerd: ```java import com.groupdocs.metadata.Metadata; import com.groupdocs.metadata.core.WavRootPackage; ``` -##### Stap 2: Metadata‑object initialiseren -Maak een `Metadata` object dat naar je WAV‑bestand wijst: +### Stap 2: Metadata‑object initialiseren +Maak een `Metadata`‑object dat naar je WAV‑bestand wijst: ```java String inputFile = "YOUR_DOCUMENT_DIRECTORY/input.wav"; @@ -119,8 +162,8 @@ try (Metadata metadata = new Metadata(inputFile)) { } ``` -##### Stap 3: Toegang tot het RIFF‑Info‑pakket -Als de INFO‑chunk bestaat, haal dan de individuele tag‑waarden op: +### Stap 3: toegang tot het RIFF‑info‑pakket +De `RiffInfoPackage`‑klasse maakt de INFO‑chunk van een WAV‑bestand toegankelijk, met menselijk leesbare tags. Als de INFO‑chunk bestaat, haal dan de individuele tag‑waarden op: ```java if (root.getRiffInfoPackage() != null) { @@ -139,28 +182,27 @@ if (root.getRiffInfoPackage() != null) { **Uitleg:** De code controleert op de aanwezigheid van een `RiffInfoPackage`. Wanneer beschikbaar, extraheert het velden zoals `artist`, `comment` en `software` direct uit de INFO‑chunk van het WAV‑bestand. **Probleemtips** -- **Missing Metadata:** Niet alle WAV‑bestanden bevatten een INFO‑chunk. Controleer met een tool zoals Audacity of MediaInfo. -- **File Path Errors:** Zorg ervoor dat het pad absoluut of relatief is ten opzichte van de project‑root en dat het bestand leesbaar is. +- **Ontbrekende metadata:** Niet alle WAV‑bestanden bevatten een INFO‑chunk. Controleer met een tool zoals Audacity of MediaInfo. +- **Bestandspad‑fouten:** Zorg ervoor dat het pad absoluut of relatief is ten opzichte van de project‑root en dat het bestand leesbaar is. ## Praktische toepassingen -De geëxtraheerde metadata kan veel real‑world scenario's aandrijven: -1. **Media Management Systems** – Auto‑tag en organiseer grote audiobibliotheken. -2. **Digital Asset Management** – Verbeter zoeken door opmerkingen, auteursrecht en genre te indexeren. -3. **Audio Forensics** – Identificeer de gebruikte software of engineer voor onderzoeksdoeleinden. +De geëxtraheerde metadata kan vele real‑world scenario’s aandrijven: +1. **Media‑beheersystemen** – Automatisch taggen en grote audiobibliotheken organiseren. +2. **Digital asset management** – Zoekopdrachten verbeteren door opmerkingen, auteursrechten en genre te indexeren. +3. **Audio‑forensisch onderzoek** – De creatiesoftware of engineer identificeren voor onderzoek. ## Prestatie‑overwegingen Bij het verwerken van duizenden bestanden, houd deze tips in gedachten: -- **Batch Processing:** Gebruik Java’s `ExecutorService` om extracties parallel uit te voeren. -- **Memory Management:** Plaats elke `Metadata`‑instance in een try‑with‑resources‑blok (zoals getoond) om native resources snel vrij te geven. -- **Profiling:** Tools zoals VisualVM kunnen knelpunten in I/O of object‑allocatie opsporen. +- **Batchverwerking:** Gebruik Java’s `ExecutorService` om extracties parallel uit te voeren. +- **Geheugenbeheer:** Plaats elke `Metadata`‑instantie in een try‑with‑resources‑blok (zoals getoond) om native resources direct vrij te geven. +- **Profilering:** Tools zoals VisualVM kunnen knelpunten in I/O of objectallocatie opsporen. ## Veelvoorkomende problemen en oplossingen - -| Issue | Why It Happens | How to Fix | +| Issue | Why it happens | How to fix | |-------|----------------|------------| -| **NullPointerException on `root.getRiffInfoPackage()`** | Het WAV‑bestand heeft geen INFO‑chunk. | Controleer altijd op `null` voordat je de eigenschappen benadert (zoals getoond in de code). | -| **OutOfMemoryError when processing many large files** | Elke `Metadata`‑instance houdt native resources vast. | Verwerk bestanden in kleinere batches en hergebruik een enkele thread‑pool. | -| **Incorrect file path** | Relatief pad wordt opgelost vanuit de verkeerde werkmap. | Gebruik absolute paden of configureer de werkmap van je IDE naar de project‑root. | +| **NullPointerException op `root.getRiffInfoPackage()`** | Het WAV‑bestand heeft geen INFO‑chunk. | Controleer altijd op `null` voordat je de eigenschappen benadert (zoals getoond in de code). | +| **OutOfMemoryError bij het verwerken van veel grote bestanden** | Elke `Metadata`‑instantie houdt native resources vast. | Verwerk bestanden in kleinere batches en hergebruik een enkele thread‑pool. | +| **Onjuist bestandspad** | Relatief pad wordt opgelost vanuit de verkeerde werkmap. | Gebruik absolute paden of configureer de werkmap van je IDE naar de project‑root. | ## Veelgestelde vragen @@ -177,21 +219,44 @@ A: Controleer altijd `root.getRiffInfoPackage()` op `null` voordat je de eigensc A: Absoluut. GroupDocs.Metadata werkt met vele audio‑ en videoformaten, waardoor je tags kunt ophalen uit MP3, FLAC, MP4 en meer. **Q: Wat moet ik doen als mijn applicatie geen geheugen meer heeft tijdens het verwerken van grote bestanden?** -A: Verwerk bestanden in kleinere batches, hergebruik `Metadata`‑objecten verstandig, en overweeg de JVM‑heap‑grootte te verhogen indien nodig. +A: Verwerk bestanden in kleinere batches, hergebruik `Metadata`‑objecten verstandig, en overweeg de JVM‑heap‑grootte te vergroten indien nodig. ## Conclusie -Je weet nu hoe je **extract wav metadata java** kunt gebruiken met GroupDocs.Metadata. Deze mogelijkheid opent de deur naar slimmere audio‑applicaties, van catalogiseren tot forensische analyse. Verken vervolgens andere ondersteunde formaten (MP3, FLAC, MP4) of duik dieper in de schrijf‑mogelijkheden van de bibliotheek om metadata direct te bewerken. +Je weet nu hoe je **audio metadata java** kunt ophalen met GroupDocs.Metadata. Deze mogelijkheid opent de deur naar slimmere audio‑applicaties, van catalogiseren tot forensische analyse. Verken vervolgens andere ondersteunde formaten (MP3, FLAC, MP4) of duik dieper in de schrijf‑mogelijkheden van de bibliotheek om metadata direct te bewerken. -Als je tegen uitdagingen aanloopt, stel dan gerust een vraag op het [free support forum](https://forum.groupdocs.com/c/metadata/). +Als je tegen uitdagingen aanloopt, vraag dan gerust om hulp op het [gratis ondersteuningsforum](https://forum.groupdocs.com/c/metadata/). ## Bronnen -- **Documentatie**: [GroupDocs.Metadata Documentation](https://docs.groupdocs.com/metadata/java/) -- **API‑referentie**: [API Reference](https://reference.groupdocs.com/metadata/java/) -- **Download**: [GroupDocs.Metadata Releases](https://releases.groupdocs.com/metadata/java/) -- **GitHub**: [GitHub Repository](https://github.com/groupdocs-metadata/GroupDocs.Metadata-for-Java) +- **Documentatie:** [GroupDocs.Metadata Documentation](https://docs.groupdocs.com/metadata/java/) +- **API‑referentie:** [API Reference](https://reference.groupdocs.com/metadata/java/) +- **Download:** [GroupDocs.Metadata Releases](https://releases.groupdocs.com/metadata/java/) +- **GitHub:** [GitHub Repository](https://github.com/groupdocs-metadata/GroupDocs.Metadata-for-Java) --- -**Laatst bijgewerkt:** 2026-02-24 +**Laatst bijgewerkt:** 2026-09-02 **Getest met:** GroupDocs.Metadata 24.12 for Java -**Auteur:** GroupDocs \ No newline at end of file +**Auteur:** GroupDocs + +```xml + + + repository.groupdocs.com + GroupDocs Repository + https://releases.groupdocs.com/metadata/java/ + + + + + + com.groupdocs + groupdocs-metadata + 24.12 + + +``` + +## Gerelateerde tutorials +- [Java MP3 Metadata Bibliotheek – Complete Gids met GroupDocs.Metadata](/metadata/java/audio-video-formats/read-mp3-metadata-groupdocs-metadata-java/) +- [Hoe FLV Metadata Java te extraheren met GroupDocs.Metadata](/metadata/java/audio-video-formats/flv-metadata-extraction-groupdocs-java/) +- [MP3 Metadata Java extraheren – GroupDocs.Metadata Tutorials](/metadata/java/audio-video-formats/) \ No newline at end of file diff --git a/content/english/java/audio-video-formats/extract-wav-metadata-groupdocs-java/_index.md b/content/english/java/audio-video-formats/extract-wav-metadata-groupdocs-java/_index.md index fa4fe34de..32fe3457b 100644 --- a/content/english/java/audio-video-formats/extract-wav-metadata-groupdocs-java/_index.md +++ b/content/english/java/audio-video-formats/extract-wav-metadata-groupdocs-java/_index.md @@ -1,39 +1,95 @@ --- -title: "Extract wav metadata java with GroupDocs.Metadata – A Comprehensive Guide" -description: "Learn how to extract wav metadata java efficiently using GroupDocs.Metadata for Java, the powerful library for audio file metadata management." -date: "2026-02-24" -weight: 1 -url: "/java/audio-video-formats/extract-wav-metadata-groupdocs-java/" +date: '2026-09-02' +description: Learn how to get audio metadata java with GroupDocs.Metadata, the robust + Java library for extracting WAV file metadata, supporting batch processing and low + memory usage. +images: +- /java/audio-video-formats/extract-wav-metadata-groupdocs-java/og-image.png keywords: - - extract wav metadata - - WAV file metadata management - - GroupDocs.Metadata for Java +- get audio metadata java +- extract wav metadata +- GroupDocs.Metadata Java +lastmod: '2026-09-02' +og_description: Learn how to get audio metadata java with GroupDocs.Metadata, the + robust Java library for extracting WAV file metadata, supporting batch processing + and low memory usage. +og_image_alt: Guide showing how to get audio metadata java from WAV files using GroupDocs.Metadata +og_title: How to get audio metadata java using GroupDocs.Metadata +schemas: +- author: GroupDocs + dateModified: '2026-09-02' + description: Learn how to get audio metadata java with GroupDocs.Metadata, the robust + Java library for extracting WAV file metadata, supporting batch processing and + low memory usage. + headline: How to get audio metadata java using GroupDocs.Metadata + type: TechArticle +- description: Learn how to get audio metadata java with GroupDocs.Metadata, the robust + Java library for extracting WAV file metadata, supporting batch processing and + low memory usage. + name: How to get audio metadata java using GroupDocs.Metadata + steps: + - name: import required classes + text: 'Make sure the necessary GroupDocs classes are imported:' + - name: initialize Metadata object + text: 'Create a `Metadata` object pointing at your WAV file:' + - name: accessing the RIFF info package + text: 'The `RiffInfoPackage` class exposes the INFO chunk of a WAV file, containing + human‑readable tags. If the INFO chunk exists, pull the individual tag values: + **Explanation:** The code checks for the presence of a `RiffInfoPackage`. When + available, it extracts fields such as `artist`, `comment`, and `s' + type: HowTo +- questions: + - answer: Metadata in a WAV file includes information such as the artist name, comments, + creation date, and the software used to produce the audio. + question: What is metadata in a WAV file? + - answer: Yes, the library supports both reading and writing metadata fields. + question: Can I modify the metadata of a WAV file using GroupDocs.Metadata for + Java? + - answer: Always check `root.getRiffInfoPackage()` for `null` before accessing its + properties to avoid `NullPointerException`. + question: How do I handle files without an INFO chunk? + - answer: Absolutely. GroupDocs.Metadata works with many audio and video formats, + allowing you to retrieve tags from MP3, FLAC, MP4, and more. + question: Is it possible to extract other types of metadata from audio files? + - answer: Process files in smaller batches, reuse `Metadata` objects wisely, and + consider increasing the JVM heap size if necessary. + question: What should I do if my application runs out of memory while processing + large files? + type: FAQPage +tags: +- audio metadata +- GroupDocs.Metadata +- Java audio processing +- WAV metadata extraction +title: How to get audio metadata java using GroupDocs.Metadata type: docs +url: /java/audio-video-formats/extract-wav-metadata-groupdocs-java/ +weight: 1 --- -# How to Extract WAV File Metadata Using GroupDocs.Metadata for Java +# How to get audio metadata java using GroupDocs.Metadata -If you need to **extract wav metadata java**, you’ve come to the right place. In this guide we’ll walk through everything you need to know to pull detailed information—from artist names to software tags—out of WAV files using the GroupDocs.Metadata library in Java. Whether you’re building a media‑library manager, a digital‑asset workflow, or just curious about the hidden data in your audio files, this tutorial gives you a complete, production‑ready solution. +If you need to **get audio metadata java**, you’ve landed in the right spot. In this guide we’ll walk through everything you need to know to pull detailed information—from artist names to software tags—out of WAV files using the GroupDocs.Metadata library for Java. Whether you’re building a media‑library manager, a digital‑asset workflow, or simply exploring hidden data in audio files, this tutorial delivers a complete, production‑ready solution. -## Quick Answers +## Quick answers - **What library handles WAV metadata in Java?** GroupDocs.Metadata for Java. - **Do I need a license for development?** A free trial works for evaluation; a license removes all restrictions. - **Which Java version is required?** Java 8 or newer. - **Can I process many files at once?** Yes—batch processing is supported and demonstrated later. - **Is memory usage a concern?** Dispose of `Metadata` objects promptly to keep the footprint low. -## What Is “extract wav metadata java”? +## What is “extract wav metadata java”? Extracting WAV metadata in Java means reading the INFO chunk and other embedded tags inside a WAV audio file. These tags store valuable details such as the artist, comments, creation date, and the software used to produce the file. Accessing this data lets you catalog, search, or validate audio assets programmatically. -## Why Use GroupDocs.Metadata for Java? -GroupDocs.Metadata abstracts the low‑level binary parsing required for RIFF/WAV files and provides a clean, object‑oriented API. It supports dozens of audio and video formats, offers robust error handling, and works consistently across Windows, macOS, and Linux environments. +## Why use GroupDocs.Metadata for Java? +GroupDocs.Metadata abstracts the low‑level binary parsing required for RIFF/WAV files and provides a clean, object‑oriented API. It supports **50+ audio and video formats**, offers robust error handling, and works consistently across Windows, macOS, and Linux environments. The library can process multi‑hundred‑page documents without loading the entire file into memory, delivering predictable performance even on modest servers. ## Prerequisites - **Java Development Kit (JDK)** – version 8 or higher. - **IDE** – IntelliJ IDEA, Eclipse, or any editor you prefer. - **Maven** – for dependency management (optional but recommended). -## Setting Up GroupDocs.Metadata for Java +## Setting up GroupDocs.Metadata for Java ### Installation @@ -58,14 +114,14 @@ Add the repository and dependency to your `pom.xml`: ``` -#### Direct Download +#### Direct download If you prefer not to use Maven, grab the latest JAR from the [releases page](https://releases.groupdocs.com/metadata/java/). -### License Acquisition +### License acquisition A free trial license removes evaluation limits while you experiment. For production use, purchase a license on the GroupDocs website. -### Basic Initialization and Setup -Once the library is on your classpath, you can create a `Metadata` instance to open a WAV file: +### Basic initialization and setup +`Metadata` is the core class in GroupDocs.Metadata that represents a file and provides access to its metadata packages. Once the library is on your classpath, you can create a `Metadata` instance to open a WAV file: ```java import com.groupdocs.metadata.Metadata; @@ -79,16 +135,14 @@ try (Metadata metadata = new Metadata(inputFile)) { ``` ## How to read WAV metadata in Java -If you’re wondering **how to read wav metadata**, the process boils down to three simple steps: load the file with `Metadata`, navigate to the `RiffInfoPackage`, and pull the individual tag values you care about. The code snippets below demonstrate each step in a clear, production‑ready way. - -## Implementation Guide +Load the target file with a `Metadata` object, locate the `RiffInfoPackage`, and then query the individual tag properties you need. This three‑step pattern—initialization, package retrieval, and property extraction—covers **99% of common WAV metadata scenarios** and works for batch jobs as well. -### How to extract wav metadata java – Accessing the INFO Chunk - -#### Overview +## How to extract wav metadata java – accessing the INFO chunk The INFO chunk holds human‑readable tags such as artist, genre, and software. Below we’ll retrieve the most common fields. -##### Step 1: Import Required Classes +The INFO chunk is a standard part of the RIFF structure that stores textual metadata. Using GroupDocs.Metadata you can read fields such as `artist`, `genre`, `software`, `comment`, and `creationDate`. The library returns these values as strings, and you can handle missing tags by checking for null. This approach works for any WAV file that includes an INFO chunk. + +### Step 1: import required classes Make sure the necessary GroupDocs classes are imported: ```java @@ -96,7 +150,7 @@ import com.groupdocs.metadata.Metadata; import com.groupdocs.metadata.core.WavRootPackage; ``` -##### Step 2: Initialize Metadata Object +### Step 2: initialize Metadata object Create a `Metadata` object pointing at your WAV file: ```java @@ -110,8 +164,8 @@ try (Metadata metadata = new Metadata(inputFile)) { } ``` -##### Step 3: Accessing the RIFF Info Package -If the INFO chunk exists, pull the individual tag values: +### Step 3: accessing the RIFF info package +The `RiffInfoPackage` class exposes the INFO chunk of a WAV file, containing human‑readable tags. If the INFO chunk exists, pull the individual tag values: ```java if (root.getRiffInfoPackage() != null) { @@ -129,30 +183,30 @@ if (root.getRiffInfoPackage() != null) { **Explanation:** The code checks for the presence of a `RiffInfoPackage`. When available, it extracts fields such as `artist`, `comment`, and `software` directly from the WAV file’s INFO chunk. -**Troubleshooting Tips** -- **Missing Metadata:** Not all WAV files contain an INFO chunk. Verify with a tool like Audacity or MediaInfo. -- **File Path Errors:** Ensure the path is absolute or relative to your project root and that the file is readable. +**Troubleshooting tips** +- **Missing metadata:** Not all WAV files contain an INFO chunk. Verify with a tool like Audacity or MediaInfo. +- **File path errors:** Ensure the path is absolute or relative to your project root and that the file is readable. -## Practical Applications +## Practical applications Extracted metadata can power many real‑world scenarios: -1. **Media Management Systems** – Auto‑tag and organize large audio libraries. -2. **Digital Asset Management** – Enhance search by indexing comments, copyright, and genre. -3. **Audio Forensics** – Identify the creation software or engineer for investigative purposes. +1. **Media management systems** – Auto‑tag and organize large audio libraries. +2. **Digital asset management** – Enhance search by indexing comments, copyright, and genre. +3. **Audio forensics** – Identify the creation software or engineer for investigative purposes. -## Performance Considerations +## Performance considerations When processing thousands of files, keep these tips in mind: -- **Batch Processing:** Use Java’s `ExecutorService` to run extractions in parallel. -- **Memory Management:** Wrap each `Metadata` instance in a try‑with‑resources block (as shown) to free native resources promptly. +- **Batch processing:** Use Java’s `ExecutorService` to run extractions in parallel. +- **Memory management:** Wrap each `Metadata` instance in a try‑with‑resources block (as shown) to free native resources promptly. - **Profiling:** Tools like VisualVM can spot bottlenecks in I/O or object allocation. -## Common Issues and Solutions -| Issue | Why It Happens | How to Fix | +## Common issues and solutions +| Issue | Why it happens | How to fix | |-------|----------------|------------| | **NullPointerException on `root.getRiffInfoPackage()`** | The WAV file lacks an INFO chunk. | Always check for `null` before accessing its properties (as shown in the code). | | **OutOfMemoryError when processing many large files** | Each `Metadata` instance holds native resources. | Process files in smaller batches and reuse a single thread pool. | | **Incorrect file path** | Relative path resolved from wrong working directory. | Use absolute paths or configure your IDE’s working directory to the project root. | -## Frequently Asked Questions +## Frequently asked questions **Q: What is metadata in a WAV file?** A: Metadata in a WAV file includes information such as the artist name, comments, creation date, and the software used to produce the audio. @@ -170,20 +224,42 @@ A: Absolutely. GroupDocs.Metadata works with many audio and video formats, allow A: Process files in smaller batches, reuse `Metadata` objects wisely, and consider increasing the JVM heap size if necessary. ## Conclusion -You now know how to **extract wav metadata java** using GroupDocs.Metadata. This capability opens the door to smarter audio applications, from cataloguing to forensic analysis. Next, explore other supported formats (MP3, FLAC, MP4) or dive deeper into the library’s write capabilities to edit metadata directly. +You now know how to **get audio metadata java** using GroupDocs.Metadata. This capability opens the door to smarter audio applications, from cataloguing to forensic analysis. Next, explore other supported formats (MP3, FLAC, MP4) or dive deeper into the library’s write capabilities to edit metadata directly. If you run into any challenges, feel free to ask for help on the [free support forum](https://forum.groupdocs.com/c/metadata/). ## Resources -- **Documentation**: [GroupDocs.Metadata Documentation](https://docs.groupdocs.com/metadata/java/) -- **API Reference**: [API Reference](https://reference.groupdocs.com/metadata/java/) -- **Download**: [GroupDocs.Metadata Releases](https://releases.groupdocs.com/metadata/java/) -- **GitHub**: [GitHub Repository](https://github.com/groupdocs-metadata/GroupDocs.Metadata-for-Java) +- **Documentation:** [GroupDocs.Metadata Documentation](https://docs.groupdocs.com/metadata/java/) +- **API reference:** [API Reference](https://reference.groupdocs.com/metadata/java/) +- **Download:** [GroupDocs.Metadata Releases](https://releases.groupdocs.com/metadata/java/) +- **GitHub:** [GitHub Repository](https://github.com/groupdocs-metadata/GroupDocs.Metadata-for-Java) --- -**Last Updated:** 2026-02-24 +**Last Updated:** 2026-09-02 **Tested With:** GroupDocs.Metadata 24.12 for Java -**Author:** GroupDocs +**Author:** GroupDocs + +```xml + + + repository.groupdocs.com + GroupDocs Repository + https://releases.groupdocs.com/metadata/java/ + + + + + + com.groupdocs + groupdocs-metadata + 24.12 + + +``` + +## Related Tutorials ---- \ No newline at end of file +- [Java MP3 Metadata Library – Complete Guide with GroupDocs.Metadata](/metadata/java/audio-video-formats/read-mp3-metadata-groupdocs-metadata-java/) +- [How to Extract FLV Metadata Java with GroupDocs.Metadata](/metadata/java/audio-video-formats/flv-metadata-extraction-groupdocs-java/) +- [Extract MP3 Metadata Java – GroupDocs.Metadata Tutorials](/metadata/java/audio-video-formats/) \ No newline at end of file diff --git a/content/english/java/audio-video-formats/extract-wav-metadata-groupdocs-java/og-image.png b/content/english/java/audio-video-formats/extract-wav-metadata-groupdocs-java/og-image.png new file mode 100644 index 0000000000000000000000000000000000000000..fefb5cca5c4fdd5b9170e3eabd14110a976595ce GIT binary patch literal 53170 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