2018-03-31 17:05:16 +08:00
# BiliBili Stream Recorder
2018-03-25 15:23:48 +08:00
[![Build status ](https://ci.appveyor.com/api/projects/status/1n4822yitgtu7ht7?svg=true )](https://ci.appveyor.com/project/Genteure/bililiverecorder)
2018-04-17 12:26:12 +08:00
[![Version ](https://img.shields.io/github/tag/Bililive/BililiveRecorder.svg?label=Version )](#)
[![Issues are "help wanted" ](https://img.shields.io/github/issues/Bililive/BililiveRecorder/help%20wanted.svg )](https://github.com/Bililive/BililiveRecorder/issues?q=is%3Aissue+is%3Aopen+label%3A%22help+wanted%22)
[![Pull Request Welcome ](https://img.shields.io/badge/Pull%20request-welcome-brightgreen.svg )](#)
[![license ](https://img.shields.io/github/license/Bililive/BililiveRecorder.svg )](#)
2018-03-12 18:57:20 +08:00
2018-03-31 17:05:16 +08:00
[简体中文 | Simplified Chinese ](README_CN.md )
2018-03-12 18:57:20 +08:00
2018-03-31 17:05:16 +08:00
## Apology
2018-04-17 12:26:12 +08:00
GitHub is a global platform, and theoretically, everyone should use English. But since this project is only meant for Chinese user and rely on a Chinese website [BiliBili ](https://live.bilibili.com ) (_[wikipedia](https://en.wikipedia.org/wiki/Bilibili)_), all code comments are in Chinese. This README file will always use English so people like _you_ can understand what is this, and perhaps make some use out of it.
2018-03-31 17:05:16 +08:00
## Install & Use
See [rec.danmuji.org ](https://rec.danmuji.org ) (in Chinese)
## Feature
2018-04-07 20:30:34 +08:00
- Easy to use
2018-03-31 17:05:16 +08:00
- Fix timestamp automatically
- Start recording when stream starts
- Record multiple stream at same time
- Have a "Clip" Feature (just like [Twitch's ](https://help.twitch.tv/customer/portal/articles/2442508-how-to-use-clips ))
- Pure C#, no native dependents
- Open source!
## Develop & Getting Started
You'll need:
- Visual Studio 2017 with .NET Core
- PowerShell
Some file are generated by [PreComplie Script ](./CI/patch_buildinfo.ps1 ). Build project to clear errors shown by Visual Studio.
Project | Type | Note
:---:|:---:|:---
BililiveRecorder.WPF | .NET Framework 4.6.2
BililiveRecorder.Core | .NET Standard 2.0
BililiveRecorder.FlvProcessor | .NET Standard 2.0
BililiveRecorder.Server | .NET Core 2.0 | TODO
You can start poking around from...
- `BililiveRecorder.WPF/MainWindow.xaml` about WPF gui
- `BililiveRecorder.Core/Recorder.cs` about core record logic
- `BililiveRecorder.FlvProcessor/FlvStreamProcessor.cs` about FLV data process
## Reference & Acknowledgements
- [coreyauger/flv-streamer-2-file ](https://github.com/coreyauger/flv-streamer-2-file ): An awesome library.
- [zyzsdy/biliroku ](https://github.com/zyzsdy/biliroku ): First BiliBili stream record tool.
- [Video File Format Specification Version 10.pdf ](https://wwwimages2.adobe.com/content/dam/acom/en/devnet/flv/video_file_format_spec_v10.pdf )