Commit Graph

140 Commits

Author SHA1 Message Date
rdiaz738
92f5d34ce2 Refactored with feedback 2025-03-04 16:16:19 -08:00
rdiaz738
8d70ed9d36 Updated ui and backend
Added Sequential, limited and concurrent downloading and import export buttons
2025-03-01 17:43:48 -08:00
rdiaz738
4acb48b12a Merge remote-tracking branch 'upstream/master' 2025-03-01 14:07:31 -08:00
PikuZheng
a77f10541a add "worst" format 2025-01-15 07:55:38 +08:00
Will Smart
6255e490c7 Adds 'pending' to response for GET /history
Allows for some additional integration opportunities by including "pending" items in the json reponse to /history.
2025-01-11 17:12:06 -05:00
admapop
bec65c3705 chore: PR suggestion 2024-12-28 20:41:22 +02:00
admapop
0916c22c06 fix: impersonate property needs to be of the right type and not as it is being passed now via JSON 2024-12-28 17:03:59 +02:00
Peter Copeland
818847a37a fix: provide default value for title when absent 2024-10-01 22:46:56 -06:00
Jean-Francois Simoneau
bde077d23a Add the ability to specify a robots.txt file, with a default disallowing the download links 2024-09-22 02:10:36 -04:00
Alex Shnitman
07b0b9caed documentation fixes and HTTPS boolean fix 2024-09-11 19:40:45 +03:00
VergilGao
84ed2c5f00 Add the ability to be configured as an HTTPS service 2024-08-29 14:54:36 +08:00
VergilGao
04e82533c7 Add a supports_reuse_port method to check if the operating system supports reuse port. 2024-08-29 14:21:15 +08:00
Pawel Derehajlo
9675cbe988 fixed: Regression causing playlist output format to be applied to every video 2024-08-21 23:52:38 +02:00
Pawel Derehajlo
301ff92b58 added OUTPUT_TEMPLATE_PLAYLIST variable 2024-08-19 16:31:25 +02:00
Pawel Derehajlo
5b64f2f615 fixed: urls with a video in a playlist were incorrectly downloaded as a whole playlist as single item instead of split by each video 2024-08-18 11:27:15 +02:00
Pawel Derehajlo
c675db1ae5 Added Playlist Strict mode and Item limits 2024-08-18 11:07:59 +02:00
evilmonkeydiaz
e4fa9723ba Update main.py 2024-08-17 18:02:48 -07:00
evilmonkeydiaz
2097a7adfa Added concurrent and limited modes 2024-08-17 16:09:42 -07:00
evilmonkeydiaz
8552faf9c5 Concurrent downloads 2024-08-17 15:15:53 -07:00
evilmonkeydiaz
d2bf4bd385 update class 2024-08-17 14:22:03 -07:00
evilmonkeydiaz
50e67e1459 Update ytdl.py 2024-08-17 13:27:35 -07:00
evilmonkeydiaz
07a2315703 Updated to cocurrent downloads attempt 1 2024-08-17 12:25:12 -07:00
Joel Goguen
41da9fdadd Add separate quality entry for iOS compatibility
The iOS-compatible video may not be the best quality. Add a separate quality option to accommodate people who want the best available versus the best compatible with iOS's strict requirements.

Testing with https://www.youtube.com/watch?v=YiRMs5ZhcH4 where the best quality video is 2160p and not iOS-compatible.

With best quality, the VP9 video format is used (better quality but not iOS-compatible):

```
% ffprobe -hide_banner Who\ Can\ Find\ the\ Weirdest\ PC\ Parts\ on\ AliExpress?.mp4
Input #0, mov,mp4,m4a,3gp,3g2,mj2, from 'Who Can Find the Weirdest PC Parts on AliExpress?.mp4':
Metadata:
major_brand     : isom
minor_version   : 512
compatible_brands: isomiso2mp41
encoder         : Lavf60.16.100
Duration: 00:19:02.72, start: 0.000000, bitrate: 10941 kb/s
Stream #0:0[0x1](und): Video: vp9 (Profile 0) (vp09 / 0x39307076), yuv420p(tv, bt709), 3840x1920, 10805 kb/s, 29.97 fps, 29.97 tbr, 16k tbn (default)
Metadata:
handler_name    : ISO Media file produced by Google Inc. Created on: 06/15/2024.
vendor_id       : [0][0][0][0]
Stream #0:1[0x2](eng): Audio: aac (LC) (mp4a / 0x6134706D), 44100 Hz, stereo, fltp, 128 kb/s (default)
Metadata:
handler_name    : ISO Media file produced by Google Inc.
vendor_id       : [0][0][0][0]
```

With "Best (iOS)" quality, the H264 video (lower quality but iOS-compatible) is used:

