Skip to main content

Django app for easy embedding YouTube and Vimeo videos and music from SoundCloud.

Project description

django-embed-video

Django app for easy embedding YouTube and Vimeo videos and music from SoundCloud.

Jazzband GitHub Actions Coveralls coverage percentage Supported Python versions Supported Django versions

Documentation

Documentation is at: http://django-embed-video.rtfd.org/

Quick start

  1. Install django-embed-video:

    pip install django-embed-video

    or from sources

    pip install git+https://github.com/jazzband/django-embed-video
  2. Add embed_video to INSTALLED_APPS in your Django settings.

  3. If you want to detect HTTP/S in template tags, you have to set request context processor in settings.TEMPLATES:

    TEMPLATES = [
        {
            'BACKEND': 'django.template.backends.django.DjangoTemplates',
            # ...
            'OPTIONS': {
                'context_processors': [
                    # ...
                    'django.template.context_processors.request',
                ],
            },
        },
    ]
  4. Usage of template tags:

    {% load embed_video_tags %}
    
    <!-- The video tag: -->
    {% video item.video as my_video %}
      URL: {{ my_video.url }}
      Thumbnail: {{ my_video.thumbnail }}
      Backend: {{ my_video.backend }}
    
      {% video my_video "large" %}
    {% endvideo %}
    
    <!-- Or embed shortcut: -->
    {% video my_video '800x600' %}
  5. Usage of model fields

    from django.db import models
    from embed_video.fields import EmbedVideoField
    
    class Item(models.Model):
        video = EmbedVideoField()  # same like models.URLField()

Contributing

This is a Jazzband project. By contributing you agree to abide by the Contributor Code of Conduct and follow the guidelines.

Changes

Release 1.4.4 (April 18, 2022)

  • Add EMBED_VIDEO_YOUTUBE_CHECK_THUMBNAIL to settings.

  • Drop support for EOL Django 2.2.

Release 1.4.3 (April 8, 2022)

  • Add support for YouTube short URLs.

Release 1.4.2 (March 17, 2022)

  • Add Polish translation

Release 1.4.1 (January 6, 2022)

  • Add Code of Conduct to repository

  • Add support for Python 3.10

  • Add support for Django 3.2 and Django 4.0

  • Drop support for EOL Python 3.6

  • Drop support for EOL Django 3.0 and EOL Django 3.1

  • Remove Nose from dependencies due to version incompatibility

Release 1.4.0 (December 18, 2020)

  • Add lazy loading for video template tags.

  • Handle Vimeo admin “manage” URLs

  • Migrate from Travis CI to GitHub Actions.

  • Drop unsupported Django versions prior to 2.2.

  • Add support for Python up to 3.9.

  • Add support for Django up to 3.1.

  • Improve code formatting.

Release 1.3.3 (June 10, 2020)

  • Fix admin UI exception with form validation.

Release 1.3.2 (March 29, 2020)

  • Add support for Soundcloud mobile URLs.

Release 1.3.1 (January 6, 2020)

  • Add support for Vimeo review video URLs.

  • Update example project code.

Release 1.3 (August 30, 2019)

  • Drop unsupported Python version prior to 3.6.

  • Drop unsupported Django versions prior to 1.11.

  • Add support for Python up to 3.8 including PyPy.

  • Add support for Django up to 2.2.

  • Improve project structure, docs and language.

  • Improve CI and CD infrastructure and automation.

  • Move project to Jazzband organization.

