86 Commits
Author SHA1 Message Date
bastiaan c2bf1c8aaa Merge branch 'codec-prio-from-cookie'
Addresses the desire to prefer codecs from the client.
Some clients perform better with particular codecs put above, for
instance the device has hardware decoding capabilities for it.
Unfortunately there is no reliable way to query this in the frontend.

Now we can set a cookie 'video_codecs_prio' with strings of codecs
we want the order of importance. The cookie can contain codecs
separated by a space. For instance 'vp8 h.264' to get those
codecs first for an old 2014 laptop that has only hw support for
these codecs.

Supported codecs are the distinct ones in short_name in
models.transcoding_types:

vp9
vp8
h.264

After this works well in production, I can deside to build a user-
friendly settings page.
2022-04-07 21:04:35 +02:00
bastiaan 14be7ef6b4 Refactor to slighly better readable code 2022-04-07 21:03:59 +02:00
bastiaan 6885feb980 Add tests for codec orders 2022-04-07 20:50:15 +02:00
bastiaan 4cdbffe718 Add ability to override codec prio from client cookie 2022-04-07 20:32:30 +02:00
bastiaan f9fadf7f08 Merge branch transcoding-order
Apparantly the order of <source> tags in the <video> element
determines what transcoding a browser chooses. Until now this
was quite random.

Now show transcodings (<source> elements) in the order:
vp9, vp8, h264
2022-04-06 20:11:09 +02:00
bastiaan 8351e6983c Add view test for correct transcoding order 2022-04-06 20:10:37 +02:00
bastiaan 93843fdcad Fix tests for transcoding type order 2022-04-06 20:10:37 +02:00
bastiaan aa8f4195c7 Order source tags by transcoding type prio 2022-04-06 20:10:37 +02:00
bastiaan 60accdc618 Add get_transcoding_type_by_name() 2022-04-06 20:10:37 +02:00
bastiaan 48473b2a90 Give priorities to transcoding types 2022-04-06 20:10:37 +02:00
bastiaan 926224a6e1 Merge branch subtitles
Implement subtitles support through the <track> tag
2022-04-06 17:24:27 +02:00
bastiaan 1966bcc371 Add validation to the track admin 2022-04-05 22:40:24 +02:00
bastiaan 768def6630 Move variable mapping details from template to view function 2022-04-05 22:40:24 +02:00
bastiaan 9585eb7416 Added view tests for tracks 2022-04-05 22:40:24 +02:00
bastiaan aaea5f4674 Add tracks to video view 2022-04-05 22:40:14 +02:00
bastiaan 8e376319b0 Admin for tracks in video 2022-04-05 22:40:03 +02:00
bastiaan 5a87ba6d64 Added Track model 2022-04-05 09:06:03 +02:00
bastiaan 7e7671b6d7 Django to latest 3.1 2022-04-05 00:16:10 +02:00
bastiaan ab0148a039 Merge branch add-transcoding-types
Add several AVC1 profile/levels that are necessary now.

