Comments (10)
刚试了一下B站还是可以正常录制的,本工具调用streamlink录制B站视频,你可以先试一下streamlink是否正常工作
streamlink --loglevel trace -o "test.ts" "https://live.bilibili.com/21672022" "1080p,720p,best"
以前曾经写过一篇文章关于环境配置的,你可以参考:https://www.bilibili.com/read/cv3697584
from streamrecorder.
十分感谢,之前几个发现的问题基本已经解决了。 把streamlink跟ffmpeg都重新安装调试后,B站已经可以开启录制了。 不过因为我的目的实际上是录制twitcasting的弹唱主播视频,还有一些问题我再研究一下。
另外由于你在B站环境配置那篇文章里, baidu网盘的那个iikira/BaiduPCS-GO项目已经给删了。 rclone参考配置用的那篇https://www.meowah.com/archives/876.html链接也打不开。 我只能自己找类似的rclone安装教程。 看的比较靠谱的一个是https://blog.csdn.net/Nedved_L/article/details/101429006
但是这个配饰是设置完rclone config后,有后续的挂载跟设置启动脚本, 不知道跟你的项目里的在config里写rclone remote name怎么配合起来,达到把视频下载后直接转存onedirve的操作
from streamrecorder.
大佬我感觉只差最后一步就能使用了。
今天有一个新发现, 你的recorder.sh里中间关于twitcast的代码有一段
“ MOVIEID=$(wget -q -O- ${LIVE_URL} | grep data-movie-id | awk -F '[="]+' '{print $2}')
ID=$(echo "$CHANNELID"|sed 's/:/:/')
LIVEDL_FNAME="${ID}${MOVIEID}.${SAVEFORMAT}"
FNAME="twitcast
这个我用一个url去测试了:
wget -q -O- https://twitcasting.tv/neko_hutekusare | grep data-movie-id
data-base-url="https://twitcasting.tv/" data-frontend-api-url="https://frontendapi.twitcasting.tv" data-broadcaster-id="neko_hutekusare" data-broadcaster-name="さやかたこわさ" data-broadcaster-screen-name="neko_hutekusare" data-broadcaster-profile-image="//imagegw02.twitcasting.tv/image3s/pbs.twimg.com/profile_images/1291770043202588673/dVEIFmjD_bigger.jpg" data-movie-id="639152117" data-audience-id="" data-account-type="not_logged_in" data-lang="en" data-update-interval="8000" data-cnum="60" data-sns-max-comment-length="140" data-is-sns-available="false" data-is-sns-connected="false" data-is-reply-widget-enabled="true" data-passcode="" >
这个data-movie-id "63915211 是用print$14获取到的,之前脚本的150行报错是因为print $2获取的参数不对。可能是过去一年了, tc台的url格式发生了变化?
这样拿到了id,就能正确获取tc台id,在log中创建日志文件了,有一个可能是mp4格式兼容的问题:Non-monotonous DTS in output stream 0:0; previous: -18000, current: -18000; changing to -17999. This may result in incorrect timestamp。 这个我到时再查查。
但是即使全部弄好了, 看日志在正常录制保存到指定文件夹了, 但是文件夹里还是没有视频文件, 之前bilibili,哪怕没有结束录制,文件都已经存在了:
[root@0ab9dc53bd89 StreamRecorder]# tail -f /var/log/screen/screenlog_tc_20200907_180650.log
[2020-09-07 18:07:00] ===twitcast=== Checking https://twitcasting.tv/c:gabby948...
[2020-09-07 18:07:00] ===twitcast=== Try to get current live stream of https://twitcasting.tv/c:gabby948
[2020-09-07 18:07:00] ===twitcast=== Start recording, stream saved to recorded/tc/twitcast/20200907/twitcast_20200907_180701_639292232.mp4
[2020-09-07 18:07:00] ===twitcast=== recording log saved to log/tc/twitcast/twitcast_20200907_180701_639292232.mp4.log, streaming log saved to log/tc/twitcast/twitcast_20200907_180701_639292232.mp4.streaming.log
^C
[root@0ab9dc53bd89 StreamRecorder]# cd recorded/tc/twitcast/
[root@0ab9dc53bd89 twitcast]# ls
20200907 metadata
[root@0ab9dc53bd89 twitcast]# cd 20200907/
[root@0ab9dc53bd89 20200907]# ls
[root@0ab9dc53bd89 20200907]# pwd
/usr/local/StreamRecorder/recorded/tc/twitcast/20200907
希望你有空的时候,可以帮忙稍微看一下跟twitcasting相关的录制问题。 现在看日志都没报错了,我实在是不知道还有哪里可以修改了。
你在github上面说的tc台需要安装的livedl,也已经装过了
wget https://github.com/yayugu/livedl/releases/download/20181215.36/livedl
chmod +x livedl
from streamrecorder.
晚上我有空看一下,直播网站的格式确实是会发生变化的,youtube就已经变过好几次,twitcasting很可能也变了
文件夹里没有文件其实是因为livedl这个工具默认只能在同目录下保存,并且文件名是固定的,所以我才需要去获取movie-id,并且用来把livedl目录下保存的视频档移动到指定目录中去,你在直播还没结束的时候去查看指定目录那当然是空的,当时使用livedl来下载tc台直播是因为streamlink不支持tc台高清直播,现在过去这么久了也许steamlink已经修复了这个问题
至于rclone,你在global.config里面正确配置好rcloneremotename和servername即可,不用自己挂载到磁盘,下载完视频后,如果autobackup这个参数为on,程序会自动把视频上传到你配置好的onedrive网盘,保存路径是$rcloneremotename:StreamRecorder/$servername/$savepath
TC台问题临时解决方法,把recorder.sh的150行改为:
MOVIEID=$(wget -q -O- ${LIVE_URL} | grep data-movie-id | awk -F '[="]+' '{for(i=1;i<=NF-1;i++)if(
晚点我测试下streamlink,如果steamlink现在正常下载TC台视频,我就统一使用steamlink来下载所有直播,去掉livedl
from streamrecorder.
好的十分感谢,抱歉过了这么久了又麻烦你来改进这个项目
我看完你的回复后又去看了一眼, 在根目录那现在的确出现了很多个.ts格式的视频。但是录制结束后依旧没有被移动到指定目录里。
我在global.config设置了mp4格式, bilibili也的确转换成了mp4格式,不知道为啥tc的视频依旧是ts格式。
这两个是之前的今天下午运行好了的结果,还没按照你的回复去修改150行。我等会再去试试,不过看到运行结果后我还有一个疑问, 不知道是不是有哪个配置项能设分p大小呢? 我下午录制的那个TC台测试直播,给自动分了8个文件感觉有点多了。
from streamrecorder.
代码已提交,主要修复了youtube,twitch,twitcasting格式变化后出现的问题,并且增加了一个程序入口streamrecorder.sh,用于统一控制其他脚本,具体请看更新后的readme
livedl只支持ts格式,所以不管你设置成mp4还是ts都是一样的,TC台的直播并没有分P,可能直播本来就是断断续续的,或者是由于你运行脚本的服务器的网络不稳定造成的
现已统一改成使用steamlink来下载视频(包括TC台),文件直接保存到指定目录里不会暂存到根目录了
from streamrecorder.
辛苦你了大佬,早点休息吧。 我再去测试一下
from streamrecorder.
今天我去检查了一下我服务器上的脚本。 tc台的有正确的录制成mp4格式保存在recorded下面了。
readme里说自动备份打开后会上传网盘并删除本地备份。 不过我autobackup写成on之后, 我在我的ondrive上没有看到视频, 同时recorded里的视频也没有删除。
我感觉我配置的没有问题, 配置rclone的时候也测试过显示出来的url的确连接的是我的网盘。
晚上我去试试手动调用你的那个上传脚本看看会不会成功
from streamrecorder.
你应该手动测试一下rclone命令行能否正常上传文件
rclone copy --no-traverse "savepath" "remotename:targetpath" --include "filename.*" --buffer-size 32M --transfers 6
另外看看log文件夹下autobackup和rclone相关的log文件里记录了什么内容,找到原因
我看你文件名里有?,你可以检查看看你系统的locales是否是UTF8的
from streamrecorder.
不知道下午那个测试的录制为什么没有成功上传。 但我实际想录制的那个弹唱的主播的今晚正常录制并且上传到onedrive了哈哈哈
我是用docker跑了一个centos容器来搞这个的,所以没调整字体格式估计默认不是utf8。 不过现在已经成功了。
十分感谢大佬你的耐心回复以及帮忙修改项目,占用你不少时间了。我网上找了好多个不同的项目,最后还是发现你这个操作最方便同时还能上传网盘,真是太贴心了。
麻烦你那么多天, 最后我把我想去听的那个直播链接给你听听哈哈哈。她底下tc也有几个录播。 你如果有兴趣的话有空也能点开看看, 起码知道这几天修改项目,是为了监控谁的。 那这个issue我也就先关了。祝你后续工作生活一切顺利。
https://twitcasting.tv/neko_hutekusare
from streamrecorder.
Related Issues (7)
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from streamrecorder.