JTV формат появился благодаря польскому программисту Ярославу Ковальскому, изначально использовалась в составе одноименного программного обеспечения для просмотра ТВ с тв-тюнеров. Представляет из себя zip архив с набором файлов. Каждому каналу соответствует 2 файла - <имя_канала>.ndx и <имя_канала>.pdt.

В них и содержится вся информация о времени начала, продолжительности и описании тв-программы. Файл с расширением PDT содержит в себе сведения о названии телепрограмм, а файл с расширением NDX – сведения о времени начала этих телепередач. 
Программа в таком формате получила меньшее распространение чем XMLTV из-за сложной структуры и неудобства обработки (в сравнении с XML-форматом). Используется некоторыми медиаустройствами поддерживающими воспроизведение IPTV и проигрывателями IPTV для ПК.

Пример генерации JTV файла для канала на PHP

<?php
$channel_info = array(
	'name'	=>	'Title1',	'time'	=>	time(),
	'name'	=>	'Title2',	'time'	=>	time(),
);

$pdt_file = fopen("Channel1.pdt", "wb");
$ndx_file = fopen("Channel1.ndx", "wb");

fwrite($pdt_file, "JTV 3.x TV Program Datax0Ax0Ax0A", 26);
fwrite($ndx_file, pack("v",count($channel_info)),2);
$time = $channel_info[0]['time'];
fwrite($ndx_file, pack ("v", 0), 2);
$filetime = bcmul(bcadd($time, "11644473600"), "10000000");
for ($i = 0; $i < 8; $i++) {
	$byte = (int) bcmod ($filetime, "256");
	fwrite($ndx_file, pack("c", $byte), 1);
	$filetime = bcdiv($filetime, "256");
}
fwrite($ndx_file, pack("v",26), 2);
$programm_name = iconv ("UTF-8", "windows-1251", $channel_info[0]['name']);
$programm_name_length = strlen($programm_name);
fwrite($pdt_file, pack("v", $programm_name_length), 2);
fwrite($pdt_file, $programm_name, $programm_name_length); // Записали название передачи
$offset += $programm_name_length + 2;
?>

 


Вы можете приобрести наш IPTV плеер используя платежную систему ЮМани

Рейтинг@Mail.ru

Контакты

Поиск по сайту