set correct ffmpeg/ffplay error levels

This commit is contained in:
jb-alvarado 2021-05-13 21:31:39 +02:00
parent 128dfd2a75
commit 22fab24bd5
4 changed files with 27 additions and 15 deletions

View File

@ -60,7 +60,8 @@ def output():
try:
enc_cmd = [
'ffplay', '-hide_banner', '-nostats', '-i', 'pipe:0'
'ffplay', '-hide_banner', '-nostats',
'-v', f'level+{log.ff_level.lower()}', '-i', 'pipe:0'
] + overlay
messenger.debug(f'Encoder CMD: "{" ".join(enc_cmd)}"')
@ -91,7 +92,7 @@ def output():
f'seconds: {node.get("source")}')
dec_cmd = [
'ffmpeg', '-v', log.ff_level.lower(),
'ffmpeg', '-v', f'level+{log.ff_level.lower()}',
'-hide_banner', '-nostats'
] + node['src_cmd'] + node['filter'] + ff_pre_settings

View File

@ -88,12 +88,12 @@ def output():
messenger.info(f'Play: {node.get("source")}')
cmd = [
'ffmpeg', '-v', log.ff_level.lower(), '-hide_banner',
'-nostats'
'ffmpeg', '-v', f'level+{log.ff_level.lower()}',
'-hide_banner', '-nostats'
] + node['src_cmd'] + node['filter'] + [
'-metadata', 'service_name=' + playout.name,
'-metadata', 'service_provider=' + playout.provider,
'-metadata', 'year={}'.format(year)
'-metadata', f'service_name={playout.name}',
'-metadata', f'service_provider={playout.provider}',
'-metadata', f'year={year}'
] + playout.ffmpeg_param + playout.hls_output
messenger.debug(f'Encoder CMD: "{" ".join(cmd)}"')

View File

@ -62,11 +62,11 @@ def output():
try:
enc_cmd = [
'ffmpeg', '-v', log.ff_level.lower(), '-hide_banner',
'ffmpeg', '-v', f'level+{log.ff_level.lower()}', '-hide_banner',
'-nostats', '-re', '-thread_queue_size', '160', '-i', 'pipe:0'
] + overlay + [
'-metadata', 'service_name=' + playout.name,
'-metadata', 'service_provider=' + playout.provider,
'-metadata', f'service_name={playout.name}',
'-metadata', f'service_provider={playout.provider}',
'-metadata', f'year={year}'
] + playout.ffmpeg_param + playout.stream_output
@ -96,7 +96,7 @@ def output():
messenger.info(f'Play: {node.get("source")}')
dec_cmd = [
'ffmpeg', '-v', log.ff_level.lower(),
'ffmpeg', '-v', f'level+{log.ff_level.lower()}',
'-hide_banner', '-nostats'
] + node['src_cmd'] + node['filter'] + ff_pre_settings

View File

@ -703,15 +703,26 @@ def ffmpeg_stderr_reader(std_errors, decoder):
logger = encoder_logger
prefix = ENC_PREFIX
def form_line(line, level):
return f'{prefix}{line.replace(level, "").rstrip()}'
def write_log(line):
if '[info]' in line:
logger.info(form_line(line, '[info] '))
elif '[warning]' in line:
logger.warning(form_line(line, '[warning] '))
elif '[error]' in line:
logger.error(form_line(line, '[error] '))
try:
for line in std_errors:
if log.ff_level == 'INFO':
logger.info(f'{prefix}{line.decode("utf-8").rstrip()}')
write_log(line.decode())
elif log.ff_level == 'WARNING':
logger.warning(f'{prefix}{line.decode("utf-8").rstrip()}')
write_log(line.decode())
else:
logger.error(f'{prefix}{line.decode("utf-8").rstrip()}')
except ValueError:
write_log(line.decode())
except (ValueError, AttributeError):
pass