随身wifi 推流直播
import os
import os.path
import io
dir = "/home/user/bili" #存放播放视频的文件夹
rtmp = "?streamname=live_57124000_8042959&key=a71e086*****************4ad78b&schedule=rtmp&pflag=1" #bilibili 串流密钥
fps = 25
nameList = []
def listDir(dirTemp):
global nameList
if not os.path.exists(dirTemp):
print ("file or directory isn't exist")
return
if os.path.isfile(dirTemp):
nameList.append(dirTemp)
return
resultList = os.listdir(dirTemp)
for fileOrDir in resultList:
listDir(dirTemp + "/" +fileOrDir)
# 用递归将文件目录中的文件全部加入到nameList中
return nameList
def getfilename(file):
tmpint = file.rfind('/')
filename = file[tmpint + 1:]
return filename
def main():
while True:
List = listDir(dir)
List.sort()
for file in List:
print(file)
fw = io.open("mylog", 'a+', encoding='utf8')
fw.write(file)
fw.write('\n')
filename = getfilename(file)
os.system('ffmpeg -re -i "' + file + '" -vcodec libx264 -acodec copy -b:a 192k -r ' + fps + ' -f flv "rtmp://live-push.bilivideo.com/live-bvc/' + rtmp + '"')
main()
后台执行这个推流程序
$ screen -S my_session
$ python3 my_server.py
上述命令中,"screen -S my_session" 表示新建一个名为 "my_session" 的屏幕会话;"python3 my_server.py" 表示在该屏幕会话中启动 "my_server.py" 程序。用户可以随时通过 "Ctrl+a d" 快捷键退出屏幕会话,但程序仍会在后台运行。
由于原视频还是太大导致加载缓慢,考虑更改分辨率。
ffmpeg -i /home/user/bili/taikula.mp4 -vf scale=320:180 -c:a copy output.mp4

好吧太烫了,随身wifi 已经力不从心了

浙公网安备 33010602011771号