Commit Graph

44 Commits

Author SHA1 Message Date
Rémi TAUVEL 6cd1af8888 Merge branch 'WIP-CLI-argument-#1' into stable 2022-12-16 12:47:26 +01:00
Rémi TAUVEL 3ee080c88f 📝 add more doc for CLI help string 2022-12-16 12:43:13 +01:00
Rémi TAUVEL 8dce72c01a 📄 add licence comments top 2022-12-16 12:43:13 +01:00
Rémi TAUVEL 2cbe3f9632 💡 french translating docstrings 2022-12-16 12:43:13 +01:00
Rémi TAUVEL 03d45dfbbd 🐛 💡 fixed bad help sentence for resolution argument 2022-12-16 12:43:13 +01:00
Rémi TAUVEL 442df05ea4 🚸 remove flags from script prototype
🩹 naming: not "languages", "version"
2022-12-16 12:43:13 +01:00
Rémi TAUVEL 3b220c6346 🚸 add documentation for user to arguments parser with -h flag 2022-12-16 12:43:13 +01:00
Rémi TAUVEL 9f06e1e761 📝 change readme doc on usage 2022-12-16 12:43:13 +01:00
Rémi TAUVEL 542460fab5 🚚 rename modules and cli parser Class 2022-12-16 12:43:13 +01:00
Rémi TAUVEL 5b811be84b ♻️ wrapped parser functions in a Parser object 2022-12-16 12:43:13 +01:00
Rémi TAUVEL f00dfea85b add tests for cli parser behaviour 2022-12-16 12:43:13 +01:00
Rémi TAUVEL 2a2d0dbdbb 🩹 use argparse library for parsing CLI arguments 2022-12-16 12:43:13 +01:00
Barbagus 14b9c1bb11 Adds the tests directory 2022-12-14 13:55:56 +01:00
Barbagus bd1339e02e Merge pull request '#12 Fix HLS terminology' (#15) from 12-hls-terminology into stable
Reviewed-on: fcode/delarte#15
2022-12-13 16:19:40 +00:00
Barbagus 2894cdd8c8 Fix HLS protocol terminology in the code #12
- versions => renditions
- resolutions => variants
- ranges and/or chunks => segments
- version index => master playlist
- other index => media playlist url

For now, the CLI has not been updated with this terminology, only the
code.
2022-12-13 13:28:28 +01:00
Barbagus 8d018b3ce5 Merge pull request 'Fix issue #13 - split code in multiple modules' (#14) from 13-code-split into stable
Reviewed-on: fcode/delarte#14
2022-12-13 07:58:17 +00:00
Barbagus 6b8f2232c4 Fix issue #13 - split code in multiple modules
Implemented modules:
 - api: deals with ArteTV JSON API
 - hls: deals with HLS protocol
 - muxing: deals with the stream multiplexing
 - naming: deals with output file naming
 - www: deals with ArteTV web interface
2022-12-13 07:29:59 +01:00
Barbagus 9f79687088 Merge pull request 'Fix issue #6' (#10) from 6-ffmpeg-error into stable
Reviewed-on: fcode/delarte#10
2022-12-13 04:40:39 +00:00
Barbagus ddf323cb30 Update readme according to #6 bug fix 2022-12-11 18:36:46 +01:00
Barbagus e700045848 Merge pull request 'Add 'user' vs. 'dev' install commands in README.md' (#9) from barbadev into stable
Reviewed-on: fcode/delarte#9
2022-12-11 17:24:12 +00:00
Barbagus be4363a339 Fix issue #6 on FFMPEG header error
Handle the audio and video channel downloading to temporary files prior
to calling ffmpeg.

Although it might not be necessary, the download is made by "chunks" as
it would be by a client/player.

Downloading progress feedback is printed to the terminal.
2022-12-11 16:09:11 +01:00
Barbagus 547b65d94c Add 'user' vs. 'dev' install commands in README.md 2022-12-10 09:32:38 +01:00
freezed 5f62a1f8ab Merge pull request 'barbagus' (#5) from barbagus into stable
Reviewed-on: fcode/delarte#5
2022-12-09 22:40:44 +00:00
Barbagus a404dd1da4 Get rid of gitlab references 2022-12-09 21:14:57 +01:00
Barbagus f9c20e2149 Match signature for version & resolution functions 2022-12-09 20:52:55 +01:00
Barbagus 9593619c68 Setup the execution arch 2022-12-09 00:34:15 +01:00
Barbagus f22fe297c5 Packaging with flit 2022-12-08 22:39:46 +01:00
Etienne Zind 5125f1d6ba reflect readme terminology in code 2022-12-08 01:20:23 +01:00
Etienne Zind 7dba75faf3 Added .vscode to gitignore 2022-12-08 01:19:19 +01:00
Etienne Zind fa2e57b121 Readme corrections 2022-12-07 22:16:32 +01:00
Etienne Zind 6057014598 Update readme and doc. 2022-12-07 22:04:29 +01:00
Etienne Zind c0feaa820a * refactoring using classmethods
* video resolution selection
* use video/audio URLs directly in FFMPEG command
  (no temporary m3u8 file anymore)
* embed subtitle in final video file
* moved to MKV container to enable auto-on subtitle
2022-12-06 21:05:34 +01:00
Etienne Zind af465ad79e 1) Parse and locally temp/rewrite the main m3u8 file to enable future selection
of resultion. Picks the bigger one for now.
2) Revrite subtitles selection to limit to selected resolution.
2022-12-06 13:19:57 +01:00
Etienne Zind 2b9d8773bd factor out the actual stream download 2022-12-06 11:14:47 +01:00
Etienne Zind 6401c25205 convert variable in main() to lowercase 2022-12-06 09:18:48 +01:00
Etienne Zind d908e4f15b - refactor API calls
- define namedtuple for "config" API
2022-12-06 09:15:15 +01:00
freezed e7668fafe1 🏗 Wrap CLI code in main()
Idiomatic `__main__` usage to ease (future) tests and code structure
see: https://docs.python.org/3/library/__main__.html#idiomatic-usage
2022-12-06 01:38:47 +01:00
freezed e98417e4e9 💥 Convert line endings to LF (unix) 2022-12-06 01:38:47 +01:00
freezed e3791e847e 🔨 Apply pydocstyle to project 2022-12-06 01:38:47 +01:00
freezed e221555e94 🔨 Apply black formatting to project 2022-12-06 01:38:47 +01:00
freezed f9a3adf9ae 📝 Document usage 2022-12-06 01:38:47 +01:00
freezed f74be11f76 📄 Change from WTFPL to AGPL 2022-12-05 23:56:10 +01:00
freezed 68e76085d9 ⚗ WIP: POC to retrieve locally video streams 2022-12-05 22:36:14 +01:00
freezed 7b3be4d42c Initial commit 2022-12-05 21:20:04 +00:00