### Description
The replay gain preferences are applied in the legacy code, but the
playout code was missing this feature. The replay gain was not applied
when playout fetched the schedules.
37d1a7685e/legacy/application/models/Schedule.php (L881-L886)
46 lines
1.4 KiB
Python
46 lines
1.4 KiB
Python
from rest_framework import views
|
|
from rest_framework.response import Response
|
|
|
|
from ...permissions import IsSystemTokenOrUser
|
|
from ..models import Preference
|
|
from ..serializers import StreamPreferencesSerializer, StreamStateSerializer
|
|
|
|
|
|
class StreamPreferencesView(views.APIView):
|
|
permission_classes = [IsSystemTokenOrUser]
|
|
serializer_class = StreamPreferencesSerializer
|
|
model_permission_name = "streamsetting"
|
|
|
|
def get(self, request):
|
|
data = Preference.get_stream_preferences()
|
|
return Response(
|
|
data.model_dump(
|
|
include={
|
|
"input_fade_transition",
|
|
"message_format",
|
|
"message_offline",
|
|
"replay_gain_enabled",
|
|
"replay_gain_offset",
|
|
}
|
|
)
|
|
)
|
|
|
|
|
|
class StreamStateView(views.APIView):
|
|
permission_classes = [IsSystemTokenOrUser]
|
|
serializer_class = StreamStateSerializer
|
|
model_permission_name = "streamsetting"
|
|
|
|
def get(self, request):
|
|
data = Preference.get_stream_state()
|
|
return Response(
|
|
data.model_dump(
|
|
include={
|
|
"input_main_connected",
|
|
"input_main_streaming",
|
|
"input_show_connected",
|
|
"input_show_streaming",
|
|
"schedule_streaming",
|
|
}
|
|
)
|
|
)
|