Documentation

Secure Video Player

When and Why to Use

Use this to present a video stimulus, optionally with a live dial for feedback. It's best for:

  • Ad or creative testing
  • Comprehension and recall studies
  • Real-time sentiment capture via dial testing

Videos are DRM-protected to prevent copying or screen recording. Secure videos are watermarked for traceability, and video links are short-lived, expiring shortly after they are issued.

Chat Experience
  • Video fills most of the screen with start and end messages above and below
  • If dial is enabled, it appears beneath or to the side depending on configuration
Traditional Experience
  • Video plays fullscreen or centered
  • Dial, if used, appears on the right or bottom with live interaction enabled
  • Remote or keyboard users can operate playback and dial
TraditionalMobile optimized
Secure Video PlayerSecure Video Player mobile
Dial Testing

Set dial="right" to show the dial on the right of the video or dial="bottom" to show it below; with the default dial="none" no dial is shown. The dial defaults to a 0-100 range with the captions "Dislike", "Neutral", and "Like" — customize it with dial_labels and dial_caption. The video and dial are always displayed in full screen, if available.

Configuration Options
OptionTypeRequiredDefaultDescription
videoMediaItemyes-Video to play from s.media
end_messagestrno"Thank you for watching the video!"Message shown after the video ends
start_messagestrno"Hit play when you're ready to watch the video."Message shown before the video begins
dialstrno"none"Dial placement: "none", "right", or "bottom"
dial_labelsdict[int, str]no0-100 range labeled "Dislike", "Neutral", "Like"Labels shown on the dial scale
dial_captionstrno"Please adjust the slider to reflect your feelings as you watch the video."Caption shown above the dial
start_positionintnoMidpoint of the dial labelsStarting value for the dial
number_secondsintno0Seconds to wait before allowing the respondent to continue after the video
idstrno-Optional stable identifier for this question
Example Code
from survey import Survey

s = Survey(**globals())

s.play_video(video=s.media.ad_clip)

With dial testing:

s.play_video(
    video=s.media.trailer,
    dial="bottom",
    dial_labels={0: "Very Negative", 50: "Neutral", 100: "Very Positive"},
    dial_caption="Move the slider to reflect how you're feeling during the video."
)
Notes
  • All video content is DRM-protected; secure videos are watermarked for traceability
  • Respondents cannot skip; playback is enforced
  • Use dial for moment-to-moment reaction measurement
  • Best followed by comprehension or diagnostic questions