HLS streaming option

This commit is contained in:
j 2021-10-14 14:47:15 +01:00
parent 95bc1995e9
commit ab7943f6a7

View File

@ -3,8 +3,10 @@ import os
import json
import subprocess
config = {
'RTMP_URL': "rtmp://a.rtmp.youtube.com/live2",
'RTMP_URL': 'rtmp://a.rtmp.youtube.com/live2/{STREAM_KEY}',
'HLS_URL': 'https://a.upload.youtube.com/http_upload_hls?cid=${STREAM_KEY}&copy=0&file=live.m3u8',
'SRC': 'rtsp://192.168.1.64:554/Streaming/channels/103',
'STREAM_KEY': 'not-set'
}
@ -14,19 +16,33 @@ with open('youtube.json') as fd:
cmd = [
'ffmpeg',
'-hide_banner',
'-threads', '4',
'-i',
config['SRC'],
'-f', 'lavfi', '-i', 'anullsrc=channel_layout=stereo:sample_rate=44100',
'-map', '0:v',
'-map', '1:a',
'-codec:a', 'libmp3lame',
'-threads', '4',
'-b:a', '11025',
'-bufsize', '1024k',
'-fflags', '+genpts',
'-c:v', 'copy',
'-f', 'flv',
'-reconnect', '1',
'{RTMP_URL}/{STREAM_KEY}'.format(**config)
]
if config.get('HLS'):
cmd += [
'-codec:a', 'aac',
'-b:a', '44100',
'-bufsize', '1024k',
'-c:v', 'copy',
'-f', 'hls', '-method', 'PUT', '-hls_time', '2', '-hls_list_size', '4',
'-reconnect', '1',
config['HLS_URL'].format(**config)
]
else:
cmd += [
'-codec:a', 'libmp3lame',
'-threads', '4',
'-b:a', '11025',
'-bufsize', '1024k',
'-fflags', '+genpts',
'-c:v', 'copy',
'-f', 'flv',
'-reconnect', '1',
config['RTMP_URL'].format(**config)
]
subprocess.check_output(cmd)