Commit graph

186 commits

Author SHA1 Message Date
Pierre Rudloff
c30b0a4049 Remove unused classes 2020-05-14 14:11:22 +02:00
Pierre Rudloff
6a19a1ddc1 Use the new Symfony error handler 2020-05-13 22:57:25 +02:00
Pierre Rudloff
6adc1df213 phpstan update
Better typying
2020-05-13 22:28:05 +02:00
Pierre Rudloff
74db3b9ad0 Update guzzle to 6.5 2020-05-13 21:39:38 +02:00
Pierre Rudloff
71d49ad74f Lint 2020-05-13 21:18:32 +02:00
Pierre Rudloff
09e372175f Fall back to "best" for audio conversion when "bestaudio" is not available (fixes #269) 2020-04-04 17:52:55 +02:00
Pierre Rudloff
ef493074d4 Refactor error controller 2019-12-02 22:04:14 +01:00
Pierre Rudloff
850fc80622 Add support for variables in translation (#250) 2019-11-29 22:13:11 +01:00
Pierre Rudloff
aabcee25f0 Custom fatal error handler 2019-11-27 23:49:01 +01:00
Pierre Rudloff
a5bd827d21 Switch to symfony/translation for translations (#250) 2019-11-27 23:15:49 +01:00
Pierre Rudloff
0b1ce90f47 New debug option 2019-11-27 21:41:15 +01:00
Pierre Rudloff
d0add4955d
Merge pull request #245 from yassineim/patch-1
Add missing closing double-quote in filename header for remuxes
2019-11-06 14:00:07 +01:00
Yassine Imounachen
8645ffd08a
Add missing closing double-quote in filename header for remuxes 2019-10-31 13:41:16 +01:00
Pierre Rudloff
9fc21b2419 fix: always use headers provided by youtube-dl when streaming 2019-10-16 23:00:05 +02:00
Pierre Rudloff
44bf858c35 style(phpcs): Switch to PSR-12
https://www.php-fig.org/psr/psr-12/
2019-10-03 21:24:12 +02:00
Pierre Rudloff
6cd8eeed4a fix: Use cookies provided by youtube-dl
Fixes #225
2019-09-26 21:36:40 +02:00
Pierre Rudloff
5f5b0a5cf5 fix: Fix stream download
guzzlehttp/psr7 1.6 does not accept empty headers
2019-07-04 23:12:44 +02:00
Pierre Rudloff
2ec732b33e style: Remove useless "use" statement 2019-06-17 22:53:28 +02:00
Pierre Rudloff
30d52943e1 fix: Try to convert bestaudio if possible 2019-05-04 18:47:07 +02:00
Pierre Rudloff
b91fe78dcd feat: Make streaming optional when stream mode is enabled
Closes #218
2019-04-28 00:36:14 +02:00
Pierre Rudloff
84e9e86d28 style(styleci): Lint 2019-04-22 21:08:36 +02:00
Pierre Rudloff
e13404903b refactor: Move exceptions and streams to seperate namespaces 2019-04-22 21:06:05 +02:00
Pierre Rudloff
1a6ff90eac feat: Split Youtube downloads in smaller chunks
Fixes #217
2019-04-22 20:20:04 +02:00
Pierre Rudloff
bba2087a55 style(styleci): Lint 2019-04-22 17:04:59 +02:00
Pierre Rudloff
1387d836dc refactor: New Session class
So that session is shared between classes and does not get overwritten
2019-04-22 17:03:54 +02:00
Pierre Rudloff
25f33bba56 refactor: Split FrontController into multiple classes
Closes #177
2019-04-22 16:51:48 +02:00
Pierre Rudloff
1df06f7c22 refactor: Use route names that make more sense 2019-04-22 15:31:51 +02:00
Pierre Rudloff
1edd623c7f fix: Enforce convert mode
So it can't be used by adding "&audio=on" manually
2019-04-21 23:16:27 +02:00
Pierre Rudloff
70475f83d4 feat: Add a way to convert an entire playlist
Closes #194
2019-04-21 22:56:43 +02:00
Pierre Rudloff
97a7830196 refactor: Reuse Video::getHttpResponse() where possible 2019-04-21 22:38:27 +02:00
Pierre Rudloff
e93ab7ed13 feat: Use ZIP files for playlist archives
It is more widely supported and could be later used for #194
2019-04-21 22:34:45 +02:00
Pierre Rudloff
226f1b8380 fix: Don't use the $url property
It is not reliable
2019-04-21 22:20:05 +02:00
Pierre Rudloff
61cb73dc59 refactor: Fix some types and unused variables 2019-04-21 19:51:16 +02:00
Pierre Rudloff
4c9af8ad1d refactor: New Video class
The news class provides a cleaner object-oriented logic

BREAKING CHANGE: The VideoDownload class has been removed and the Config constructor is now private
2019-04-21 18:30:02 +02:00
Pierre Rudloff
f9bf3b8d47 refactor: Use a StreamInterface for PlaylistArchiveStream
It is much cleaner
2019-04-21 00:35:43 +02:00
Pierre Rudloff
ac3b768b50 refactor(phpstan): Various code improvements 2019-03-31 16:25:17 +02:00
Pierre Rudloff
80b44af772 style: Clarify long conditions 2019-03-30 18:33:05 +01:00
Pierre Rudloff
f315343798 refactor: Cleanup best format logic
Reuse $defaultFormat everywhere instead of duplicating conditions
2019-03-27 00:25:02 +01:00
Pierre Rudloff
506584ceee fix: Specify allowed protocols explicitely
"^=http" also catches http_dash_segments
2019-03-24 15:13:01 +01:00
Pierre Rudloff
e90b9e3439 fix: Missing Smarty variable in some routes 2019-01-15 11:16:21 +01:00
Pierre Rudloff
c6cf05f8ec refactor: Move app name to a config variable
See #205
2019-01-06 16:59:16 +01:00
Pierre Rudloff
5b7b101a8a refactor(FrontController): We don't need to set the filename twice 2018-12-28 20:01:46 +01:00
Pierre Rudloff
ecd5bf306a fixup! feat: Add support for HTTP range requests when stream mode is enabled 2018-09-18 18:52:56 +02:00
Pierre Rudloff
4cbc21de46 feat: Add support for HTTP range requests when stream mode is enabled
Fixes #192
2018-09-18 18:49:43 +02:00
Pierre Rudloff
9a688e931a fix: Check if the url GET parameter is empty 2018-08-13 10:05:38 +02:00
Pierre Rudloff
b8b6180609 feat: Allow Youtube-like URLs
Fixes #184
2018-08-04 15:47:22 +02:00
Pierre Rudloff
298848a2f1 fix: Remux mode should fall back to best format if bestvideo+bestaudio is not available 2018-07-05 17:05:12 +02:00
Pierre Rudloff
159ea245a8 fix: Undefined variables 2018-07-03 19:52:24 +02:00
Pierre Rudloff
f1cf0a2cdc feat: Add a way to trim the audio 2018-07-03 19:47:35 +02:00
Pierre Rudloff
1e4e6b52be fix: Set default format to "bestvideo+bestaudio" when remux mode is enabled
This fixes an issue on websites like Reddit that only server separate video/audio files

See #173
2018-06-03 18:27:37 +02:00