Add on-the-fly processing for m3u8 content with streaming support, improving HLS playlist handling. Introduce retry mechanism for HTTP streaming requests and configurable timeout via transport settings. Refactor and optimize URL parsing, error handling, and response generation for better robustness and maintainability.
Changed the proxy configuration system to a more flexible transport configuration using HTTPX routing. Introduced new settings for global proxy enablement and robust pattern-based proxy and SSL configurations. Updated README.md with new examples and detailed explanations of the new configurations.
Reorganized extractor routes into dedicated modules for better maintainability. Introduced a base class for extractors, enabling consistent request handling across different services. Additionally, updated configurations and error handling in extractors, enhancing code readability and robustness.
Integrate streaming progress tracking using tqdm_asyncio in the `stream_content` method, controlled by the new `enable_streaming_progress` setting. Update configuration to include this new setting and ensure the progress bar closes properly after streaming.