select between flv/mpegts format in restream
This commit is contained in:
parent
0d9a60c6ff
commit
ab729dcb7c
|
@ -31,7 +31,7 @@ msgstr "Stream der als Quelle für die Weiterleitung verwendet wird"
|
||||||
|
|
||||||
#: restream/models.py:12
|
#: restream/models.py:12
|
||||||
msgid "restreamconfig_target_help"
|
msgid "restreamconfig_target_help"
|
||||||
msgstr "RTMP Ziel URL an die der Stream weitergeleitet wird"
|
msgstr "Ziel URL an die der Stream weitergeleitet wird, inklusive Schema (z.B. rtmp://)"
|
||||||
|
|
||||||
#: restream/models.py:13
|
#: restream/models.py:13
|
||||||
msgid "restreamconfig_name_help"
|
msgid "restreamconfig_name_help"
|
||||||
|
|
|
@ -31,7 +31,7 @@ msgstr "Stream that's being used as source for the restreaming"
|
||||||
|
|
||||||
#: restream/models.py:12
|
#: restream/models.py:12
|
||||||
msgid "restreamconfig_target_help"
|
msgid "restreamconfig_target_help"
|
||||||
msgstr "RTMP target url that the stream is being restreamed to"
|
msgstr "Target url that the stream is being restreamed to, including schema (e.g. rtmp://)"
|
||||||
|
|
||||||
#: restream/models.py:13
|
#: restream/models.py:13
|
||||||
msgid "restreamconfig_name_help"
|
msgid "restreamconfig_name_help"
|
||||||
|
|
|
@ -4,7 +4,7 @@ from .models import RestreamConfig
|
||||||
|
|
||||||
|
|
||||||
class RestreamConfigAdmin(GuardedModelAdmin):
|
class RestreamConfigAdmin(GuardedModelAdmin):
|
||||||
fields = ['name', 'active', 'stream', 'target']
|
fields = ['name', 'active', 'stream', 'format', 'target']
|
||||||
|
|
||||||
|
|
||||||
admin.site.register(RestreamConfig, RestreamConfigAdmin)
|
admin.site.register(RestreamConfig, RestreamConfigAdmin)
|
||||||
|
|
|
@ -6,7 +6,7 @@ from . import models
|
||||||
class RestreamConfigFilteredStreamForm(ModelForm):
|
class RestreamConfigFilteredStreamForm(ModelForm):
|
||||||
class Meta:
|
class Meta:
|
||||||
model = models.RestreamConfig
|
model = models.RestreamConfig
|
||||||
fields = ['name', 'stream', 'target', 'active']
|
fields = ['name', 'stream', 'target', 'format', 'active']
|
||||||
|
|
||||||
def __init__(self, *args, **kwargs):
|
def __init__(self, *args, **kwargs):
|
||||||
user = kwargs.pop('user', None)
|
user = kwargs.pop('user', None)
|
||||||
|
|
|
@ -0,0 +1,18 @@
|
||||||
|
# Generated by Django 3.1.13 on 2021-12-14 17:35
|
||||||
|
|
||||||
|
from django.db import migrations, models
|
||||||
|
|
||||||
|
|
||||||
|
class Migration(migrations.Migration):
|
||||||
|
|
||||||
|
dependencies = [
|
||||||
|
('restream', '0002_auto_20200501_1302'),
|
||||||
|
]
|
||||||
|
|
||||||
|
operations = [
|
||||||
|
migrations.AddField(
|
||||||
|
model_name='restreamconfig',
|
||||||
|
name='format',
|
||||||
|
field=models.CharField(choices=[('flv', 'flv (RTMP)'), ('mpegts', 'mpegts (SRT)')], default='flv', help_text='restreamconfig_format_help', max_length=6),
|
||||||
|
),
|
||||||
|
]
|
|
@ -9,10 +9,15 @@ from rtmp.models import Stream
|
||||||
|
|
||||||
|
|
||||||
class RestreamConfig(models.Model):
|
class RestreamConfig(models.Model):
|
||||||
|
FORMATS = (
|
||||||
|
('flv', 'flv (RTMP)'),
|
||||||
|
('mpegts', 'mpegts (SRT)'),
|
||||||
|
)
|
||||||
stream = models.ForeignKey(Stream, on_delete=models.CASCADE, help_text=_('restreamconfig_stream_help'))
|
stream = models.ForeignKey(Stream, on_delete=models.CASCADE, help_text=_('restreamconfig_stream_help'))
|
||||||
target = models.CharField(max_length=500, help_text=_('restreamconfig_target_help'))
|
target = models.CharField(max_length=500, help_text=_('restreamconfig_target_help'))
|
||||||
name = models.CharField(max_length=100, help_text=_('restreamconfig_name_help'))
|
name = models.CharField(max_length=100, help_text=_('restreamconfig_name_help'))
|
||||||
active = models.BooleanField(help_text=_('restreamconfig_activate_help'))
|
active = models.BooleanField(help_text=_('restreamconfig_activate_help'))
|
||||||
|
format = models.CharField(max_length=6, choices=FORMATS, default='flv', help_text=_('restreamconfig_format_help'))
|
||||||
|
|
||||||
class Meta:
|
class Meta:
|
||||||
verbose_name = _('restreamconfig_verbose_name')
|
verbose_name = _('restreamconfig_verbose_name')
|
||||||
|
@ -32,7 +37,8 @@ class RestreamConfig(models.Model):
|
||||||
'name': self.name,
|
'name': self.name,
|
||||||
'app': self.stream.application.name,
|
'app': self.stream.application.name,
|
||||||
'stream': str(self.stream.stream),
|
'stream': str(self.stream.stream),
|
||||||
'target': self.target
|
'target': self.target,
|
||||||
|
'format': self.format
|
||||||
}
|
}
|
||||||
return json.dumps(config)
|
return json.dumps(config)
|
||||||
|
|
||||||
|
|
|
@ -33,7 +33,7 @@
|
||||||
<h6>{% trans "how_to_configure_your_encoder_header" %}</h6>
|
<h6>{% trans "how_to_configure_your_encoder_header" %}</h6>
|
||||||
<hr class="my-4">
|
<hr class="my-4">
|
||||||
<p>{% trans "set_this_stream_server_in_encoder" %}</p>
|
<p>{% trans "set_this_stream_server_in_encoder" %}</p>
|
||||||
<p class="mb-4"><code>rtmp://TODO TODO SERVER BASE URL/{{ object.application }}/</code></p>
|
<p class="mb-4"><code>rtmp://ingest.chaoswest.tv:1935/{{ object.application }}/</code></p>
|
||||||
<p>{% trans "set_this_stream_id_in_encoder" %}</p>
|
<p>{% trans "set_this_stream_id_in_encoder" %}</p>
|
||||||
<div class="input-group mb-4" id="show_hide_stream_key">
|
<div class="input-group mb-4" id="show_hide_stream_key">
|
||||||
<input readonly class="form-control" type="password" value="{{ object.stream }}">
|
<input readonly class="form-control" type="password" value="{{ object.stream }}">
|
||||||
|
|
Loading…
Reference in New Issue