feat: whisper STT and record screen (#1363)

This commit is contained in:
Markos Gogoulos
2025-09-01 15:11:38 +03:00
committed by GitHub
parent 8cbeb72dd2
commit 817e16ac60
52 changed files with 1179 additions and 339 deletions

View File

@@ -7,6 +7,8 @@ from django.urls import path, re_path
from . import management_views, views
from .feeds import IndexRSSFeed, SearchRSSFeed
friendly_token = r"(?P<friendly_token>[\w\-_]*)"
urlpatterns = [
path("i18n/", include("django.conf.urls.i18n")),
re_path(r"^$", views.index),
@@ -28,12 +30,12 @@ urlpatterns = [
re_path(r"^latest$", views.latest_media),
re_path(r"^members", views.members, name="members"),
re_path(
r"^playlist/(?P<friendly_token>[\w]*)$",
rf"^playlist/{friendly_token}$",
views.view_playlist,
name="get_playlist",
),
re_path(
r"^playlists/(?P<friendly_token>[\w]*)$",
rf"^playlists/{friendly_token}$",
views.view_playlist,
name="get_playlist",
),
@@ -41,6 +43,7 @@ urlpatterns = [
re_path(r"^recommended$", views.recommended_media),
path("rss/", IndexRSSFeed()),
re_path("^rss/search", SearchRSSFeed()),
re_path(r"^record_screen", views.record_screen, name="record_screen"),
re_path(r"^search", views.search, name="search"),
re_path(r"^scpublisher", views.upload_media, name="upload_media"),
re_path(r"^tags", views.tags, name="tags"),
@@ -53,7 +56,7 @@ urlpatterns = [
re_path(r"^api/v1/media$", views.MediaList.as_view()),
re_path(r"^api/v1/media/$", views.MediaList.as_view()),
re_path(
r"^api/v1/media/(?P<friendly_token>[\w\-_]*)$",
rf"^api/v1/media/{friendly_token}$",
views.MediaDetail.as_view(),
name="api_get_media",
),
@@ -64,32 +67,32 @@ urlpatterns = [
),
re_path(r"^api/v1/search$", views.MediaSearch.as_view()),
re_path(
r"^api/v1/media/(?P<friendly_token>[\w]*)/actions$",
rf"^api/v1/media/{friendly_token}/actions$",
views.MediaActions.as_view(),
),
re_path(
r"^api/v1/media/(?P<friendly_token>[\w]*)/chapters$",
rf"^api/v1/media/{friendly_token}/chapters$",
views.video_chapters,
),
re_path(
r"^api/v1/media/(?P<friendly_token>[\w]*)/trim_video$",
rf"^api/v1/media/{friendly_token}/trim_video$",
views.trim_video,
),
re_path(r"^api/v1/categories$", views.CategoryList.as_view()),
re_path(r"^api/v1/tags$", views.TagList.as_view()),
re_path(r"^api/v1/comments$", views.CommentList.as_view()),
re_path(
r"^api/v1/media/(?P<friendly_token>[\w]*)/comments$",
rf"^api/v1/media/{friendly_token}/comments$",
views.CommentDetail.as_view(),
),
re_path(
r"^api/v1/media/(?P<friendly_token>[\w]*)/comments/(?P<uid>[\w-]*)$",
rf"^api/v1/media/{friendly_token}/comments/(?P<uid>[\w-]*)$",
views.CommentDetail.as_view(),
),
re_path(r"^api/v1/playlists$", views.PlaylistList.as_view()),
re_path(r"^api/v1/playlists/$", views.PlaylistList.as_view()),
re_path(
r"^api/v1/playlists/(?P<friendly_token>[\w]*)$",
rf"^api/v1/playlists/{friendly_token}$",
views.PlaylistDetail.as_view(),
name="api_get_playlist",
),