56 Commits

Author SHA1 Message Date
53b83db99b Work around VTT files using single-digit hours (#7915) 2025-08-06 21:21:44 +02:00
5b43cfe5c0 Work around feeds with broken mime type (#7846)
If a feed has a broken mime type that is not audio or video,
try to still use it as audio (if there is no audio yet).
This might lead to AP trying to play random other files that are not media files,
but it works around publishers messing up their mime types.
2025-06-25 08:46:30 +02:00
560321cfd6 Vtt support for transcripts (#7537) 2025-04-30 22:18:07 +02:00
ba56f5c76e Show social comment icon on playing screen (#7127) 2025-02-21 22:34:31 +01:00
dd82ec143f Reduce log spam during feed update (#7667) 2025-02-21 21:51:50 +01:00
9ac85bb6e5 Show website title in 'server sent a website' error (#7629) 2025-01-28 22:11:03 +01:00
91f8ed055f Support parsing vorbis comments spanning across pages (#7215) 2024-06-09 10:04:59 +02:00
fc1c13f4a5 Add new date format (#7189) 2024-05-20 20:25:12 +02:00
e856a9f118 Display transcript text and follow along the audio (#7103) 2024-05-18 18:58:36 +02:00
7c4f19c979 Transcript semantic parsing (#6852) 2024-05-18 18:58:01 +02:00
8adbad9b66 Parse podcast:transcript url and store in SQLite (#6739) 2024-05-18 18:57:57 +02:00
ba14510b80 Add support for parsing Nero M4A chapters (#7159) 2024-05-05 10:05:26 +02:00
92ab575b15 Delete core module (#7060) 2024-04-05 19:20:27 +02:00
7b390f1c92 Speed up feed parsing (#7023)
AntennaPod is quite slow with huge feeds. The reason is that we have a bunch of workarounds for misbehaving feeds that also make it slower to work with feeds that do not misbehave.

Changes:

- Only start guessing duplicate episodes when no "proper" match is found
- Only parse non-html as HTML for attributes that really need it
- Do not log failed Long parsing when size is not specified
- Try to parse dates with RFC822 first before falling back to workarounds for other formats

I ran a benchmark with "Stuff you should know" (for which the workarounds are not needed) containing 2k episodes. Includes download of 8MB of feed XML (~5 seconds), debug build.
Before: 44 seconds, after: 13 seconds ==> 3.4 times faster feed refresh
2024-03-24 18:04:39 +01:00
084b9c2317 Store last refresh attempt for feeds (#7022) 2024-03-24 17:57:00 +01:00
f6b45e7162 Rename FeedMedia methods to no longer have underscores (#7017) 2024-03-23 11:27:55 +01:00
cae848b505 Fix indentation in last 8 files 2024-03-04 23:09:59 +01:00
e9d190da1b Bump AGP and Gradle (#6489) 2023-10-17 20:52:21 +02:00
da200f6139 Fix crash if vorbis exception does not have message (#6678) 2023-10-02 21:12:45 +02:00
8b7d3cabac Fix NullPointerException when chapter does not have start time (#6520) 2023-06-20 22:31:44 +02:00
e261514c5b Update feed url when server returns itunes:new-feed-url (#6291) 2023-01-29 12:12:08 +01:00
d61745be86 Check Lint recursively from the :app module
instead of checking every module individually. This avoids having to
re-state all disabled Lint checks in all parent modules.
2022-11-06 11:55:23 +01:00
b9ded7ea3b Don't print full stack trace when there is no vorbis comment 2022-10-27 22:02:08 +02:00
9624d8ce9e Speed up chapter parsing 2022-10-21 21:46:18 +02:00
89cfeb93db Update jsoup library (#5902) 2022-05-26 09:59:10 +02:00
197a0a1044 Merge pull request #5777 from ByteHamster/ignore-item-author
Ignore itunes:author when not child of channel
2022-03-13 11:21:48 +01:00
d31b0daee0 Ignore itunes:author when not child of channel
Co-authored-by: dllmr <dllmr@users.noreply.github.com>
2022-03-13 11:00:35 +01:00
933fde839e Read vorbis description of local files 2022-03-11 20:57:24 +01:00
36a36e4f85 Merge pull request #5769 from ByteHamster/id3-comment
Extract shownotes from id3 comment field
2022-03-10 07:14:48 +01:00
ce8e356647 Extract shownotes from id3 comment field 2022-03-09 22:08:32 +01:00
1a1bf02e8a Support for podcast 2.0 chapters (#5630) 2022-03-06 16:09:09 +01:00
ff3258c34a Move database to its own module 2022-02-27 19:47:41 +01:00
48852e081a Delete a few unused things 2022-02-22 20:14:00 +01:00
acb384b128 Merge branch 'master' into develop 2022-02-19 13:46:12 +01:00
87067af965 Fix some gradle deprecations 2022-02-09 11:28:40 -05:00
6196cd754f Fix line breaks in plain-text descriptions
Workaround was added for publishers misbehaving but the current
implementation breaks valid feeds
2022-01-30 14:47:14 +01:00
cda22a8c5f Manually detect m4b on devices that don't do it 2022-01-29 20:16:46 +01:00
f8927ebc67 Do not hang trying to parse ogg/vorbis chapters 2022-01-27 08:30:00 +01:00
d4d506345b Move mime type guessing out of MediaType enum 2022-01-25 22:08:05 +01:00
c376be44dd When mime type is octet-stream, guess from the file name 2022-01-25 21:55:38 +01:00
1837ce30d1 MIME type is always ISO encoded 2022-01-22 23:09:32 +01:00
3b9dfb3c76 Fix vorbis chapter parsing 2022-01-22 17:16:37 +01:00
49b6386a6d Run parser tests with robolectric 2022-01-22 17:16:37 +01:00
560bf3f434 Centralize library versions used in multiple modules 2021-12-04 13:01:22 -05:00
473ba14f88 Merge pull request #5565 from ByteHamster/simplify-opus
Simplify opus parsing
2021-11-21 21:03:12 +01:00
e2600f54e4 Stop parsing if we encounter an unrealistically long comment 2021-11-21 18:49:50 +01:00
d94bfd80b7 Simplify opus parsing 2021-11-21 18:04:37 +01:00
dd2dd9e4b8 Work around some publishers putting html everywhere 2021-11-16 21:23:52 +01:00
a651317bc2 Apparently some devices crash when trying to call xpp.next 2021-11-06 17:37:04 +01:00
bb9936f696 Ignore item tags that are not inside a channel 2021-10-30 21:58:17 +02:00