بقلم Shamir
كيف يبدو ملف XMLTV EPG فعليًا (مع أمثلة)
أسرع طريقة للتوقف عن الارتباك برسائل البرنامج هي فتح واحدة وقراءتها. XMLTV عبارة عن XML عادي — مطول، لكن ليس معقدًا — وعشر دقائق مع مثال حقيقي ستوفر عليك ساعات من التخمين حول سبب كون دليلك فارغًا.
يعرض هذا المنشور ملفًا حقيقيًا، ويفك تشفيره علامة تلو علامة، ثم يستخدم هذا الفهم لشرح فشل الدليل الأكثر شيوعًا.
الإطار الصريح: Tuneline عبارة عن مشغل وسائط للمحتوى الذي توفره أنت. يعرض دليلاً من مصدر جدول زمني توفره أنت. يأتي بدون دليل وبدون محتوى.
الهيكل في جملة واحدة
يحتوي ملف XMLTV على نوعين بالضبط من الأشياء فيه: عناصر <channel> التي تعلن عما موجود، وعناصر <programme> التي تقول ما هو البث ومتى.
هذا كل شيء. كل شيء آخر هو تفاصيل.
مثال بسيط وكامل
<?xml version="1.0" encoding="UTF-8"?>
<tv generator-info-name="example-grabber">
<channel id="example.news.us">
<display-name>Example News</display-name>
<icon src="http://logos.example/news.png" />
</channel>
<programme start="20260806180000 +0000"
stop="20260806190000 +0000"
channel="example.news.us">
<title lang="en">Evening Report</title>
<desc lang="en">The day's headlines and analysis.</desc>
<category lang="en">News</category>
</programme>
</tv>
هذا دليل صحيح وكامل يصف مصدرًا واحدًا وساعة واحدة من الجدول الزمني. الملف الحقيقي هو نفس الشكلين مكررين آلاف المرات.
تم فك التشفير علامة تلو علامة
| العنصر | ما يفعله |
|---|---|
<tv> | الجذر. كل شيء يعيش بداخله. |
<channel id="…"> | يعلن عن المصدر. id هي الجزء المهم — إنها مفتاح الربط. |
<display-name> | الاسم المقروء آدميًا الموضح في الدليل. |
<icon src="…"> | رابط الشعار. |
<programme start stop channel> | عنصر مجدول واحد. يجب أن يتطابق channel مع <channel id>. |
<title> | اسم البرنامج. |
<desc> | ملخص. |
<category> | النوع. هذا ما تعمل عليه الرقابة الأبوية والمرشحات. |
صيغة الطابع الزمني تفاجئ الجميع
start="20260806180000 +0000"
اقرأه باسم YYYYMMDDHHMMSS متبوعًا بـ إزاحة UTC. إذن هذا 6 أغسطس 2026، الساعة 18:00:00 بتوقيت UTC.
الإزاحة هي الجزء الذي يهم. إذا حذف ملف منها، أو أعلن عن واحدة لا تتطابق مع الواقع، فسيتم تحميل دليلك بشكل مثالي وإظهار كل شيء في الوقت الخاطئ. هذه مشكلة مختلفة تمامًا عن دليل فارغ، وتم إصلاحها في إعدادات المنطقة الزمنية لديك، وليس بتغيير المصادر. (إصلاح الأوقات الخاطئة.)
الربط: لماذا يكون دليلك فارغًا حتى على الرغم من تحميل الملف
إليك الشيء الجدير بالفهم، لأنه يشرح معظم شكاوى الدليل.
قائمة التشغيل الخاصة بك والدليل الخاص بك هما ملفين منفصلين يجب مطابقتهما. يحدث التطابق على معرّف.
في M3U:
#EXTINF:-1 tvg-id="example.news.us" tvg-logo="…",Example News
http://example.com/news.m3u8
في XMLTV:
<channel id="example.news.us">
يجب أن يساوي tvg-id channel id. بالضبط — بما في ذلك الحالة والعلامات الترقيمية.
عندما يتطابقان، يظهر الإدخال جدوله الزمني. عندما لا يفعلان، تحصل على إدخال بدليل فارغ، والملف لم يكن مذنبًا أبدًا. (جانب M3U من هذا.)
هذا هو السبب في أن "أضفت دليلاً ولم يحدث شيء" عادة ما لا يكون خطأ قائمة التشغيل ولا الدليل. إنها أن لا أحد جعلهما يوافقان على المعرفات. الدليل الذي يغطي منطقة مختلفة عن قائمة التشغيل الخاصة بك سيحمل آلاف البرامج التي لا تتطابق مع أي من إدخالاتك.

