├── .github └── workflows │ └── build.yml ├── .gitignore ├── README.md ├── go.mod ├── go.sum ├── internal ├── command │ ├── my_option.go │ └── root.go ├── config │ ├── downloader_config.go │ └── env_config_key.go ├── crypto │ ├── aes_util.go │ └── chacha20_util.go ├── downloader │ ├── download_manager.go │ ├── downloader.go │ └── simple_downloader.go ├── entity │ ├── custom_range.go │ ├── download_result.go │ ├── encrypt_info.go │ ├── enums.go │ ├── media_part.go │ ├── media_segment.go │ ├── mediainfo.go │ ├── mux_options.go │ ├── playlist.go │ ├── speed_container.go │ ├── stream_filter.go │ ├── stream_spec.go │ └── webvtt.go ├── parser │ ├── dash_parser.go │ ├── hls_parser.go │ ├── mss_parser.go │ └── stream_extractor.go └── util │ ├── command_util.go │ ├── complex_param_parser.go │ ├── console.go │ ├── file_util.go │ ├── filter_util.go │ ├── global_util.go │ ├── http_util.go │ ├── interactive_selector.go │ ├── language_code_util.go │ ├── large_single_file_split_util.go │ ├── logger.go │ ├── mediainfo_util.go │ ├── merge_util.go │ ├── mp4_decrypt_util.go │ ├── mp4_parser.go │ ├── mp4_ttml_util.go │ ├── mp4_vtt_util.go │ ├── mss_moov_processor.go │ ├── retry_util.go │ ├── selector.go │ └── ui.go └── main.go /.github/workflows/build.yml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/xhlove/N_m3u8DL-RE-GO/HEAD/.github/workflows/build.yml -------------------------------------------------------------------------------- /.gitignore: -------------------------------------------------------------------------------- 1 | bin 2 | Downloads 3 | prompt.md -------------------------------------------------------------------------------- /README.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/xhlove/N_m3u8DL-RE-GO/HEAD/README.md -------------------------------------------------------------------------------- /go.mod: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/xhlove/N_m3u8DL-RE-GO/HEAD/go.mod -------------------------------------------------------------------------------- /go.sum: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/xhlove/N_m3u8DL-RE-GO/HEAD/go.sum -------------------------------------------------------------------------------- /internal/command/my_option.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/xhlove/N_m3u8DL-RE-GO/HEAD/internal/command/my_option.go -------------------------------------------------------------------------------- /internal/command/root.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/xhlove/N_m3u8DL-RE-GO/HEAD/internal/command/root.go -------------------------------------------------------------------------------- /internal/config/downloader_config.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/xhlove/N_m3u8DL-RE-GO/HEAD/internal/config/downloader_config.go -------------------------------------------------------------------------------- /internal/config/env_config_key.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/xhlove/N_m3u8DL-RE-GO/HEAD/internal/config/env_config_key.go -------------------------------------------------------------------------------- /internal/crypto/aes_util.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/xhlove/N_m3u8DL-RE-GO/HEAD/internal/crypto/aes_util.go -------------------------------------------------------------------------------- /internal/crypto/chacha20_util.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/xhlove/N_m3u8DL-RE-GO/HEAD/internal/crypto/chacha20_util.go -------------------------------------------------------------------------------- /internal/downloader/download_manager.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/xhlove/N_m3u8DL-RE-GO/HEAD/internal/downloader/download_manager.go -------------------------------------------------------------------------------- /internal/downloader/downloader.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/xhlove/N_m3u8DL-RE-GO/HEAD/internal/downloader/downloader.go -------------------------------------------------------------------------------- /internal/downloader/simple_downloader.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/xhlove/N_m3u8DL-RE-GO/HEAD/internal/downloader/simple_downloader.go -------------------------------------------------------------------------------- /internal/entity/custom_range.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/xhlove/N_m3u8DL-RE-GO/HEAD/internal/entity/custom_range.go -------------------------------------------------------------------------------- /internal/entity/download_result.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/xhlove/N_m3u8DL-RE-GO/HEAD/internal/entity/download_result.go -------------------------------------------------------------------------------- /internal/entity/encrypt_info.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/xhlove/N_m3u8DL-RE-GO/HEAD/internal/entity/encrypt_info.go -------------------------------------------------------------------------------- /internal/entity/enums.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/xhlove/N_m3u8DL-RE-GO/HEAD/internal/entity/enums.go -------------------------------------------------------------------------------- /internal/entity/media_part.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/xhlove/N_m3u8DL-RE-GO/HEAD/internal/entity/media_part.go -------------------------------------------------------------------------------- /internal/entity/media_segment.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/xhlove/N_m3u8DL-RE-GO/HEAD/internal/entity/media_segment.go -------------------------------------------------------------------------------- /internal/entity/mediainfo.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/xhlove/N_m3u8DL-RE-GO/HEAD/internal/entity/mediainfo.go -------------------------------------------------------------------------------- /internal/entity/mux_options.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/xhlove/N_m3u8DL-RE-GO/HEAD/internal/entity/mux_options.go -------------------------------------------------------------------------------- /internal/entity/playlist.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/xhlove/N_m3u8DL-RE-GO/HEAD/internal/entity/playlist.go -------------------------------------------------------------------------------- /internal/entity/speed_container.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/xhlove/N_m3u8DL-RE-GO/HEAD/internal/entity/speed_container.go -------------------------------------------------------------------------------- /internal/entity/stream_filter.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/xhlove/N_m3u8DL-RE-GO/HEAD/internal/entity/stream_filter.go -------------------------------------------------------------------------------- /internal/entity/stream_spec.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/xhlove/N_m3u8DL-RE-GO/HEAD/internal/entity/stream_spec.go -------------------------------------------------------------------------------- /internal/entity/webvtt.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/xhlove/N_m3u8DL-RE-GO/HEAD/internal/entity/webvtt.go -------------------------------------------------------------------------------- /internal/parser/dash_parser.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/xhlove/N_m3u8DL-RE-GO/HEAD/internal/parser/dash_parser.go -------------------------------------------------------------------------------- /internal/parser/hls_parser.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/xhlove/N_m3u8DL-RE-GO/HEAD/internal/parser/hls_parser.go -------------------------------------------------------------------------------- /internal/parser/mss_parser.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/xhlove/N_m3u8DL-RE-GO/HEAD/internal/parser/mss_parser.go -------------------------------------------------------------------------------- /internal/parser/stream_extractor.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/xhlove/N_m3u8DL-RE-GO/HEAD/internal/parser/stream_extractor.go -------------------------------------------------------------------------------- /internal/util/command_util.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/xhlove/N_m3u8DL-RE-GO/HEAD/internal/util/command_util.go -------------------------------------------------------------------------------- /internal/util/complex_param_parser.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/xhlove/N_m3u8DL-RE-GO/HEAD/internal/util/complex_param_parser.go -------------------------------------------------------------------------------- /internal/util/console.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/xhlove/N_m3u8DL-RE-GO/HEAD/internal/util/console.go -------------------------------------------------------------------------------- /internal/util/file_util.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/xhlove/N_m3u8DL-RE-GO/HEAD/internal/util/file_util.go -------------------------------------------------------------------------------- /internal/util/filter_util.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/xhlove/N_m3u8DL-RE-GO/HEAD/internal/util/filter_util.go -------------------------------------------------------------------------------- /internal/util/global_util.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/xhlove/N_m3u8DL-RE-GO/HEAD/internal/util/global_util.go -------------------------------------------------------------------------------- /internal/util/http_util.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/xhlove/N_m3u8DL-RE-GO/HEAD/internal/util/http_util.go -------------------------------------------------------------------------------- /internal/util/interactive_selector.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/xhlove/N_m3u8DL-RE-GO/HEAD/internal/util/interactive_selector.go -------------------------------------------------------------------------------- /internal/util/language_code_util.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/xhlove/N_m3u8DL-RE-GO/HEAD/internal/util/language_code_util.go -------------------------------------------------------------------------------- /internal/util/large_single_file_split_util.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/xhlove/N_m3u8DL-RE-GO/HEAD/internal/util/large_single_file_split_util.go -------------------------------------------------------------------------------- /internal/util/logger.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/xhlove/N_m3u8DL-RE-GO/HEAD/internal/util/logger.go -------------------------------------------------------------------------------- /internal/util/mediainfo_util.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/xhlove/N_m3u8DL-RE-GO/HEAD/internal/util/mediainfo_util.go -------------------------------------------------------------------------------- /internal/util/merge_util.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/xhlove/N_m3u8DL-RE-GO/HEAD/internal/util/merge_util.go -------------------------------------------------------------------------------- /internal/util/mp4_decrypt_util.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/xhlove/N_m3u8DL-RE-GO/HEAD/internal/util/mp4_decrypt_util.go -------------------------------------------------------------------------------- /internal/util/mp4_parser.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/xhlove/N_m3u8DL-RE-GO/HEAD/internal/util/mp4_parser.go -------------------------------------------------------------------------------- /internal/util/mp4_ttml_util.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/xhlove/N_m3u8DL-RE-GO/HEAD/internal/util/mp4_ttml_util.go -------------------------------------------------------------------------------- /internal/util/mp4_vtt_util.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/xhlove/N_m3u8DL-RE-GO/HEAD/internal/util/mp4_vtt_util.go -------------------------------------------------------------------------------- /internal/util/mss_moov_processor.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/xhlove/N_m3u8DL-RE-GO/HEAD/internal/util/mss_moov_processor.go -------------------------------------------------------------------------------- /internal/util/retry_util.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/xhlove/N_m3u8DL-RE-GO/HEAD/internal/util/retry_util.go -------------------------------------------------------------------------------- /internal/util/selector.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/xhlove/N_m3u8DL-RE-GO/HEAD/internal/util/selector.go -------------------------------------------------------------------------------- /internal/util/ui.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/xhlove/N_m3u8DL-RE-GO/HEAD/internal/util/ui.go -------------------------------------------------------------------------------- /main.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/xhlove/N_m3u8DL-RE-GO/HEAD/main.go --------------------------------------------------------------------------------