| 1 | <?php  | 
            ||
| 14 | class ExtinfTag extends AbstractTag  | 
            ||
| 15 | { | 
            ||
| 16 | private $duration;  | 
            ||
| 17 | |||
| 18 | private $title;  | 
            ||
| 19 | |||
| 20 | private $m3u8Version;  | 
            ||
| 21 | |||
| 22 | const TAG_IDENTIFIER = '#EXTINF';  | 
            ||
| 23 | |||
| 24 | 2 | public function __construct($m3u8Version = 3)  | 
            |
| 28 | |||
| 29 | 1 | public function setDuration($duration)  | 
            |
| 35 | |||
| 36 | 1 | public function getDuration()  | 
            |
| 40 | |||
| 41 | 1 | public function setTitle($title)  | 
            |
| 47 | |||
| 48 | 1 | public function getTitle()  | 
            |
| 52 | |||
| 53 | 1 | public function dump()  | 
            |
| 54 |     { | 
            ||
| 55 | 1 |         if (null === $this->duration) { | 
            |
| 56 | 1 | return;  | 
            |
| 57 | }  | 
            ||
| 58 | |||
| 59 | 1 |         if (3 > $this->m3u8Version) { | 
            |
| 60 |             return sprintf('%s:%d,%s', self::TAG_IDENTIFIER, round($this->duration), $this->title); | 
            ||
| 61 | }  | 
            ||
| 62 | |||
| 63 | 1 |         return sprintf('%s:%.3f,%s', self::TAG_IDENTIFIER, round($this->duration, 3), $this->title); | 
            |
| 64 | }  | 
            ||
| 65 | |||
| 66 | 1 | protected function read($line)  | 
            |
| 70 | }  | 
            ||
| 71 |