diff --git a/common/lib/xmodule/xmodule/tests/test_video.py b/common/lib/xmodule/xmodule/tests/test_video.py
index 64c1177f3d..8763c15225 100644
--- a/common/lib/xmodule/xmodule/tests/test_video.py
+++ b/common/lib/xmodule/xmodule/tests/test_video.py
@@ -549,7 +549,8 @@ class VideoExportTestCase(VideoDescriptorTestBase):
Test XML export with defaults.
"""
xml = self.descriptor.definition_to_xml(None)
- expected = '\n'
+ # Check that download_video field is also set to default (False) in xml for backward compatibility
+ expected = '\n'
self.assertEquals(expected, etree.tostring(xml, pretty_print=True))
diff --git a/common/lib/xmodule/xmodule/video_module/video_module.py b/common/lib/xmodule/xmodule/video_module/video_module.py
index 33b2f5a93c..2b0e3e9075 100644
--- a/common/lib/xmodule/xmodule/video_module/video_module.py
+++ b/common/lib/xmodule/xmodule/video_module/video_module.py
@@ -297,6 +297,11 @@ class VideoDescriptor(VideoFields, VideoTranscriptsMixin, VideoStudioViewHandler
editable_fields = super(VideoDescriptor, self).editable_metadata_fields
self.source_visible = False
+ # Set download_video field to default value if its not explicitly set for backward compatibility.
+ download_video = editable_fields['download_video']
+ if not download_video['explicitly_set']:
+ self.download_video = self.download_video
+
if self.source:
# If `source` field value exist in the `html5_sources` field values,
# then delete `source` field value and use value from `html5_sources` field.
@@ -305,7 +310,6 @@ class VideoDescriptor(VideoFields, VideoTranscriptsMixin, VideoStudioViewHandler
self.download_video = True
else: # Otherwise, `source` field value will be used.
self.source_visible = True
- download_video = editable_fields['download_video']
if not download_video['explicitly_set']:
self.download_video = True
diff --git a/lms/djangoapps/courseware/management/commands/tests/test_dump_course.py b/lms/djangoapps/courseware/management/commands/tests/test_dump_course.py
index 2ecf952841..56f6382095 100644
--- a/lms/djangoapps/courseware/management/commands/tests/test_dump_course.py
+++ b/lms/djangoapps/courseware/management/commands/tests/test_dump_course.py
@@ -104,7 +104,7 @@ class CommandsTestBase(TestCase):
video_id = test_course_key.make_usage_key('video', 'Welcome').to_deprecated_string()
self.assertEqual(dump[video_id]['category'], 'video')
- self.assertEqual(len(dump[video_id]['metadata']), 4)
+ self.assertEqual(len(dump[video_id]['metadata']), 5)
self.assertIn('youtube_id_1_0', dump[video_id]['metadata'])
# Check if there are the right number of elements
diff --git a/lms/djangoapps/courseware/tests/test_video_mongo.py b/lms/djangoapps/courseware/tests/test_video_mongo.py
index 44c8a25499..278f24daa4 100644
--- a/lms/djangoapps/courseware/tests/test_video_mongo.py
+++ b/lms/djangoapps/courseware/tests/test_video_mongo.py
@@ -155,7 +155,7 @@ class TestGetHtmlMethod(BaseTestXmodule):