♻️(backend) replace hardcoded file extensions with Python enum
Convert hardcoded string file extensions into a well-defined Python enum. Improves type safety and centralizes extension definitions for better maintainability and consistency across the codebase. It was dirty manipulating literals for file extension validation …
This commit is contained in:
committed by
aleb_the_flash
parent
3a4f4e7016
commit
d74dd967af
10
src/backend/core/recording/enums.py
Normal file
10
src/backend/core/recording/enums.py
Normal file
@@ -0,0 +1,10 @@
|
|||||||
|
"""Enums related to recordings."""
|
||||||
|
|
||||||
|
from enum import Enum
|
||||||
|
|
||||||
|
|
||||||
|
class FileExtension(Enum):
|
||||||
|
"""Enum for file extensions used in recordings."""
|
||||||
|
|
||||||
|
OGG = "ogg"
|
||||||
|
MP4 = "mp4"
|
||||||
@@ -7,6 +7,7 @@ from asgiref.sync import async_to_sync
|
|||||||
from livekit import api as livekit_api
|
from livekit import api as livekit_api
|
||||||
from livekit.api.egress_service import EgressService
|
from livekit.api.egress_service import EgressService
|
||||||
|
|
||||||
|
from ..enums import FileExtension
|
||||||
from .exceptions import WorkerConnectionError, WorkerResponseError
|
from .exceptions import WorkerConnectionError, WorkerResponseError
|
||||||
from .factories import WorkerServiceConfig
|
from .factories import WorkerServiceConfig
|
||||||
|
|
||||||
@@ -89,7 +90,9 @@ class VideoCompositeEgressService(BaseEgressService):
|
|||||||
|
|
||||||
# Save room's recording as a mp4 video file.
|
# Save room's recording as a mp4 video file.
|
||||||
file_type = livekit_api.EncodedFileType.MP4
|
file_type = livekit_api.EncodedFileType.MP4
|
||||||
filepath = self._get_filepath(filename=recording_id, extension="mp4")
|
filepath = self._get_filepath(
|
||||||
|
filename=recording_id, extension=FileExtension.MP4.value
|
||||||
|
)
|
||||||
|
|
||||||
file_output = livekit_api.EncodedFileOutput(
|
file_output = livekit_api.EncodedFileOutput(
|
||||||
file_type=file_type,
|
file_type=file_type,
|
||||||
@@ -120,7 +123,9 @@ class AudioCompositeEgressService(BaseEgressService):
|
|||||||
|
|
||||||
# Save room's recording as an ogg audio file.
|
# Save room's recording as an ogg audio file.
|
||||||
file_type = livekit_api.EncodedFileType.OGG
|
file_type = livekit_api.EncodedFileType.OGG
|
||||||
filepath = self._get_filepath(filename=recording_id, extension="ogg")
|
filepath = self._get_filepath(
|
||||||
|
filename=recording_id, extension=FileExtension.OGG.value
|
||||||
|
)
|
||||||
|
|
||||||
file_output = livekit_api.EncodedFileOutput(
|
file_output = livekit_api.EncodedFileOutput(
|
||||||
file_type=file_type,
|
file_type=file_type,
|
||||||
|
|||||||
Reference in New Issue
Block a user