summaryrefslogtreecommitdiff
path: root/src/media.c
AgeCommit message (Collapse)Author
2021-12-30DocumentWidget: Inlining "image/*" responsesJaakko Keränen
Image responses get inlined on gemtext pages. It would make sense to use this mechanism for all media since the MIME type is ultimately what matters in determining the appropriate presentation. The file extensions shouldn't matter. IssueID #373
2021-12-25CleanupJaakko Keränen
Warnings about lost precision.
2021-10-17FontPack management via "about:fonts"Jaakko Keränen
2021-10-17Media and FontPacks (work in progress)Jaakko Keränen
Saving this as the last point of progress. This direction is too complicated: Media needs to be a lot more sophisticated to allow dynamic and interactive media at the level of FontPacks. (A bit like Player handles audio playback.) This will be reverted. FontPack management will happen using an another method.
2021-10-11Media refactoring; working on FontPack managementJaakko Keränen
Media still needs more work to get rid of redundancies and make lookups faster. FontPacks are manipulated as Media items (not unlike images) so they can be previewed on page, and installed via a click. FontPack management is not trivial as it includes such details as versioning and whether individual packs are enabled or disabled.
2021-10-06Media: Print error message from stb_imageJaakko Keränen
2021-09-07CleanupJaakko Keränen
2021-09-07Added BG-to-FG image colorization modeJaakko Keränen
2021-09-07Media: Refined colorized image exposureJaakko Keränen
2021-09-07Media: Brighten colorized images slightlyJaakko Keränen
2021-09-07Added image colorization preferenceJaakko Keränen
Option to colorize images to grayscale, text color, or preformatted color.
2021-08-20Added WebP decoding using libwebpJaakko Keränen
2021-06-10Media: Estimate memory useJaakko Keränen
In-memory images, audio, and downloads are included in RAM usage in Debug Information.
2021-06-10DocumentWidget: Pause audio when document changesJaakko Keränen
While document media is now kept in memory even in history, it's quite strange if audio players keep playing on a page viewed in the past without a way to control the playback.
2021-05-11Cache GmDocuments in memoryJaakko Keränen
Navigation history keeps final GmDocuments in memory for quicker restore when navigating; no need to redo layout. Changed the color escape to Vertical Tab so Carriage Returns can be left in the source, reducing need to normalize spaces.
2021-04-21iOS: Background audio; MP3/AAC playbackJaakko Keränen
2021-03-31Media: Fixed image resizing when there is no maximum texture sizeJaakko Keränen
2021-03-08Scale images for displayJaakko Keränen
Resize images down to the maximum texture size or the screen size, whichever is smaller. IssueID #167
2021-02-26Don't apply MIME hooks on downloaded filesJaakko Keränen
2021-02-26DocumentWidget: Inline downloadsJaakko Keränen
2021-02-25Consolidating media handlingJaakko Keränen
2020-11-24Fixed threading issues and data racesJaakko Keränen
The most serious problem was that GmRequest's response body was being accessed while the TlsRequest thread was modifying it. Now the response must always be locked before accessing elsewhere. There were also inefficient data updates in the media players.
2020-11-03Cleanup: Breaking up documentwidget.cJaakko Keränen
There's a lot of stuff in documentwidget.c. First, moving away the smaller helper code.
2020-10-11Media: Pause other players when a new one startsJaakko Keränen
2020-10-09CleanupJaakko Keränen
Moved buffers out of player.c. Include MIME type with the data so the correct decoder can be chosen. Added stb_vorbis: https://github.com/nothings/stb
2020-10-09Fixed memory leak on tab closeJaakko Keränen
The DocumentWidget was not actually deleted when a tab was closed, only hidden.
2020-10-08Media: Images not processed until data is completeJaakko Keränen
2020-10-07Drawing an audio player UIJaakko Keränen
2020-10-06Updating media contentJaakko Keränen
Making it possible for media to be partially updated, for streaming. Also fixed a problem with multiple concurrent audio players started on a single media item.
2020-10-04Playing back a WAV fileJaakko Keränen
Simple test case works now: loading a 16-bit stereo PCM WAV from a file (i.e., no streaming) and playing it back.
2020-10-04Working on audio playbackJaakko Keränen
Audio players are displayed the same way as images. When playing, a decoder runs in a background thread producing samples suitable for output.
2020-10-01Refactor: Separate media from GmDocumentJaakko Keränen