BiliBili_DownloadFileProcessor
A naive app to process download files from BiliBili app and turns them into available mp4 or mp3 automatically.
Link: https://github.com/HangYaHan/BiliBili_DownloadFileProcessor
Features
- Automatically scans and processes BiliBili app download folders
- Converts .m4s files to .mp4
- Extracts audio and converts .mp4 to .mp3 using FFmpeg
- Results are named by its video title
- Supports Chinese filenames
- Simple command-line interface
Dependencies
- FFmpeg (for media conversion)
- nlohmann/json (for JSON parsing)
- C++17 or later
- CMake 3.10 or later
Only Windows is supported currently, older versions of dependencies might work but are not tested.
Installation & Build
-
Clone this repository.
nlohmann/json is header-only and already included in the
includefolder.
FFmpeg is not included due to its size. Please downloadffmpeg.exemanually (see the link above) and place it in theffmpegdirectory. Alternatively, you can run the provideddownload_ffmpeg.batscript to fetch it automatically.Or, if you prefer:
Download the release package from the
releasesection of this repository. All required files are included—no need to build, so you can skip step 2 below. Simply extract everything to your Bilibili download folder. For details, see the Usage section below. -
Build with CMake:
mkdir build cd build cmake .. cmake --build .
If you already have FFmpeg installed, just copy
ffmpeg.exe(and any required .dll files) to theffmpegdirectory. For details, see the Usage section below.
Usage
I strongly recommend you to see the video tutorial first: https://www.example.com (Not available now)
- Place the executable
BiliBili_DownloadFileProcessor.exeand the folderffmpegto the Bilibili download directory. Please ensure theffmpegfolder containsffmpeg.exe, and don't forget any required .dll files if there are any. - Run the executable file BiliBili_DownloadFileProcessor.exe, it will automatically process all relevant files in the directory. (ffmpeg.exe is dependence, must be in the same directory and don't run it.)
- Processed mp4 and mp3 files will be output to the
Resultdirectory. (If the directory doesn't exist, it will be created automatically.)
Here is an example of the folder structure after placing the executable and ffmpeg folder:
[**video offline download folder**]
├── some_video_folder/something
├── BiliBili_DownloadFileProcessor.exe
└── ffmpeg/
├── ffmpeg.exe
└── (any required .dll files if there are any)
Directory Structure
BiliBili_DownloadFileProcessor/
├── include/ # Header files
├── src/ # Source files
├── bin/ # The executables will be generated here
├── CMakeLists.txt # Build configuration
├── README.md # Project documentation
License
- This project uses FFmpeg (GPL-3.0 License).
- It also uses nlohmann/json (MIT License).
- All other source code in this repository is licensed under the MIT License unless otherwise specified.
Acknowledgements
Contact
For questions or suggestions, please open an issue on GitHub.
Todo
- If there is no ffmpeg.exe found, the program should display an error message and exit gracefully.