From f3e6ad2bad806a5b2d05442066870c19b265647a Mon Sep 17 00:00:00 2001 From: jb-alvarado Date: Sat, 30 Mar 2019 20:22:28 +0100 Subject: [PATCH 1/4] Update README.md --- README.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/README.md b/README.md index ba9daa29..2b2c9d96 100644 --- a/README.md +++ b/README.md @@ -1,7 +1,7 @@ ffplayout-gui ===== -Web-based graphical user interface for [ffplayout](https://github.com/jb-alvarado/ffplayout). +Web-based graphical user interface for [ffplayout-engine](https://github.com/ffplayout/ffplayout-engine). ![ffplayout-gui](./ffplayout-gui.png) From 17224c74136eb0db7a711a11cbdc9891ad052b55 Mon Sep 17 00:00:00 2001 From: jb-alvarado Date: Wed, 8 May 2019 16:06:39 +0200 Subject: [PATCH 2/4] correct json format --- resources/js/custom.js | 13 +++++-------- 1 file changed, 5 insertions(+), 8 deletions(-) diff --git a/resources/js/custom.js b/resources/js/custom.js index 7c5da4ff..44e35c9f 100644 --- a/resources/js/custom.js +++ b/resources/js/custom.js @@ -352,10 +352,9 @@ $('#bt_sys').click(function() { /* ----------------------------------------------------------------------------- header functions ------------------------------------------------------------------------------*/ -var intervalId = null; function get_track_list(interval) { - var begin, src, dur, seek, out, time_left; + var begin, seek, out, time_left; $.get("resources/player.php?track=get", function(result) { function get_track() { @@ -368,11 +367,10 @@ function get_track_list(interval) { time_in_seconds += 86400.0; } - $.each(json, function (index, value) { - begin = parseFloat(value['begin'][0]); - dur = parseFloat(value['dur'][0]); - seek = parseFloat(value['in'][0]); - out = parseFloat(value['out'][0]); + $.each(json, function (_index, value) { + begin = parseFloat(value['begin']); + seek = parseFloat(value['in']); + out = parseFloat(value['out']); if (time_in_seconds < begin + out - seek ) { time_left = begin + out - seek - time_in_seconds; @@ -387,7 +385,6 @@ function get_track_list(interval) { } else { clearInterval(refreshIntervalId); } - }); } From d15e3dabcb15ca885585493766c83b4683f16d2e Mon Sep 17 00:00:00 2001 From: jb-alvarado Date: Wed, 8 May 2019 16:07:20 +0200 Subject: [PATCH 3/4] correct json format --- resources/player.php | 36 +++++++++++++++++++++++------------- 1 file changed, 23 insertions(+), 13 deletions(-) diff --git a/resources/player.php b/resources/player.php index 11efbce0..84204ee0 100644 --- a/resources/player.php +++ b/resources/player.php @@ -30,21 +30,29 @@ if(!empty($_GET['track'])) { $get_start = "/^day_start.*\$/m"; preg_match_all($get_start, $get_ini, $match_start); $start_line = implode("\n", $match_start[0]); - $start_hour = explode("= ", $start_line)[1]; + $st = date_parse(explode("= ", $start_line)[1]); + $start_time = $st['hour'] * 3600 + $st['minute'] * 60 + $st['second']; - $time = date("H"); + $t = date_parse(date("H:i:s")); + $time = $t['hour'] * 3600 + $t['minute'] * 60 + $t['second']; - if ($time < $start_hour) { + if ($time < $start_time) { $date = date("Y-m-d", strtotime( '-1 days' ) ); } else { $date = date("Y-m-d"); } $date_str = explode('-', $date); - $xml_path = $path_root . "/" . $date_str[0] . "/" . $date_str[1] . "/" . $date . ".xml"; + $json_path = $path_root . "/" . $date_str[0] . "/" . $date_str[1] . "/" . $date . ".json"; - if (file_exists($xml_path)) { - $xml = simplexml_load_file($xml_path) or die("Error: Cannot create object"); + if (file_exists($json_path)) { + $content = file_get_contents($json_path) or die("Error: Cannot create object"); + $json = json_decode($content, true); + + list($hh, $mm, $ss) = explode(":", $json["begin"]); + list($l_hh, $l_mm, $l_ss) = explode(":", $json["length"]); + $begin = $hh * 3600 + $mm * 60 + $ss; + $length = $l_hh * 3600 + $l_mm * 60 + $l_ss; $src_re = array(); $src_re[0] = '/# [0-9-]+.('.$ext.')$/'; @@ -54,17 +62,19 @@ if(!empty($_GET['track'])) { $videos = array(); - foreach($xml->body[0]->video as $video) { - $src = preg_replace('/^\//', '', $video['src']); + foreach($json["program"] as $video) { + $src = preg_replace('/^\//', '', $video['source']); $src_arr = explode('/', $src); $name = preg_replace($src_re, '', end($src_arr)); $name = str_replace('ยง', '?', $name); - $begin = $video['begin']; - $dur = $video['dur']; + $dur = $video['duration']; + $in = $video['in']; $out = $video['out']; - $videos[] = array('start' => $start_hour, 'begin'=> $begin, 'src' => $name, 'dur' => $dur, 'in' => $in, 'out' => $out); + $videos[] = array('start' => $start_time, 'begin'=> $begin, 'src' => $name, 'dur' => $dur, 'in' => $in, 'out' => $out); + + $begin += $out - $in; } echo json_encode($videos); @@ -72,8 +82,8 @@ if(!empty($_GET['track'])) { } // start / stop playout -if(!empty($_POST['playout'])) { - $state = $_POST['playout']; +if(!empty($_GET['playout'])) { + $state = $_GET['playout']; if ($state === "start") { $out = shell_exec("./sh/playout.sh start"); From 312470299777868ed3237e0b5233882d6166a627 Mon Sep 17 00:00:00 2001 From: jb-alvarado Date: Tue, 14 May 2019 10:56:17 +0200 Subject: [PATCH 4/4] Update player.php --- resources/player.php | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/resources/player.php b/resources/player.php index 84204ee0..d9371c90 100644 --- a/resources/player.php +++ b/resources/player.php @@ -82,8 +82,8 @@ if(!empty($_GET['track'])) { } // start / stop playout -if(!empty($_GET['playout'])) { - $state = $_GET['playout']; +if(!empty($_POST['playout'])) { + $state = $_POST['playout']; if ($state === "start") { $out = shell_exec("./sh/playout.sh start");