[PR #136] [MERGED] [nitter] Add Support for Piped Videos #418

Closed
opened 2026-03-22 12:49:57 -05:00 by GiteaMirror · 0 comments
Owner

📋 Pull Request Information

Original PR: https://github.com/feeddeck/feeddeck/pull/136
Author: @ricoberger
Created: 2/10/2024
Status: Merged
Merged: 2/11/2024
Merged by: @ricoberger

Base: mainHead: nitter-add-support-for-piped-videos


📝 Commits (1)

  • a4a240e [nitter] Add Support for Piped Videos

📊 Changes

9 files changed (+355 additions, -35 deletions)

View changed files

📝 app/lib/widgets/item/details/item_details_nitter.dart (+63 -20)
app/lib/widgets/item/details/utils/item_piped/item_piped_video.dart (+20 -0)
app/lib/widgets/item/details/utils/item_piped/item_piped_video_native.dart (+125 -0)
app/lib/widgets/item/details/utils/item_piped/item_piped_video_stub.dart (+6 -0)
app/lib/widgets/item/details/utils/item_piped/item_piped_video_web.dart (+90 -0)
📝 app/lib/widgets/item/details/utils/item_videos.dart (+32 -14)
📝 app/lib/widgets/item/details/utils/item_youtube/item_youtube_video_native.dart (+2 -1)
📝 app/pubspec.lock (+16 -0)
📝 app/pubspec.yaml (+1 -0)

📄 Description

The Nitter source now supports playing Piped Videos directly within the app. For this we are checking if the Nitter post contains a piped.video url and if this is the case we are using the newly added ItemPipedVideo widget to render the video player, to allow users to directly play the video within the app.

To support Piped videos we had to create a new ItemPipedVideo widget, which is very similar to the ItemYoutubeVideo widget. This means on the web version of FeedDeck we show the Video via an iframe and on the other platforms via our ItemVideoPlayer widget. The main difference between Piped and YouTube widget is the different client we use to fetch the video urls. Besides the Piped API returns two different stream one for the video and one for the audio, so that we had to add an additional audio paramter to the ItemVideoPlayer widget, which allows us to specify an additional audio source for a video.

NOTE: We had to add support for Piped, because Nitter automatically converts the YouTube urls to the corresponding Piped urls.


🔄 This issue represents a GitHub Pull Request. It cannot be merged through Gitea due to API limitations.

## 📋 Pull Request Information **Original PR:** https://github.com/feeddeck/feeddeck/pull/136 **Author:** [@ricoberger](https://github.com/ricoberger) **Created:** 2/10/2024 **Status:** ✅ Merged **Merged:** 2/11/2024 **Merged by:** [@ricoberger](https://github.com/ricoberger) **Base:** `main` ← **Head:** `nitter-add-support-for-piped-videos` --- ### 📝 Commits (1) - [`a4a240e`](https://github.com/feeddeck/feeddeck/commit/a4a240e7e24db784494451c8e4bd1eb6f6a0414f) [nitter] Add Support for Piped Videos ### 📊 Changes **9 files changed** (+355 additions, -35 deletions) <details> <summary>View changed files</summary> 📝 `app/lib/widgets/item/details/item_details_nitter.dart` (+63 -20) ➕ `app/lib/widgets/item/details/utils/item_piped/item_piped_video.dart` (+20 -0) ➕ `app/lib/widgets/item/details/utils/item_piped/item_piped_video_native.dart` (+125 -0) ➕ `app/lib/widgets/item/details/utils/item_piped/item_piped_video_stub.dart` (+6 -0) ➕ `app/lib/widgets/item/details/utils/item_piped/item_piped_video_web.dart` (+90 -0) 📝 `app/lib/widgets/item/details/utils/item_videos.dart` (+32 -14) 📝 `app/lib/widgets/item/details/utils/item_youtube/item_youtube_video_native.dart` (+2 -1) 📝 `app/pubspec.lock` (+16 -0) 📝 `app/pubspec.yaml` (+1 -0) </details> ### 📄 Description The Nitter source now supports playing Piped Videos directly within the app. For this we are checking if the Nitter post contains a piped.video url and if this is the case we are using the newly added `ItemPipedVideo` widget to render the video player, to allow users to directly play the video within the app. To support Piped videos we had to create a new `ItemPipedVideo` widget, which is very similar to the `ItemYoutubeVideo` widget. This means on the web version of FeedDeck we show the Video via an iframe and on the other platforms via our `ItemVideoPlayer` widget. The main difference between Piped and YouTube widget is the different client we use to fetch the video urls. Besides the Piped API returns two different stream one for the video and one for the audio, so that we had to add an additional `audio` paramter to the `ItemVideoPlayer` widget, which allows us to specify an additional audio source for a video. NOTE: We had to add support for Piped, because Nitter automatically converts the YouTube urls to the corresponding Piped urls. <!-- Keep PR title verbose enough and add prefix telling about what source it touches e.g "[rss] Add feature xyz" or if the the PR is not realated to a source use "[core]", e.g. "[core] Fix xyz". If you add a breaking change within your PR you should add ":warning:" to the title, e.g. ":warning: [core] My breaking change" --> <!-- Description of what have been changed. Please also reference an issue, when available. --> --- <sub>🔄 This issue represents a GitHub Pull Request. It cannot be merged through Gitea due to API limitations.</sub>
GiteaMirror added the pull-request label 2026-03-22 12:49:57 -05:00
Sign in to join this conversation.
1 Participants
Notifications
Due Date
No due date set.
Dependencies

No dependencies set.

Reference: github-starred/feeddeck#418