Release 1.2.0 (October 04, 2018)

  • hotfix docs directive (#94)

  • update docs (#92)

  • use tests_require and setup_requires for nose testing requirements (#91)

  • add renderer kwarg to Widget render method to support Python 2.1 and later (#88)

  • enable default HTTPS support for YouTube, VimeoBackend, SoundCloudBackend (#86)

  • added syntax highlight in README.rst (#81)

  • updating requests >=2.19

Release 1.1.2 (April 27, 2017)

  • fix pypi

Release 1.1.1 (March 24, 2017)

  • updates for Django 1.10 and 1.11 (#73)

  • update requirements for installation of the example project (#72)

  • use secure connection to query soundcloud endpoint (#68)

Release 1.1.0 (Jan 19, 2016)

  • added support fort Django 1.9 (#52)

  • if possible YouTube thumbnails are returned in better resolution (#43)

Release 1.0.0 (May 01, 2015)

Backward incompatible changes:

  • filter embed_video_tags.embed has been removed

  • changed behaviour of extra params in video tag (#34, #36)

Backward compatible changes:

  • added support for Django 1.7 and Django 1.8

  • added support for Vimeo channels (#47)

  • fix resizing of SoundCloud iframe (#41)

Release 0.11 (July 26, 2014)

  • add support for YouTube mobile urls (#27)

  • fix passing parameters in calling request library (#28)

  • fix validation of urls (#31)

Release 0.10 (May 24, 2014)

  • video tag accepts kwargs (#20)

  • video tag will not crash anymore with None passed as url (#24)

Release 0.9 (Apr. 04, 2014)

  • Add VideoBackend.template_name and rendering embed code from file.

  • Allow relative sizes in template tag (#19).

  • Fix handling invalid urls of SoundCloud. (#21).

  • Catch VideoDoesntExistException and UnknownBackendException in template tags and admin widget.

  • Add base exception EmbedVideoException.

Release 0.8 (Feb. 22, 2014)

  • Add EMBED_VIDEO_TIMEOUT to settings.

  • Fix renderering template tag if no url is provided (#18)

  • If EMBED_VIDEO_TIMEOUT timeout is reached in templates, no exception is raised, error is just logged.

  • Fix default size in template tag. (See more…)

Release 0.7 (Dec. 21, 2013)

  • Support for sites running on HTTPS

  • embed filter is deprecated and replaced by video filter.

  • caching for whole backends was removed and replaced by caching properties

  • minor improvements on example project (fixtures, urls)

Release 0.6 (Oct. 04, 2013)

  • Ability to overwrite embed code of backend

  • Caching backends properties

  • PyPy compatibility

  • Admin video mixin and video widget

Release 0.5 (Sep. 03, 2013)

  • Added Vimeo thumbnails support

  • Added caching of results

  • Added example project

  • Fixed template tag embed

  • Fixed raising UnknownIdException in YouTube detecting.

Release 0.4 (Aug. 22, 2013)

Release 0.3 (Aug. 20, 2013)

  • Security fix: faked urls are treated as invalid. See this page for more details.

  • Fixes:

    • allow of empty video field.

    • requirements in setup.py

  • Added simplier way to embed video in one-line template tag:

    {{ 'http://www.youtube.com/watch?v=guXyvo2FfLs'|embed:'large' }}
  • backend variable in video template tag.

    Usage:

    {% video item.video as my_video %}
        Backend: {{ my_video.backend }}
    {% endvideo %}

Release 0.2 (June 25, 2013)

  • Support of SoundCloud

Release 0.1 (June 1, 2013)

  • Initial release

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

django-embed-video-1.4.4.tar.gz (40.6 kB view details)

Uploaded Source

Built Distribution

django_embed_video-1.4.4-py3-none-any.whl (23.7 kB view details)

Uploaded Python 3

File details

Details for the file django-embed-video-1.4.4.tar.gz.

File metadata

  • Download URL: django-embed-video-1.4.4.tar.gz
  • Upload date:
  • Size: 40.6 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.4.2 importlib_metadata/4.8.1 pkginfo/1.7.1 requests/2.26.0 requests-toolbelt/0.9.1 tqdm/4.62.3 CPython/3.9.5

File hashes

Hashes for django-embed-video-1.4.4.tar.gz
Algorithm Hash digest
SHA256 744be4c7606eca04c8ae76a3fb5bbeb4e7de645979ff4ca9f021f7f6e56c0278
MD5 d14a929dd03132955575c69ce8979db6
BLAKE2b-256 a2cb7181ccea9553872ee186b5ed100587a0b6c187364b7b9046fd1bbb0b709a

See more details on using hashes here.

File details

Details for the file django_embed_video-1.4.4-py3-none-any.whl.

File metadata

  • Download URL: django_embed_video-1.4.4-py3-none-any.whl
  • Upload date:
  • Size: 23.7 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.4.2 importlib_metadata/4.8.1 pkginfo/1.7.1 requests/2.26.0 requests-toolbelt/0.9.1 tqdm/4.62.3 CPython/3.9.5

File hashes

Hashes for django_embed_video-1.4.4-py3-none-any.whl
Algorithm Hash digest
SHA256 dd50a85f48209b0b147074ec99aa78d46cf2ea8e109dc2b1099cb2305145e7c5
MD5 f3672d8c413d7e650f345576da2fa082
BLAKE2b-256 ecb321c6c5aa0938b91549195bbf6293aac9a7a001e0a1ef00a708359de5b1e4

See more details on using hashes here.

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page