معرفی شرکت ها


django-sage-streaming-0.1.1


Card image cap
تبلیغات ما

مشتریان به طور فزاینده ای آنلاین هستند. تبلیغات می تواند به آنها کمک کند تا کسب و کار شما را پیدا کنند.

مشاهده بیشتر
Card image cap
تبلیغات ما

مشتریان به طور فزاینده ای آنلاین هستند. تبلیغات می تواند به آنها کمک کند تا کسب و کار شما را پیدا کنند.

مشاهده بیشتر
Card image cap
تبلیغات ما

مشتریان به طور فزاینده ای آنلاین هستند. تبلیغات می تواند به آنها کمک کند تا کسب و کار شما را پیدا کنند.

مشاهده بیشتر
Card image cap
تبلیغات ما

مشتریان به طور فزاینده ای آنلاین هستند. تبلیغات می تواند به آنها کمک کند تا کسب و کار شما را پیدا کنند.

مشاهده بیشتر
Card image cap
تبلیغات ما

مشتریان به طور فزاینده ای آنلاین هستند. تبلیغات می تواند به آنها کمک کند تا کسب و کار شما را پیدا کنند.

مشاهده بیشتر

توضیحات

video streaming based on Django
ویژگی مقدار
سیستم عامل -
نام فایل django-sage-streaming-0.1.1
نام django-sage-streaming
نسخه کتابخانه 0.1.1
نگهدارنده []
ایمیل نگهدارنده []
نویسنده Sage Team
ایمیل نویسنده mail@sageteam.org
آدرس صفحه اصلی https://github.com/sageteam-org/django-sage-streaming
آدرس اینترنتی https://pypi.org/project/django-sage-streaming/
مجوز GNU
Django Sage Streaming ===================== django-sage-streaming is a package based on Django Web Framework & Django Rest Framework for video streaming. ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ The Latest version of `django-sage-streaming <https://django-sage-streaming.readthedocs.io/>`__ documentation ''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''' |SageTeam| |PyPI release| |Supported Python versions| |Supported Django versions| |Documentation| |Test| - `Project Detail <#project-detail>`__ - `installation <#installation>`__ - `Get Started <#getting-started>`__ - `Admin <#admin>`__ - `Settings <#settings>`__ - `Front-End implementation <#frontend>`__ Project Detail -------------- You can find all technologies we used in our project into these files: \* Version: 1.0.0 \* Frameworks: - Django 3.2.5 \* Libraries: - Django rest framework 3.12.4 \* Language: Python 3.9.4 Installation ------------ First install package .. code:: shell $ pip install django-sage-streaming Then add ``sage_stream`` to INSTALLED\_APPS in settings.py .. code:: python INSTALLED_APPS = [ ... 'sage_stream', ... ] Also make sure you have ``rest_framework`` in INSTALLED\_APPS .. code:: python INSTALLED_APPS = [ ... 'rest_framework', ... ] Getting Started --------------- ``django-sage-streaming`` provides two ways that you can stream videos over HTTP: 1. built-in API View: for using built-in view add ``sage_stream.api.urls`` to urls.py .. code:: python from django.urls import path, include urlpatterns = [ ... path('api/', include('sage_stream.api.urls')), ... ] Now you can access the stream api here: ``localhost:8000/api/stream?path=<you_video_path>`` `The settings of built-in view is available here <#settings>`__ 2. create custom views: you can use stream functions in your application .. code:: python from sage_stream.utils.stream_services import get_streaming_response response = get_streaming_response( path=video_path, # path to video range_header=range_header, # range header extracted from request range_re=range_re, # range header regex pattern (default is available in sage_stream.settings.STREAM_RANGE_HEADER_REGEX_PATTERN) max_load_volume=max_load_volume, # the maximum volume of the response body ) Other functions you can use .. code:: python from sage_stream.utils.file_services import file_iterator # iterates in given file chunk by chunk in generator mode from sage_stream.utils.log_services import log_watch_request # creates WatchLog instance with given data # usage examples # log log_watch_request(video_path, request.user.is_authenticated, ip, request.user) # file iterator resp = StreamingHttpResponse( file_iterator( path, offset=first_byte, length=length ), status=206, content_type=content_type ) Admin ----- ``django-sage-streaming`` also has logging system for watching requests It is available in admin panel when you add ``sage_stream`` to INSTALLED\_APPS Settings -------- Here are the parameters that you can set from setting: +------------------------------------------+---------------------------------------------------------------------------+ | Parameter | Description | +==========================================+===========================================================================+ | STREAM\_DEFAULT\_PERMISSION\_CLASSES | permission\_classes that used in built-in APIView. default: (AllowAny,) | +------------------------------------------+---------------------------------------------------------------------------+ | STREAM\_DEFAULT\_VIDEO\_PATH\_URL\_VAR | url path variable key. default: path | +------------------------------------------+---------------------------------------------------------------------------+ | STREAM\_MAX\_LOAD\_VOLUME | maximum load video in each chunk(by MB). default: 8 | +------------------------------------------+---------------------------------------------------------------------------+ | STREAM\_WATCH\_LOG\_ENABLED | is log watch requests enabled. default: True | +------------------------------------------+---------------------------------------------------------------------------+ | STREAM\_RANGE\_HEADER\_REGEX\_PATTERN | range header regex pattern. default: r'bytes=(+)-()' | +------------------------------------------+---------------------------------------------------------------------------+ Frontend -------- Frontend implementation is so easy you just need to add stream url as ``src`` in ``video`` tag .. code:: html <video width="480" controls> <source src="http://localhost:8000/api/stream/?path=<path_to_video>" type="video/mp4"> </video> Team ---- +-----------------------------------------------------------------+---------------------------------------------------------+ | |sepehr| | |mehran| | +=================================================================+=========================================================+ | `Sepehr Akbarazadeh <https://github.com/sepehr-akbarzadeh>`__ | `Mehran Rahmanzadeh <https://github.com/mrhnz>`__ | +-----------------------------------------------------------------+---------------------------------------------------------+ .. |SageTeam| image:: https://github.com/sageteam-org/django-sage-painless/blob/develop/docs/images/tag_sage.png?raw=true :alt: SageTeam .. |PyPI release| image:: https://github.com/sageteam-org/django-sage-painless/blob/develop/docs/images/tag_pypi_0.0.8.png?raw=true :alt: django-sage-painless .. |Supported Python versions| image:: https://github.com/sageteam-org/django-sage-painless/blob/develop/docs/images/tag_python-02.png?raw=true :alt: django-sage-painless .. |Supported Django versions| image:: https://github.com/sageteam-org/django-sage-painless/blob/develop/docs/images/tag_django.png?raw=true :alt: django-sage-painless .. |Documentation| image:: https://github.com/sageteam-org/django-sage-painless/blob/develop/docs/images/tag_docs.png?raw=true :alt: django-sage-painless .. |Test| image:: https://github.com/sageteam-org/django-sage-painless/blob/develop/docs/images/tag_test.png?raw=true :alt: django-sage-painless .. |sepehr| image:: https://github.com/sageteam-org/django-sage-painless/blob/develop/docs/images/sepehr.jpeg?raw=true :height: 230px :width: 230px :alt: Sepehr Akbarzadeh .. |mehran| image:: https://github.com/sageteam-org/django-sage-painless/blob/develop/docs/images/mehran.png?raw=true :height: 340px :width: 225px :alt: Mehran Rahmanzadeh


زبان مورد نیاز

مقدار نام
>=3.5 Python


نحوه نصب


نصب پکیج whl django-sage-streaming-0.1.1:

    pip install django-sage-streaming-0.1.1.whl


نصب پکیج tar.gz django-sage-streaming-0.1.1:

    pip install django-sage-streaming-0.1.1.tar.gz