كيفية فحص مصدر الدليل قبل الثقة فيه
قبل أن تلوم مشغلك، انظر إلى الملف.
1. هل هو مضغوط؟ تشحن العديد من المصادر .xml.gz. هذا طبيعي — معظم المشغلات تتعامل معه. إذا كنت تفتش يدويًا، قم بفك الضغط أولاً.
2. هل يحتوي بالفعل على مصادرك؟ ابحث في الملف عن أحد قيم tvg-id الخاصة بك. إذا لم يكن هناك، فهذا الدليل لا يغطي قائمتك، ولن يغير أي إعداد ذلك.
curl -s "https://example.com/guide.xml.gz" | gunzip | grep -c "<channel "
curl -s "https://example.com/guide.xml.gz" | gunzip | grep "example.news.us"
يخبرك الأول بعدد المصادر التي يعلن عنها. يخبرك الثاني ما إذا كان ملفك واحدًا منها.
3. هل يغطي نطاق زمني مفيد؟ تحقق من أقرب وأحدث قيم start. تحمل بعض الأدلة المجانية 24 ساعة فقط؛ البعض يحمل أسبوعين. يبدو الدليل الذي انتهى أمس متطابقًا مع واحد معطل.
4. ما حجمه؟ تصل الأدلة الوطنية الكاملة إلى عشرات أو مئات من ميجابايت بدون ضغط. هذا طبيعي، وهذا هو السبب في أن التحميل الأول قد يستغرق دقائق على صندوق التلفاز. (مصادر XMLTV المجانية.)
التشوهات الشائعة
تنقسم ملفات الدليل الواقعية بطرق يمكن التنبؤ بها:
- صفحة خطأ HTML محفوظة باسم
.xml. افتحها. إذا كان السطر الأول<!DOCTYPE html>، فإن التنزيل فشل وحفظ الخطأ. - أمبير غير مهروب. يعد
&عاري بدلاً من&في العنوان XML غير صالح ويمكن أن يوقف التحليل بالكامل. عنوان واحد سيء، لا يوجد دليل على الإطلاق. - إدخالات
<channel id>مكررة. إعلانان لنفس المعرّف؛ السلوك يعتمد على المشغل. - برامج بدون قناة مطابقة. إدخالات الجدول الزمني التي لا يتطابق فيها الخاصية
channelمع أي<channel id>معلنة. يتم حذفها بصمت. - أوقات
stopمفقودة. يحذفها بعض الملقطين ويتوقعون أن يشير بدء البرنامج التالي إلى النهاية. بعض المشغلات لا تستنتج ذلك، تاركة فجوات.
هل يمكنني كتابة أو تحرير واحد بنفسي؟
نعم. إنها XML، لذا فإن أي محرر نصوص يعمل، وبالنسبة لإعداد منسق صغير، فهو عملي تمامًا.
تعديلات مفيدة:
- غيّر
<channel id>لمطابقةtvg-idالتي تستخدمها قائمة التشغيل الخاصة بك بالفعل — غالبًا ما يكون أسهل من تحرير مئات أسطر قائمة التشغيل. - اختصره. احذف عناصر
<channel>و<programme>التي لا تحتاجها. يتم تحميل ملف أصغر أسرع بكثير على الأجهزة المقيدة. - أصلح الإزاحة إذا كان كل وقت خاطئًا بشكل موحد.
قاعدتان: احفظ باسم UTF-8، واحتفظ به بتشكيل صحيح — يمكن لـ & واحد غير مهروب أن يكلفك الدليل بأكمله.
الأسئلة الشائعة
كيف يبدو ملف EPG؟
XML عادي مع نوعين من العناصر: <channel> معلنة عن كل مصدر، و <programme> تعطي وقت البداية ووقت التوقف والعنوان لكل عنصر مجدول.
ما صيغة XMLTV؟
XML، عادة ما تُخدم باسم .xml أو مضغوطة بـ gzip .xml.gz. الطوابع الزمنية هي YYYYMMDDHHMMSS بالإضافة إلى إزاحة UTC.
لماذا يتم تحميل دليلي ولا يعرض شيء؟
دائمًا تقريبًا لأن قيم tvg-id في قائمة التشغيل الخاصة بك لا تتطابق مع قيم <channel id> في الدليل. تم تحميل الملف بشكل جيد؛ لم يكن هناك شيء لربطه به.
كيف أتحقق مما إذا كان الدليل يغطي مصادري؟
قم بتنزيله، وفك ضغطه إذا لزم الأمر، وابحث عن أحد سلاسل tvg-id الخاصة بك. إذا لم تكن موجودة في الملف، فهذا الدليل لا يصف قائمتك.
لماذا ملف الدليل الخاص بي كبير جدًا؟
الدليل الوطني الذي يحتوي على جدول أسبوعين لمئات المصادر هو حقًا عشرات أو مئات من ميجابايت. هذا متوقع، وهذا هو السبب في أن التحميل الأول بطيء.
هل يمكنني تحرير ملف XMLTV؟
نعم، في أي محرر نصوص. احفظ باسم UTF-8 واحتفظ بـ XML بتشكيل صحيح — يمكن لـ & واحد غير مهروب أن يكسر التحليل بالكامل.
الخلاصة
- يحتوي XMLTV على شيئين بالضبط: إعلانات
<channel>وإدخالات<programme>. - الطوابع الزمنية هي
YYYYMMDDHHMMSS+ إزاحة UTC — الإزاحة الخاطئة تعني بيانات صحيحة، أوقات خاطئة. - يربط الدليل قائمة التشغيل الخاصة بك على
tvg-id=channel id، بالضبط. عدم التطابق هو السبب الأساسي لدليل فارغ. - افحص قبل اللوم: قم بفك الضغط، ابحث عن معرفك، تحقق من نطاق التاريخ.
- يمكن لـ
&واحد غير مهروب أن يبطل ملف الدليل بأكمله.
هل لديك قائمة تشغيل و URL دليل؟ تنزيل Tuneline — أضف كليهما وتملأ الشبكة. مجاني وبدون إعلانات.
— سام إليس
شارك هذا المقال
Get Tuneline free
A clean, no-account media player for macOS, Windows, Linux, Android, TV, and iOS. Bring your own playlist.
Download freeاقرأ هذا المقال بلغة أخرى
- EnglishWhat an XMLTV EPG File Actually Looks Like (With Examples)
- AfrikaansHoe lyk 'n XMLTV EPG Lêer Eintlik (Met Voorbeelde)
- العربيةكيف يبدو ملف XMLTV EPG فعليًا (مع أمثلة)
- বাংলাএকটি XMLTV EPG ফাইল আসলে কেমন দেখায় (উদাহরণ সহ)
- DeutschSo sieht eine XMLTV EPG-Datei wirklich aus (mit Beispielen)
- ΕλληνικάΠώς μοιάζει στην πραγματικότητα ένα αρχείο XMLTV EPG (με παραδείγματα)
- فارسیفایل XMLTV EPG واقعاً چگونه به نظر می رسد (با نمونه ها)
- SuomiMiltä XMLTV EPG -tiedosto oikeasti näyttää (esimerkkien kera)
- हिन्दीXMLTV EPG फ़ाइल वास्तव में कैसी दिखती है (उदाहरणों के साथ)
- ItalianoChe aspetto ha davvero un file XMLTV EPG (Con esempi)
- 한국어XMLTV EPG 파일이 실제로 어떻게 생겼는지 (예제 포함)
- Bahasa MelayuRupa Sebenar Fail XMLTV EPG (Dengan Contoh)
- NorskHvordan en XMLTV EPG-fil faktisk ser ut (med eksempler)
- РусскийКак выглядит файл XMLTV EPG на самом деле (с примерами)
- СрпскиKako zapravo izgleda XMLTV EPG fajl (sa primerima)
- SvenskaSå här ser en XMLTV EPG-fil faktiskt ut (med exempel)
- TürkçeBir XMLTV EPG Dosyası Gerçekte Neye Benziyor (Örneklerle)
Tuneline هو تطبيق مشغل وسائط. لا يوفر أي محتوى ولا يستضيفه ولا يوزعه. أنت من يحضر قائمة التشغيل الخاصة بك، تمامًا كما تفعل مع VLC.