allow rtmp recording, hls buggy
This commit is contained in:
parent
a9a7a5d939
commit
a94d004a29
12
record.php
12
record.php
@ -47,6 +47,15 @@ if (!file_exists($config))
|
|||||||
if (!$_set = @json_decode(@file_get_contents($config)))
|
if (!$_set = @json_decode(@file_get_contents($config)))
|
||||||
logger(1, 'Unable to load or parse configuration file', 1, true);
|
logger(1, 'Unable to load or parse configuration file', 1, true);
|
||||||
|
|
||||||
|
// Check settings
|
||||||
|
$_set_def = [
|
||||||
|
'rtmp' => '',
|
||||||
|
'recordhls' => false
|
||||||
|
];
|
||||||
|
foreach ($_set_def AS $i => $v)
|
||||||
|
if (!isset($_set->{$i}))
|
||||||
|
$_set->{$i} = $v;
|
||||||
|
|
||||||
// Loop indefinitely
|
// Loop indefinitely
|
||||||
while (true) :
|
while (true) :
|
||||||
|
|
||||||
@ -70,7 +79,10 @@ while (true) :
|
|||||||
{
|
{
|
||||||
logger(2, 'All checks passed, starting ffmpeg');
|
logger(2, 'All checks passed, starting ffmpeg');
|
||||||
notify('Recording', 'Restreamer API reported that repeating to local nginx is connected and the HLS endpoint is found. The HLS output is now being recorded. HLS URL is the following: '.$_set->hls.', Output directory is: '.$output_directory, 2);
|
notify('Recording', 'Restreamer API reported that repeating to local nginx is connected and the HLS endpoint is found. The HLS output is now being recorded. HLS URL is the following: '.$_set->hls.', Output directory is: '.$output_directory, 2);
|
||||||
|
if ($_set->recordhls || !$_set->rtmp)
|
||||||
exec('flock -n '.$_set->pid.' -c "ffmpeg -re -i '.$_set->hls.' -c copy '.$output_directory.'/index.m3u8 2> '.$output_directory.'/ffmpeg.log"', $output, $exitcode);
|
exec('flock -n '.$_set->pid.' -c "ffmpeg -re -i '.$_set->hls.' -c copy '.$output_directory.'/index.m3u8 2> '.$output_directory.'/ffmpeg.log"', $output, $exitcode);
|
||||||
|
else
|
||||||
|
exec('flock -n '.$_set->pid.' -c "ffmpeg -re -i '.$_set->hls.' -c copy -start_number 0 -hls_time 10 -hls_list_size 0 -f hls '.$output_directory.'/index.m3u8 2> '.$output_directory.'/ffmpeg.log"', $output, $exitcode);
|
||||||
logger(2, 'ffmpeg exited with code '.$exitcode);
|
logger(2, 'ffmpeg exited with code '.$exitcode);
|
||||||
notify('Recording stopped', 'The FFMPEG process shut down with exit code: '.$exitcode, 2);
|
notify('Recording stopped', 'The FFMPEG process shut down with exit code: '.$exitcode, 2);
|
||||||
if ($exitcode)
|
if ($exitcode)
|
||||||
|
Loading…
Reference in New Issue
Block a user