Also fix the video source type attribute.
2022-04-03 16:08:16 +02:00
bastiaan ef29d4415a Add detailed AVC1 TranscodingTypes
- profile High level 3.0
- profile High level 4.0
- profile High level 5.0
2022-04-03 16:05:46 +02:00
bastiaan d3e071c93d Add TranscodingType.description and set correct short_name 2022-04-03 15:59:57 +02:00
bastiaan 46c6272213 Render quotes in video source type attr 2022-04-03 15:53:26 +02:00
bastiaan 1b480b8ddb Merge branch 'tests'
Added basic test suite for this application
2020-05-21 20:17:02 +02:00
bastiaan 7d8eef8387 Merge branch 'improve-factories' into tests 2020-05-21 20:13:30 +02:00
bastiaan 9f0b6881dd Asure not too many queries are run 2020-05-21 20:09:03 +02:00
bastiaan c17b558d14 Ability to generate unique fields in factories 2020-05-21 20:09:03 +02:00
bastiaan c6f2bacf0f Useful conditions can be put in lambdas
and an extra test to asure transcoding with upload is possible
2020-05-21 19:41:57 +02:00
bastiaan 2e1c7e7165 Raise NotImplementedError when unknown model is passed 2020-05-21 19:41:57 +02:00
bastiaan 019adcba56 Uploads are already 'lazily' executed 2020-05-21 19:41:57 +02:00
bastiaan 8c4ec83993 Use lambda for dependencies
so they won't be created when dependency is already provided
2020-05-21 19:41:57 +02:00
bastiaan 29fb109b6f Helper function to improve code 2020-05-21 19:41:57 +02:00
bastiaan 8e6a36212d Use SimpleTestCase for unit tests 2020-05-21 17:42:41 +02:00
bastiaan 61c178d222 Clean temporary files by default 2020-05-21 17:42:41 +02:00
bastiaan 40490d6086 Better upload handling in temporary dirs 2020-05-21 17:42:41 +02:00
bastiaan e1aff0c7a1 Test get_short_name_of_transcoding_type() 2020-05-21 17:42:41 +02:00
bastiaan 63ce1078e4 test models.get_quality_by_name() 2020-05-21 17:42:41 +02:00
bastiaan 2cbd8bf49d Added unit module 2020-05-21 17:42:41 +02:00
bastiaan 1141f6d4a6 CreateTranscodingTestCase
test constraints on model
2020-05-21 17:42:41 +02:00
bastiaan 8ace8d3312 test_video_uploads_shows_correctly 2020-05-21 17:42:41 +02:00
bastiaan f8a3151672 Better video tag test 2020-05-21 17:42:41 +02:00
bastiaan 9b732c55d7 test_video_show_correct_default_quality quality selectors 2020-05-21 17:42:41 +02:00
bastiaan a58618c920 test_video_shows_correct_quality_for_parameter 2020-05-21 17:42:41 +02:00
bastiaan 046dc94c77 test_video_show_correct_default_quality 2020-05-21 17:42:41 +02:00
bastiaan 56c7e24969 Usefull basic view test for video 2020-05-21 17:42:41 +02:00
bastiaan b54ef76881 Stub video page view test 2020-05-21 17:42:41 +02:00
bastiaan 9492e8445b Stub index view test 2020-05-21 17:42:41 +02:00
bastiaan aa4025d138 Names for url components
so they can be used with reverse()
2020-05-21 17:42:41 +02:00
bastiaan de2d58356b Do not generate uneccessary objects 2020-05-21 17:42:41 +02:00
bastiaan 146df2d3b1 test_can_overwrite_kwargs 2020-05-21 17:42:37 +02:00
bastiaan eb90bca467 Atempt to create model factories 2020-05-21 17:42:24 +02:00
bastiaan 5c89842b92 Some basic model tests 2020-05-21 17:42:17 +02:00
bastiaan 8f3acfef9b Test stub 2020-05-21 17:42:04 +02:00
bastiaan a92e874371 Merge branch 'bump-project'
Work of last month to get this project running for the first release.
2020-05-21 17:19:21 +02:00
bastiaan 88de77b261 Convert remaining space indentings to tabs 2020-05-21 16:55:33 +02:00
bastiaan 04c96bcb53 Remove testviews 2020-05-20 14:12:04 +02:00
bastiaan 24edb7717a Ability to use a base URL
usefull to prefix the application URL on deployment
2020-05-20 14:12:04 +02:00
bastiaan c6da876620 Fix URLs for else the admin wont work 2020-05-20 14:12:04 +02:00
bastiaan 1ee58f1b66 Reorganized settings
ability to override with localsettings
2020-05-20 14:12:04 +02:00
bastiaan 7daff47d5c No prefixing slash in URLs 2020-05-20 14:12:04 +02:00
bastiaan 8d80745469 Add Jinja2 to requirements.txt 2020-05-20 14:12:04 +02:00
bastiaan b8221ba261 Custom table names
better in my opinion. especially if we once decide to rename
the django app
2020-05-20 14:12:04 +02:00
bastiaan fc7af4fa78 Simple index page 2020-05-20 14:12:04 +02:00
bastiaan be747db93f Ability to specify default quality for video 2020-05-20 14:12:04 +02:00
bastiaan 1634bf33c2 Useful video list view in admin 2020-05-20 14:12:04 +02:00
bastiaan 8f57e6c0cf Highlight current quality 2020-05-20 14:12:04 +02:00
bastiaan 8140a77e61 Fix defaultdict problem 2020-05-20 14:12:04 +02:00
bastiaan 4bff78d0ac Fix uploads serving 2020-05-20 14:12:04 +02:00
bastiaan 3a06e4ec9f Implement video view page 2020-05-20 14:12:04 +02:00
bastiaan f5be1b5156 Added poster and og_image 2020-05-20 14:12:04 +02:00
bastiaan 427bf3ac82 Add get_short_name_of_transcoding_type() 2020-05-20 14:12:04 +02:00
bastiaan fcabf013e0 Added transcoding types 2020-05-20 14:12:04 +02:00
bastiaan 2b5785444f Added better upload model 2020-05-20 14:12:04 +02:00
bastiaan c2a9783c3c Licence and Readme 2020-05-10 22:16:28 +02:00
bastiaan 297a16a0b3 dirs for file storage 2020-05-04 20:27:14 +02:00
bastiaan 11a7a736c2 Add proper file storage settings 2020-05-04 20:26:44 +02:00
bastiaan 2d6e26e474 video and quality unique 2020-05-04 19:48:11 +02:00
bastiaan ed1a16b08a Slug unique 2020-05-04 19:48:00 +02:00
bastiaan 287f652fd2 Add an admin 2020-05-04 19:36:05 +02:00
bastiaan ee8d8e0ea8 Add some testviews 2020-05-04 19:35:51 +02:00
bastiaan cdca198228 use better typing.NamedTuple 2020-05-04 19:31:13 +02:00
bastiaan 83b3856616 Add videodinges to apps to make manage.py work 2020-05-04 18:03:10 +02:00
bastiaan a2839c9f91 Fix models 2020-05-04 18:03:03 +02:00
bastiaan f55a31e12b Update packages
Django to 3.0, for 1.11 and 2.2 are too old
2020-05-04 17:48:41 +02:00
bastiaan 7ff2d2e3d5 Excerpt of the model structure we need 2019-01-03 19:17:01 +01:00
bastiaan 39cd5d4005 First Requirements.txt 2019-01-03 19:16:29 +01:00
bastiaan b9b32b913a Initiate django project 2019-01-03 19:16:11 +01:00