```
% ffprobe -hide_banner Who\ Can\ Find\ the\ Weirdest\ PC\ Parts\ on\ AliExpress?.mp4
Input #0, mov,mp4,m4a,3gp,3g2,mj2, from 'Who Can Find the Weirdest PC Parts on AliExpress?.mp4':
Metadata:
major_brand     : isom
minor_version   : 512
compatible_brands: isomiso2avc1mp41
encoder         : Lavf60.16.100
Duration: 00:19:02.72, start: 0.000000, bitrate: 1846 kb/s
Stream #0:0[0x1](und): Video: h264 (High) (avc1 / 0x31637661), yuv420p(tv, bt709, progressive), 1920x960 [SAR 1:1 DAR 2:1], 1710 kb/s, 29.97 fps, 29.97 tbr, 30k tbn (default)
Metadata:
handler_name    : ISO Media file produced by Google Inc.
vendor_id       : [0][0][0][0]
Stream #0:1[0x2](eng): Audio: aac (LC) (mp4a / 0x6134706D), 44100 Hz, stereo, fltp, 128 kb/s (default)
Metadata:
handler_name    : ISO Media file produced by Google Inc.
vendor_id       : [0][0][0][0]
```

Included a README note about the new quality option.
2024-06-15 13:36:04 -04:00
PikuZheng
69c2f310c2 add flac format for audio 2024-06-07 10:35:04 +08:00
Joel Goguen
ebbe0ac7aa Update MP4 format string for iOS compatibility
iOS has strict requirements for video files, requiring h264 or h265 video codec and aac audio codec in MP4 container. This update to the MP4 format string tries to get a fully compatible file first, followed by the right video codec and any M4A audio (audio is much faster to convert if needed), and then falls back to the original behaviour of getting the best available MP4 video and M4A audio.
2024-05-21 08:36:27 -04:00
Alex
63f11fb1ea Merge pull request #431 from jfsimoneau/no-audio-convert
Don't convert audio if unnecessary
2024-05-02 21:26:27 +03:00
vaaski
3440d0adeb add PUBLIC_HOST_AUDIO_URL 2024-05-02 13:10:41 +02:00
vaaski
e89da396cd add PUBLIC_HOST_URL config key 2024-05-02 12:56:52 +02:00
Jean-Francois Simoneau
2142e759aa Don't convert audio if necessary 2024-04-30 14:10:55 -04:00
Alex
06606c7b40 Merge pull request #385 from vkartk/fix-cancel-nonstarted-downloads-383
Fix cancellation & deletion for non-started downloads (#383)
2024-01-26 10:51:48 +02:00
vkartk
f9a2a697df Prevent crash on missing filename (status.get) 2024-01-26 14:04:47 +05:30
vkartk
9e9112f7ef Fix cancelling non-started downloads (#383) 2024-01-26 11:06:54 +05:30
vkartk
d5e6c8bf98 Backend: Integrate file size calculation and API endpoint (#322) 2024-01-26 09:38:38 +05:30
Jonas Reeb
2f7f72a553 metube-363 Pass paths also when extracting metadata
In some cases, such as when writing thumbnails this call can still cause creation of non-temporary files on disk which should then also be placed in DOWNLOAD_DIR
2024-01-02 11:05:51 +01:00
Philipp Hutterer
c90057edc1 chore: move icons to frontend assets 2023-12-30 04:18:46 +01:00
Qiao Wang
ab189f8533 Fix the behavior when auto-start option is not explicitly passed 2023-12-13 21:06:39 +08:00
Qiao Wang
fcc7a4808e Merge branch 'master' of https://github.com/nodew/metube into auto-start 2023-12-09 12:49:41 +08:00
Qiao Wang
60e810450d Fix 2023-12-09 12:43:10 +08:00
Qiao Wang
d12fc37a50 Add auto start option for metube 2023-12-09 12:35:31 +08:00
ArabCoders
2a57447018 Removed default param for error 2023-11-16 20:50:02 +03:00
ArabCoders
9552fb3ca0 report date time correctly. 2023-11-16 16:16:00 +03:00
ArabCoders
74d07f5cb2 Added support for showing when live stream starts as error message. 2023-11-16 15:54:36 +03:00
ArabCoders
72b7447c78 use serializer.encode instead of json.dumps 2023-11-03 15:57:15 +03:00
ArabCoders
caca271e19 Fixed code style 2023-11-03 15:23:02 +03:00
ArabCoders
fead1f99c7 reverted CRLF to LF changes 2023-11-03 14:16:11 +03:00
ArabCoders
25c44b4da9 Expose done/queue list as json endpoint 2023-11-03 14:02:37 +03:00
Robert Smits
c64dda8ca7 Fix theme handling and auto theme
This commit fixes the client side theme selection being overwritten by the backend and adds a selectable auto theming option.
2023-10-01 18:23:11 +02:00
Alex
27def1f670 separated YTDL_OPTIONS_FILE 2023-08-19 21:03:08 +00:00
ArabCoders
207f8fe916 switched logging to DEBUG instead of info. 2023-08-14 05:04:39 +03:00
ArabCoders
01aafe3854 Fixed typo and removed unused import 2023-08-14 04:53:16 +03:00