HyperDeck Studio Mini - Video recorder Blackmagic Design - Free user manual and instructions
Find the device manual for free HyperDeck Studio Mini Blackmagic Design in PDF.
| Product type | Professional video recorder |
| Brand | Blackmagic Design |
| Model | HyperDeck Studio Mini |
| Category | Video recorder |
| Recording formats | H.264, ProRes, DNxHD |
| Maximum resolution | Ultra HD (3840 x 2160) up to 60p |
| Video inputs | 1 x 12G-SDI, 1 x HDMI 2.0 |
| Video outputs | 1 x 12G-SDI, 1 x HDMI 2.0 |
| Storage | 2 SD card slots (UHS-II) or SSD via USB |
| Power supply | External 12-18V DC (adapter included) |
| Dimensions (W x D x H) | 220 x 150 x 50 mm |
| Weight | 1.5 kg |
| Key features | Recording, playback, timecode, genlock reference, Ethernet control |
| Maintenance and cleaning | Clean with a soft, dry cloth. Avoid liquids. |
| Safety | Use only the supplied power adapter. Do not expose to moisture. |
| Spare parts and repairability | Parts available from authorized dealers. Repair by technical center. |
Frequently Asked Questions - HyperDeck Studio Mini Blackmagic Design
User questions about HyperDeck Studio Mini Blackmagic Design
0 question about this device. Answer the ones you know or ask your own.
Ask a new question about this device
Download the instructions for your Video recorder in PDF format for free! Find your manual HyperDeck Studio Mini - Blackmagic Design and take your electronic device back in hand. On this page are published all the documents necessary for the use of your device. HyperDeck Studio Mini by Blackmagic Design.
USER MANUAL HyperDeck Studio Mini Blackmagic Design
Installation and Operation Manual
HyperDeck Disk Recorders
May 2018
English, 日本語, Français, Deutsch, Español, 中文, 한국어, Русский, Italiano and Türkçe.
Languages
To go directly to your preferred language, simply click on the hyperlinks listed in the contents below.
English 3
日本語 74
Français 142
Deutsch 209
Español 279
中文 347
한국어 414
Русский 482
Italiano 551
Türkçe 619

natural_image
Circular portrait photo of a smiling man with gray hair, wearing a black shirt against a textured gray background (no text or symbols)Welcome
We hope you share our dream for the television industry to become a truly creative industry by allowing anyone to have access to the highest quality video.
Our range of HyperDeck disk recorders have made it easier and more affordable than ever to record and play back full 10 Bit uncompressed video and now Ultra HD! HyperDeck records directly to removable 2.5" Solid State Disks (SSDs) and SD cards that are getting bigger, faster and more affordable every day. It's incredible that you can now record and play the most amazing quality video onto something so small thousands of times without any degradation in quality!
SSDs and SD cards can also be connected to any computer for immediate editing and fast transfer of your media. With no moving parts, they are unbelievably robust and can handle harsh conditions that would destroy conventional hard drives and videotapes!
You can bypass unwanted camera compression and record directly from HDMI or SDI cameras and even connect to any HDMI or SDI monitor for instant playback. The HyperDeck Studio Mini model is a small and portable, modular Ultra HD disk recorder that records on tiny SD cards. With HyperDeck Studio Pro, you can connect analog sources and also record and play back Ultra HD with 6G-SDI. The HyperDeck Studio 12G model can record even higher frame rates in Ultra HD up to 60 fps!
If you need longer recording times, then HyperDeck also records and plays back Apple ProRes and Avid DNx files. These 10 Bit quality codecs retain fantastic picture quality and increase the recording length of your media by more than 5 times!
This instruction manual contains all the information you need to start using your HyperDeck disk recorder. For uncompressed recording you need to use an SSD that supports the required data speed and we are continually adding details on our website of new SSDs that we have tested.
Please check the support page at www.blackmagicdesign.com for the latest version of this manual and updates to the HyperDeck software. Keeping your software up to date will always ensure you get all the latest features. When downloading software, please register with your information so we can keep you updated when new software is released. We are constantly working on new features and improvements, so we would love to hear from you!
Grant Petty
Grant Petty
CEO Blackmagic Design
Contents
HyperDeck Disk Recorders
Getting Started 5
Recording
Playback
HyperDeck Status Indicators 14
About SSDs and SD Cards 15
Blackmagic HyperDeck Setup 21
Selecting Your Video Format 22
Choosing a Codec 23
Control Panel Display Menu 26
RS-422 Control 30
Transferring Files over a Network 36
Connecting to an ATEM Switcher 38
Understanding Post Production Workflows 40
Using DaVinci Resolve 41
Importing your Clips 41
Editing your Clips 42
Trimming Clips 44
Mapping Keyboard Shortcuts 44
Adding Transitions 45
Adding Titles 46
Color Correcting your Clips 47
Using Scopes 48
Secondary Color Correction 49
Qualifying a Color 50
Adding a Power Window 50
Tracking a Window 51
Using Plugins 52
Mixing Your Audio 53
Mastering your Edit 58
Developer Information 60
Blackmagic HyperDeck Ethernet Protocol 60
Protocol Commands 60
Protocol Details 62
Help 71
Regulatory Notices and Safety Information 72
Warranty 73
Getting Started
Getting Started with Blackmagic HyperDeck
Getting started with your HyperDeck disk recorder is as easy as connecting power, plugging in your video sources and destination equipment to your HyperDeck's inputs and outputs and inserting your SSDs or SD cards.
Plugging in Power
Simply plug a standard IEC cable to your HyperDeck's power input on the rear panel.

Connect power to your HyperDeck Studio using a standard IEC power cable
You can also power your HyperDeck Studio Mini via Ethernet by plugging into a compatible Ethernet switch that supports PoE+, or 'power over Ethernet plus'.

Connect power to your HyperDeck Mini using a standard IEC power cable. Power can also be supplied via a PoE+ compatible Ethernet switch.
Plugging in Video and Audio
Plug your source video to the SDI or HDMI inputs, and your destination equipment to the SDI or HDMI outputs.
HyperDeck Studio 12G has 12G-SDI connectors so you can input or output Ultra HD up to 2160p60 using a single BNC cable.
HyperDeck Studio Pro provides additional inputs and outputs for connecting video equipment that supports single link, dual link or quad link Ultra HD.
Plugging in Analog Audio and Timecode on HyperDeck Studio Pro
If you want to connect analog audio sources to HyperDeck Studio Pro, plug into the XLR or RCA connectors. To select your desired audio input, simply press the 'input' button on the front control panel to cycle through combinations of video and audio inputs. For example, SDI + XLR, SDI + RCA, and more. External timecode can also be connected to and from your HyperDeck Studio Pro via the timecode XLR input and output connectors.

HyperDeck Studio Pro lets you plug in external analog audio and timecode via the rear panel XLR connectors. You can even plug In analog audio from audio equipment such as iPods and HiFi systems via the RCA inputs.
Plugging in SSDs and SD Cards
All HyperDeck models ship ready to record immediately without having to configure any settings. All you need is a formatted SSD or SD card.
You can easily format media via the front LCD based menu settings. You can also format using a computer.
Refer to the ‘About SSDs and SD Cards’ section in this manual for more information on how to format, the types of media that are best for recording video and a list of recommended drives and cards.
To plug in an SSD:
1 Hold a 9.5mm SSD with the connection pins facing the bottom and aligned with your HyperDeck's drive bay. Gently push the SSD into the drive bay until you feel it slot into place.
2 Your HyperDeck will verify the SSD. This is shown by an illuminated green light surrounding the drive bay. When the light or indicator turns off and the 'stop' button on the control panel is illuminated, your HyperDeck is ready to record.

natural_image
Diagram showing a server rack connected to two internal Ethernet ports, with an orange arrow indicating the process (no text or symbols present)Hold your SSD with the connection pins facing the bottom, aligned with your HyperDeck's drive bay and gently push the SSD into the drive bay until you feel it slot into place
To plug in an SD card:
1 Hold the SD card with the gold connectors facing your HyperDeck's LCD and align it with the media slot. Now gently push the card into the slot until you feel it lock firmly into place.
2 Your HyperDeck will verify the SD card. This is shown by an illuminated green indicator above the SD card slot. When the indicator turns off and the stop button on the control panel is illuminated, your HyperDeck is ready to record.
To remove the card, gently push until you feel it click, then release. The card will eject a short distance, allowing you to hold the edge of the card and remove it from the slot.

Gently push the SD card into the slot until you feel it click into place
Recording
Recording Ultra HD and HD video with HyperDeck
HyperDeck models that support Ultra HD video record compressed Ultra HD using Apple ProRes, plus Avid DNxHR on HyperDeck Studio 12G and HyperDeck Studio Mini. All HyperDeck models can record HD video using ProRes and DNxHD 220x codecs. HyperDeck Studio models that record on SSDs can also record uncompressed HD.
Recording Video with HyperDeck Studio Mini
HyperDeck Studio Mini can record compressed HD and Ultra HD video up to 2160p30 via 6G-SDI.
To record video:
1 Insert your formatted SD card into either of the SD card slots. The indicator above the slot will illuminate green as your HyperDeck reads the card. When the indicator turns off, HyperDeck Studio Mini is ready to record.
2 HyperDeck Studio Mini automatically detects when SDI video is connected and displays the image on the control panel LCD.
If you want to change the codec, you can choose from a variety of codecs using the control panel LCD menu or the Blackmagic HyperDeck Setup utility software. For more information, refer to the 'control panel display menu' section, or 'Blackmagic HyperDeck Setup/selecting your video format'.
3 Press the 'record' button and the indicator above the slot will illuminate red.
As your HyperDeck is recording, the slot indicator on the control panel LCD will alternate between displaying the active slot, and record time remaining on the card.
4 Press the 'stop' button to finish recording.

The indicator above the SD card slot illuminates red when recording video
Recording Video with HyperDeck Studio SSD Models
1 Insert your formatted SSD into either SSD slot. The LED strip surrounding the drive will illuminate green as HyperDeck reads the disk. When the slot light turns off, your HyperDeck is ready to record.
2 Press the input button on the control panel to cycle through your HyperDeck's inputs. When your connected source is selected, it will appear on the control panel LCD.
For HyperDeck Studio Pro, pressing the input button will also cycle through combinations of video and audio connections, for example SDI + SDI, SDI + XLR, and SDI + RCA. This lets you record SDI or HDMI video with external audio.
If you want to record using a different codec, you can choose from a variety of codecs using the control panel LCD menu or the HyperDeck Setup utility software. See the 'control panel display menu' section, or 'Blackmagic HyperDeck Setup/selecting your video format' section for more information.
3 Press the 'record' button to start recording instantly. A looping red light on the SSD slot indicates the SSD is recording.
4 Press the 'stop' button to finish your recording.

On HyperDecks with SSD slots, the slot indicator will illuminate red to show the unit is recording
TIP If HyperDeck records from a video source that contains closed caption data, the QuickTime or MXF movie will be recorded as well as a separate .MCC file containing the closed caption data.
Recording using Dual Media Slots
When there is less than 3 minutes of record time remaining on your SD card or SSD, the timecode counter on your HyperDeck's LCD will turn red and the 'stop' button will flash slowly.
This also means there is no second disk with space that recording can continue onto. In this case, you simply need to insert a disk with space so recording can continue. Once you insert a blank disk into the slot that's not being used for recording, the slow flashing will stop and this means HyperDeck can continue to record, because this second disk has been checked ok and there is space to keep recording.

If you have less than three minutes of recording time left on your current disk and no formatted media in your HyperDeck's second slot, the timecode indicator will turn red indicating your recording is about to stop.

If there is space on a formatted disk in the second slot, HyperDeck will display an icon in the top right corner to indicate that recording will automatically switch over once the current disk is full.
If you want to change the disk you are recording to at any time, and you have a second disk that has free space, then simply hold down the record button and the recording will move from the current disk to the second disk. This is very useful when you want to get that disk out of the HyperDeck without pausing recording. This can happen during live events when you need to get an important recording out to another location, but you don't want to miss anything and you don't want to stop recording.
If the 'record' button flashes quickly, this means the disk is not fast enough for sustained recording. In this case, if you are recording uncompressed HD, we recommend changing to a compressed recording format such as ProRes or DNxHD, or if you are recording compressed video and the record button flashes quickly, try using faster recommended media.
Ref Input
If your HyperDeck has a reference input, it can accept black burst and tri-level sync signals from a sync generator. Connect a reference source to this input if you want to synchronize HyperDeck with other video equipment, such as a production switcher.

If your HyperDeck has a reference input, you can sync your HyperDeck with other video equipment
Ref Output
The reference output on HyperDeck Studio Mini lets you connect an internally generated black burst or tri-level sync signal to other video equipment if you want to synchronize other equipment with your HyperDeck.

On HyperDeck Studio Mini you can sync other video equipment with your HyperDeck using the reference output
Playback
Playing Video with HyperDeck
1 Press the 'play' button once for instant playback and you'll see your video on the LCD, and any displays connected to your HyperDeck's video outputs. When a clip is playing, pressing 'play' again will loop it continuously. On HyperDeck Studio Mini, pressing play a third time will let you loop all recorded clips.
NOTE With HyperDeck Studio Pro, you can choose to play back Ultra HD using single link, dual link or quad link outputs. Refer to 'Ultra HD Playback on HyperDeck Studio Pro' later in this section.
2 To skip to the next clip, press the 'next clip' button on the control panel.
3 Press 'previous clip' once to go to the start of the current clip or press twice to skip back to the start of the previous clip.

Press the play button on your HyperDeck's control panel to play back a clip, and press the forward or reverse skip buttons to restart the current clip or skip to a different one
If the play button flashes on HyperDecks that record on SSDs, this means the disk is not fast enough and playback cannot keep up. We recommend you change to a compressed recording format such as ProRes or DNxHD, or use a faster recommended SSD for uncompressed or Ultra HD recording.

SSD slots have rotating LEDs to show the unit is in playback mode
TIP If you play back a video clip that has an associated .MCC file, the closed caption data will be played out with the video via the SDI output of your HyperDeck.
Ultra HD Playback on HyperDeck Studio Pro
HyperDeck Studio Pro can play back Ultra HD video via single link 6G-SDI, dual link 3G-SDI, and quad link HD-SDI.
To select your desired Ultra HD playback output:
1 Press the 'disp' button to open the control panel LCD menu.
2 Using the jog/shuttle wheel and 'set' button, select 'video', then '2160p SDI out'.
3 Select your desired output type and press 'set' to confirm. Press the 'disp' button to close the menu.

For HyperDeck Studio Pro, you can choose between single link 6G-SDI, dual link 3G-SDI or quad link HD-SDI for Ultra HD playback
Jog or Shuttle
You can use the jog or shuttle wheel to shuttle to a particular section at variable speeds. The more you turn it forwards or backwards, the faster your HyperDeck Studio will play through your video. Once you've found the section you want to review, press 'play' to resume normal playback.
If you want to slowly jog through your video frame by frame, press the 'jog' button once to enable jog operation. Turning the jog or shuttle wheel in the desired direction will then jog through your video. Pressing the 'jog' button again will return the wheel to shuttle operation.
If your HyperDeck has 'reverse' or 'fast forward' buttons, you can press these buttons to play through the clip at 2x speed. Press the 'reverse' or 'fast forward' buttons again and the speed will increase to 4x and then 8x. Once you've found the section you want to review, press 'play' to resume normal playback.

On HyperDecks with fast forward and reverse buttons, press the buttons repeatedly to gradually shuttle playback forwards and backwards at faster speeds
HDR Playback on HyperDeck Studio 12G
HyperDeck Studio 12G is capable of playing back HDR wide gamut video content. This lets you monitor HDR video on an HDMI TV or SDI monitor. For example, you may have HDR files you have exported from a DaVinci Resolve workstation and want to view them on a larger screen or HDMI projector.
Your HyperDeck will automatically read the metadata in the clip file and select the corresponding HDR output format.
While the auto setting will be successful most of the time, some files may not include the required metadata, and this may affect how the brightest regions of your image will be displayed. If the image does not appear as expected, you can set the correct output format using the 'HDR' LCD menu.
To set the HDR output format:
1 Press the 'menu' button to open the LCD menu.
2 Navigate to the 'video' menu and select 'HDR'.
3 Select the video clip's corresponding HDR output format from the list. For example, if your clip was encoded for HDR 10 using ST2084 at 2000 nits, select ST2084 (2000).
NOTE For HDR playback to work as expected, the monitor or HDMI projector connected to your HyperDeck Studio 12G must also be capable of displaying HDR content.
The HDR output settings available are:
Auto
Auto is the default setting that will let HyperDeck automatically select the output format that conforms to the clip's HDR metadata.
Rec.709
For high definition video using standard dynamic range.
Rec.2020 SDR
This setting is used for Ultra HD video using standard dynamic range.
HLG
HLG stands for 'hybrid log gamma'. This format allows HDR video to be played back on HDR capable TVs and monitors, including those that support up to Rec.2020 SDR.
The following settings support the Rec.2020 color gamut, plus PQ, or perceptual quantizer published as SMPTE ST2084. PQ is the function of wide gamut HDR that allows for the display of brighter images. Luminance values in candelas per meter squared, for example 1000 cd/m ^2 indicate the maximum luminance per square meter supported by the corresponding format.
ST2084 (300)
300 cd/m ^2 luminance.
ST2084 (500)
500 cd/m² luminance.
ST2084 (800)
800 cd/m ^2 luminance.
ST2084 (1000)
1000 cd/m² luminance.
ST2084 (2000)
2000 cd/m ^4 luminance.
ST2084 (4000)
4000 cd/m² luminance.
HyperDeck Status Indicators
Status Indicators
When recording or playing video with HyperDeck, any information you need to know is displayed on the unit itself via LED indicators for each media slot and the built in LCD.
Media Slot Indicators
When you first power on HyperDeck, or any time you insert an SSD or SD card, the slot indicator will illuminate green while checking the media and then switch off. If the disk has not been formatted correctly, or fails to work, the slot will illuminate solid red until the disk is removed. In this case, check if the disk is formatted correctly and also check that it works with a computer.

HyperDeck's media slot indicators illuminate to let you know the status of the disk, for example red when recording, and green during playback
Control Panel LCD
HyperDeck Disk Recorders feature an LCD that not only shows your video but also displays status information such as video format and frame rate, record, playback and jog modes, the active media slot as well as timecode and audio levels.

HyperDecks have a built in LCD that shows your video as well as status information
About SSDs and SD Cards
Choosing a Fast SSD
When working with high data rate video it's important to carefully check the SSD you would like to use. This is because some SSDs can have up to 50% lower write speed than the manufacturer's claimed speed, so even though the disk specifications claim an SSD is fast enough to handle video, in reality the disk is not fast enough for real time video recording. Hidden data compression mostly affects recording and often these disks can still be used for real time playback.
In our testing, we have found larger newer models of SSD and larger capacity SSDs are generally faster. SSDs recommended for use with HyperDeck for uncompressed 10 Bit HD and ProRes or DNxHR Ultra HD video recording include:
| Brand SSD | Name/Model Number Storage Supported Formats | |||
| 10-bit uncompressed HD and Ultra HD ProRes or DNxHR | HD ProRes and DNxHD | |||
| ADATA | XPG SX900. ASX900S3-256GM-C. | 256GB | Yes | Yes |
| Angelbird | AV Pro. 480GB Yes Yes | |||
| AV Pro. 240GB Yes Yes | ||||
| Crucial | M4 (firmware 009 only). CT512M4SSD2. 512GB Yes Yes | |||
| M4 (firmware 000F only). CT256M4SSD2. | 256GB | No | Yes | |
| Digistor | 4K Professional Video Series. DIG-PVD1000, pre-formatted exFat. | 1TB | Yes Yes | |
| Professional Video Series. DIG-PVD480S, pre-formatted exFat. | 480GB Yes | Yes | ||
| Professional Video Series. DIG-PVD240S, pre-formatted exFat | 240GB Yes | Yes | ||
| Intel | 520 series. SSDSC2CW480A310. | 480GB | Yes | Yes |
| 520 series. SSDSC2CW240A310. | 240GB | Yes | Yes | |
| 530 series. SSDSC2BW240A401. | 240GB | Yes | Yes | |
| 530 series. SSDSC2BW180A401. | 180GB | Yes | Yes | |
| 335 series. SSDSC2CT240A4K5. | 240GB | Yes | Yes | |
| Kingston | HyperX 3K. SH103S3/480G. | 480GB | Yes | Yes |
| HyperX 3K. SH103S3/240G. | 240GB | Yes | Yes | |
| SSDNow KC300. SKC300S37A/480G. | 480GB | Yes | Yes | |
| SSDNow KC300.SKC300S37A/240G. | 240GB | Yes | Yes | |
| OCZ | Agility 3. AGT3-25SAT3-240G. | 240GB | No | Yes |
| OWC | Mercury Extreme Pro 6G. OWCSSD7P6G480. | 480GB Yes Yes | ||
| Mercury Extreme Pro 6G. OWCSSD7P6G240. | 240GB Yes Yes | |||
| Mercury Extreme Pro 6G. OWCSSD7P6G120. | 120GB Yes Yes | |||
| Samsung | 850 Pro. MZ-1T0BW, spacer required. 1TB Yes Yes | |||
| 850 Pro. MZ-7KE512BW, spacer required. 512GB Yes Yes | ||||
| 850 Pro. MZ-7KE256BW, spacer required. | 256GB | Yes | Yes | |
| SanDisk | Extreme Pro. SDSSDXPS-240G-G25. | 240GB | Yes | Yes |
| Extreme Pro. SDSSDXPS-480G-G25. | 480GB | Yes | Yes | |
| Extreme Pro. SDSSDXPS-960G-G25. | 960GB | Yes | Yes | |
| Extreme. SDSSDX-480G-G25. | 480GB Yes Yes | |||
| Extreme. SDSSDX-240G-G25. | 240GB | Yes | Yes | |
| Extreme. SDSSDX-120G-G25. | 120GB | No | Yes | |
| PNY | Prevail. SSD9SC480GCDA-PB. | 480GB Yes Yes | ||
| Prevail. SSD9SC240GCDA-PB. | 240GB | Yes | Yes | |
| XLR8. SSD9SC480GMDA-RB. | 480GB Yes Yes | |||
| Transcend | SSD370. TS1TSSD370. | 1TB Yes Yes | ||
| SSD370. TS512GSSD370. | 512GB | Yes | Yes | |
| SSD370. TS256GSSD370. | 256GB | Yes | Yes | |
| SSD720. TS256GSSD720. | 256GB | Yes | Yes | |
Please visit the Blackmagic Design support center at www.blackmagicdesign.com for the latest support notes and information. If you find an SSD that isn't fast enough for uncompressed HD video or Ultra HD, try a faster SSD or switch to a compressed recording format such as ProRes or DNxHD. These recording formats have a much lower data rate and are easier for the SSD to handle.
Choosing a fast SD Card
For high quality HD recording on HyperDeck Studio Mini, we recommend high speed UHS-II SD cards. These cards need to be capable of write speeds above 110MB/s for recording up to Ultra HD 2160p30. However, if you are recording standard definition or lower bit rate, lower quality compression you might be able to use slower cards. Generally the faster the cards, the better.
It's worth regularly checking the latest version of this manual for more up to date information and can always be downloaded from the Blackmagic Design website at www.blackmagicdesign.com/support
| Brand | Card Name | Storage | Max Read/Write Speed | Supported Formats | |
| Ultra HDProRes orDNxHR | HD ProRes,DNxHD orH.264 | ||||
| Lexar | Professional 2000x | 64 GB | 300 MB/s | Yes | Yes |
| Sandisk | Extreme Pro | 128 GB 300 | MB/s Yes Yes | ||
| 64 GB 300 | MB/s Yes Yes | ||||
| 32 GB 300 | MB/s Yes Yes | ||||
| Extreme Pro | 64 GB 95 | MB/s No Yes | |||
| 32 GB 95 | MB/s No Yes | ||||
| Extreme | 64 GB | 90 MB/s | No | Yes | |
| Extreme Plus | 64 GB | 90 MB/s | No | Yes | |
Formatting SSDs and SD Cards
Media used by HyperDeck must be formatted as either HFS+ or exFAT. These disk formats allow long clips to be recorded as single files. You can easily format a card or SSD via the format feature in HyperDeck's LCD menu, or via a Windows or Mac OS computer.
HFS+ is also known as Mac OS Extended and is the recommended format for HyperDeck as it supports journaling. Data on a journaled disk is more quickly recovered in the rare event it becomes corrupted, and less likely to be corrupted in the first place. HFS+ is natively supported by Mac OS.
ExFAT is supported natively by Mac OS and Windows without needing to purchase any additional software. However, exFAT does not support journaling.
While navigating through the format feature on the LCD menu, you'll have plenty of opportunities to cancel the format and return to the previous menu by selecting the return arrow on the bottom right of the LCD and pressing the 'set' button on the control panel, or by pressing the menu button on HyperDeck Studio Mini. Always press the 'set' button to confirm settings and enter setting menus.
To format using your HyperDeck:
1 Insert the media you want to format into either of the SD card or SSD slots.
2 Press the 'disp' or 'menu' button on your HyperDeck's control panel.
3 On HyperDecks that record on SSDs, turn the jog/shuttle wheel and press the set button to select 'format SSD' on the LCD menu.
On HyperDeck Studio Mini, turn the jog/shuttle wheel and use the set button to enter the 'record' menu on the LCD and select 'format card'.

flowchart
graph TD
A["Video"] --> B["Main Menu"]
B --> C["Setup"]
B --> D["Timecode"]
B --> E["Record"]
B --> F["Format SSD"]
B --> G["SET Open"]

Turn the jog/shuttle wheel clockwise to select 'format SSD' on the LCD menu. On HyperDeck Studio Mini, the 'format card' setting is in the 'record' menu.
4 Select the SD card or SSD you want to format on the LCD using the jog/shuttle wheel. Remember to press the 'set' button to confirm your selection.
5 Now set your desired format from the 'HFS+' or 'exFAT' options.
6 A warning message will appear on the LCD asking you to confirm the format. Make sure you have backed up any important data before you confirm as this action cannot be undone. Confirm the format by selecting 'format' for SD cards, or 'format SSD' using the jog/shuttle wheel and pressing the 'set' button.


Set your desired format from the HFS+ or exFAT options. On HyperDeck Studio Mini, HFS+ is labeled 'OS X Extended'


Confirm the format by using the jog/shuttle wheel and pressing the set button
A progress bar will show you the formatting progress. When your HyperDeck has finished formatting, 'formatting complete' will display on the LCD. Press the 'set' button again to return to the menu.
Formatting Media on a Mac OS Computer
The Disk Utility application included with Mac OS can format a drive in the HFS+ or exFAT formats. Make sure you back up anything important from your disk as you will lose everything on it when it is formatted.
To format on a Mac OS computer:
1 Connect an SSD to your computer with an external dock or cable adapter and dismiss any message offering to use your SSD for Time Machine backups.
For SD cards, insert the card into your computer's SD card slot, or connect it to your computer via an external card reader.
2 Go to applications/utilities and launch Disk Utility.
3 Click on the disk icon of your SSD or SD card and then click the erase tab.
4 Set the format to Mac OS Extended (Journaled) or exFAT.
5 Type a name for the new volume and then click erase. Your media will quickly be formatted and made ready for use with HyperDeck.

Use Disk Utility on Mac OS to erase your SSD or SD card in the Mac OS Extended (Journaled) or exFAT format
Formatting Media on a Windows computer
The format dialog box can format a drive in the exFAT format on a Windows PC. Make sure you back up anything important from your SSD or SD card as you will lose everything on it when it is formatted.
To format on a Windows computer:
1 Connect an SSD to your computer with an external dock or cable adapter.
For SD cards, insert the card into your computer's SD card slot, or connect it to your computer via an external card reader.
2 Open the start menu or start screen and choose computer. Right-click on your SSD or SD card.
3 From the contextual menu, choose format.
4 Set the file system to exFAT and the allocation unit size to 128 kilobytes.
5 Type a volume label, select quick format and click Start.
6 Your media will quickly be formatted and made ready for use with HyperDeck.

Use the Format dialog box feature in Windows to format your SSD or SD card in the exFAT format
Blackmagic HyperDeck Setup
Using HyperDeck Setup
Blackmagic HyperDeck Setup is used to change settings and update the internal software in your HyperDeck. In addition to installing HyperDeck Setup, uncompressed 10 bit codecs are installed for Mac and Windows.

The home page of HyperDeck Setup. If you have multiple HyperDecks connected to your computer, you can choose between them by clicking on the arrows at the sides of the home page
How to Update Your HyperDeck Software on Mac OS
1 Download and unzip the HyperDeck Setup software.
2 Open the resulting disk image and launch the HyperDeck Installer.
Follow the onscreen instructions.
3 After installing, connect a USB cable from HyperDeck to your computer.
4 Launch Blackmagic HyperDeck Setup and follow any onscreen prompt to update the internal software in your HyperDeck. If no prompt appears, the internal software is up to date and there is nothing further you need to do.
How to Update Your HyperDeck Software on Windows
1 Download and unzip the HyperDeck Setup software.
2 You should see a HyperDeck Setup folder containing this manual and the HyperDeck Setup utility installer. Double-click the installer and follow the onscreen prompts to complete the installation.
3 After installing, connect a USB cable from HyperDeck to your computer.
4 Launch Blackmagic HyperDeck Setup and follow any onscreen prompt to update the internal software in your HyperDeck. If no prompt appears, the internal software is up to date and there is nothing further you need to do.
Selecting Your Video Format
All HyperDecks record compressed HD video using Apple ProRes and Avid DNxHD 220x codecs. HyperDeck models that record on SSDs can also record uncompressed HD video.
HyperDeck Studio Pro records Ultra HD using ProRes codecs. HyperDeck Studio Mini and HyperDeck Studio 12G support ProRes and DNxHR HQX for Ultra HD recording.
HyperDeck Studio Mini also records HD video using the H.264 codec, providing much longer record times with cheaper SD media, and offers a wider family of DNx codecs including DNxHD145 and DNxHR SQ.
You can change the codec you want from the front panel LCD menu, or you can use the HyperDeck Setup software utility depending on which you prefer. For more information on how to change your codec using the front panel, refer to the 'control panel display menu' section.
HyperDecks that record on SSDs can record 10-bit uncompressed QuickTime files on a fast SSD, or to a compressed format if you have a slower SSD or want to fit longer high definition recordings on a single SSD. You can also change the format between recording clips, making it possible to have uncompressed QuickTime files as well as compressed files on the same disk.
Working with uncompressed video is exciting as there is simply no better quality. However, if compressed video better suits your workflow, or if you need to fit more video on a SSD, you can choose a high quality professional compressed video format which is also perfect for editing.
To choose a video format using HyperDeck Setup:
1 Connect HyperDeck to your computer via USB.
2 Launch HyperDeck Setup. Your HyperDeck model will be named in the setup utility home page.
3 Click on the circular 'setup' icon or the image of your HyperDeck to open the settings page.
4 In the 'record' settings, click on the 'codec' drop down menu and select your desired codec. Click 'save' to confirm your setting.

To change settings using HyperDeck Setup, plug HyperDeck into your computer via the USB port

Use HyperDeck Setup to select your desired recording and playback format
All subsequent clips will be recorded in the chosen format.
Setting the recording format also sets the playback format. For example, if you want to play back an uncompressed 10-bit QuickTime file, set the recording format to Uncompressed 10-bit QuickTime. Setting Avid DNxHD as the recording format lets you play DNxHD 220x QuickTime and MXF clips, and by selecting Apple ProRes you can play clips using any of the ProRes codecs.
NOTE Currently, HyperDeck Studio Mini will play back H.264 files recorded on a HyperDeck Studio Mini, but not H.264 files recorded on other video equipment.
Choosing a Codec
Each codec is determined using a balance between video quality, level of compression, and the resulting file size. Choose the codec based on the needs of your project. For example, if you need the absolute highest video quality, then uncompressed is the best choice. However, the file size for each clip will be very large compared to a compressed file.
ProRes 422 HQ or AVID DNxHD 220x is the best choice for the highest video quality using the least compression. This provides high video data for color grading with a manageable file size and is available on all HyperDeck models.
For good video quality in a smaller file size, ProRes 422 Proxy or ProRes LT is appropriate. This is useful for preview or offline exports for sound editing, long form recording of events, or even lengthy recordings for security or archival purposes.
HyperDeck Studio Mini provides greater flexibility with DNxHD codecs. It can record DNxHD 145 and DNxHD 45 wrapped in MXF or QuickTime, perfect for editorial use. DNxHD MXF files recorded on HyperDeck Studio Mini are also OP-1A, allowing video and multiple tracks of audio to be recorded in the same interleaved file. HyperDeck Studio Mini also supports playback of OP-1A and OP-Atom MXF files.
For even longer recording times, HyperDeck Studio Mini can record HD video using the H.264 codec, providing a good compromise between image quality and file size. Three bit rate options include 'high' for video with the least compression, 'medium' for smaller files sizes but still a good quality image, and 'low' to make the most of your storage media but with the most amount of compression. H.264 is a good option for recording a delivery master, for example outputting your files for uploading to YouTube.
NOTE When HyperDeck Studio Mini has the recording codec set to H.264, only audio channels 1 and 2 are available.
HyperDeck Disk Recorders support the following codecs.
| Codecs Bit Depth | HyperDeck Studio | HyperDeck Studio Pro | HyperDeck Studio 12G | HyperDeck Studio Mini | ||
| QuickTime | Uncompressed | 10-bit | Yes | Yes | Yes | No |
| ProRes 422 HQ 10-bit Yes Yes Yes Yes | ||||||
| ProRes 422 10-bit Yes Yes Yes Yes | ||||||
| ProRes 422 LT 10-bit Yes Yes Yes Yes | ||||||
| ProRes 422 Proxy 10-bit Yes Yes Yes Yes | ||||||
| ProRes 4444 12-bit No No No | Yes(HD playback only) | |||||
| H.264 No No No | Yes(HD recording and playback) | |||||
| QuickTime and MXF | Avid DNxHD 220x | 10-bit | Yes | Yes | Yes | Yes |
| Avid DNxHD 145 | 8-bit | No | No | No | Yes | |
| Avid DNxHD 45 | 8-bit | No | No | No | Yes | |
| Avid DNxHR HQX | 10-bit | No | No | Yes | Yes | |
| Avid DNxHR SQ | 8-bit | No | No | No | Yes | |
| Avid DNxHR LB | 8-bit | No | No | No | Yes | |
MXF files recorded on the HyperDeck Studio Mini are recorded in the OP-1A operational pattern, allowing audio and video to be recorded in a single interleaved file. The HyperDeck Studio Mini supports playing back OP-1A and OP-Atom files.
H.264 on the HyperDeck Studio Mini
| Video Format | Bit Rate Setting | Bit Rate (Mb/s) |
| 1080p60 | High | 70 |
| Medium | 46 | |
| Low | 22 |
H.264 on the HyperDeck Studio Mini
| Video Format Bit Rate Setting Bit Rate (Mb/s) | ||
| 1080p50 | High 65 | |
| Medium 42 | ||
| Low 20 | ||
| 1080p30 | High 45 | |
| Medium 29 | ||
| Low 13 | ||
| 1080p25 | High 40 | |
| Medium 25 | ||
| Low 11 | ||
| 1080p24 | High 38 | |
| Medium 24 | ||
| Low 10.5 | ||
| 720p60 | High 40 | |
| Medium 26 | ||
| Low 12 | ||
| 720p50 | High 33 | |
| Medium 21 | ||
| Low 9.5 | ||
HyperDeck Studio Mini will play back H.264 files recorded on a HyperDeck Studio Mini, but not H.264 files recorded on other video equipment.
Control Panel Display Menu
Using the Display Menu
Use your HyperDeck's control panel display menu to change your video and audio inputs and outputs as well as any settings changes you would make in HyperDeck Setup such as trigger recording, timecode output and your chosen recording codec.


HyperDeck Studio Mini has a list based menu, and HyperDecks that record on SSDs have a tile based menu, so the position of some settings in the menu may appear slightly different
To change a setting in the menu:
1 Press the 'display' or 'menu' button to display the main menu.
2 Use the jog/shuttle wheel on the front of HyperDeck to highlight different options.
3 Press the 'set' button to confirm a selection.
4 To return to a previous menu, press the 'menu' button on HyperDeck Studio Mini, or scroll to the 'return' arrow and press 'set.
5 Press the 'display' or 'menu' button to exit.

Press the 'display' or 'menu' button to enter the LCD menu where you can select between various codecs and change settings
Selecting Timecode Source
When recording from HD-SDI video sources that provide embedded SMPTE RP 188 metadata, you can record the embedded timecode from the video source instead of using timecode generated by your HyperDeck.
To set this using the display menu:
1 Press the 'display' or 'menu' button to display the main menu.
2 Scroll to the 'timecode' menu and press 'set'.
3 Press 'set' to enter the 'timecode input' menu and select 'input'.
4 Press 'set' to confirm your selection.
It might be necessary to turn on the RP 188 setting in your camera before HyperDeck will be able to record the timecode.
SDI Start/Stop Recording
HyperDeck supports start/stop recording, which means when you press the record button on an HD-SDI camera, HyperDeck will start recording without also having to press the record button on your HyperDeck disk recorder.
NOTE You will need a camera that can trigger the record function of HyperDeck via HD-SDI. Cameras which support trigger recording via HD-SDI may include menu options such as 'trigger rec', 'HD-SDI remote I/F' HD-SDI remote I/F' or 'SDI remote start/stop trigger'.
To set start/stop trigger recording using the display menu:
1 Press the 'disp' or 'menu' button to display the main menu.
2 Scroll to the 'record' menu and press 'set'.
3 Scroll to the 'record trigger' menu and press 'set'.
4 Select 'SDI start/stop' and press 'set' to confirm your selection. Press 'disp/menu' to exit.
5 On HyperDeck Studio Mini, press the menu button to open the LCD menu, navigate to 'settings' and set remote to 'on'.
HyperDecks that record on SSDs have a remote button on the front panel marked REM. Simply press the remote button to enable remote control. The button will illuminate to let you know remote is enabled.

You can use the control panel LCD menu on HyperDeck, or use HyperDeck Setup to enable Start/Stop recording

The 'record trigger' settings let you set your HyperDeck to start and stop recording triggered by data received over an HD-SDI connection
Timecode Run Recording
HyperDeck also supports timecode run recording, which is similar to start/stop recording, but is only used if your HD-SDI camera does not support trigger recording via HD-SDI.
To set up Timecode Run recording using HyperDeck Setup:
1 Go into your camera's timecode settings and change them from 'free run timecode' to 'record run timecode'.
2 In HyperDeck Setup, set trigger recording to 'timecode run'.
3 Remote must also be enabled via HyperDeck's front panel or via the control panel display menu on HyperDeck Studio Mini.
To set up Timecode Run recording on HyperDeck's control panel display menu:
1 Press the 'disp' or 'menu' button to display the main menu.
2 Scroll to the 'record' menu and press 'set'.
3 Scroll to the 'record trigger' menu and press 'set'.
4 Select 'timecode run' and press 'set' to confirm your selection. Press 'disp' or 'menu' to exit.
5 On HyperDeck Studio Mini, press the menu button to open the LCD menu, navigate to 'settings' and set remote to 'on'.
HyperDecks that record on SSDs have a remote button on the front panel marked REM. Simply press the remote button to enable remote control. The button will illuminate to let you know remote is enabled.
Now whenever your HyperDeck detects the timecode running via HD-SDI it will start recording. Recording will stop whenever the timecode stops.
Be careful if your HyperDeck is connected to the SDI output of a video router, as any change to the video source might cause HyperDeck to start recording unexpectedly due to a change in timecode being detected via HD-SDI.

You can use the control panel LCD menu, or use HyperDeck Setup to enable timecode run recording

The 'timecode run' recording feature lets you trigger your HyperDeck to record whenever running timecode is detected via the HD-SDI connection. Recording will stop when the timecode stops.
RS-422 Control
What is RS-422 Control?
The RS-422 standard is a serial deck control broadcast standard and has been used by broadcasters since the early 1980s and is found on many decks, linear editors, non linear editors and broadcast automation products. All current HyperDeck models support this standard so can be integrated into broadcast automation, remote control systems, editing systems and any kind of custom control you might like to design yourself.
HyperDeck Studio Mini also supports file based commands from the Advanced Media Protocol via RS-422. This lets you control your HyperDeck with an external device using AMP commands such as adding clips to a playlist, determining the filename of the next clip, looping a single clip or timeline, or clearing a playlist.
Using an External RS-422 Controller
All current HyperDeck models feature an industry standard Sony ^™ compatible RS-422 deck control port, which has the correct pin connections for a direct connection to any remote controller with RS-422.
You can use pre-manufactured 9 pin cables as long as each end of the cable is wired 'pin for pin' where the same pin numbers on each end of the cable are connected together. If you would like to make custom cables, please refer to the accompanying wiring diagram.
You can remotely control your HyperDeck from an RS-422 controller instead of locally pushing buttons.
1 Connect a video signal to your HyperDeck's video input.
2 Connect an RS-422 cable from your external controller to your HyperDeck.
3 Enable remote control by pressing the remote button on the front control panel, or via the LCD menu in HyperDeck Studio Mini, to allow remote deck control.
You can now remotely start and stop recording and playback of your HyperDeck as well as performing other common jog and shuttle functions. The full list of supported RS-422 commands is in the following section named 'supported RS-422 commands'.

| Receive(−) | Receive(+) | Transmit(−) | Transmit(+) | Ground Pins |
| 2 7 8 3 1,4,6,9 |
RS-422 remote pin connections

Remote port on HyperDeck Studio and HyperDeck Studio 12G

Make sure your HyperDeck has remote set to 'on' in the LCD menu, or via the control panel remote button, to enable RS-422 deck control
Supported RS-422 Commands
| Command Reply No Remote Notes | |||||
| 0 - System Control | |||||
| 0x00 | 0x11 DeviceTypeRequest | NTSC: 0xF0E0PAL: 0xF1E024P: 0xF2E0 | Enabled | ||
| 1 - Slave Response | |||||
| 0x20 | 0x00 | Stop | Acknowledge | Disabled | |
| 0x20 | 0x01 | Play | Acknowledge | Disabled | |
| 0x20 | 0x02 | Record | Acknowledge | Disabled | |
| 0x20 | 0x10 | FastFwd | Acknowledge | Disabled | |
| 0x21 | 0x11 | JogFwd1 | Acknowledge | Disabled | |
| 0x22 | 0x11 | JogFwd2 | Acknowledge | Disabled | Treated as N=1;Same as JogFwd1 |
| 0x21 | 0x12 | VarFwd1 | Acknowledge | Disabled | Uses ShuttleFwd1 |
| 0x22 | 0x12 | VarFwd2 | Acknowledge | Disabled | Treated as N=1;Same as VarFwd1 |
| 0x21 | 0x13 | ShuttleFwd1 | Acknowledge | Disabled | |
| 0x22 | 0x13 | ShuttleFwd2 | Acknowledge | Disabled | Treated as N=1;Same as ShuttleFwd1 |
| 0x20 0x20 Rewind | Acknowledge Disabled | ||||
| 0x21 0x21 JogRev1 | Acknowledge Disabled | ||||
| 0x22 | 0x21 | JogRev2 | Acknowledge | Disabled | Treated as N=1;Same as JogRev1 |
| 0x21 | 0x22 | VarRev1 | Acknowledge | Disabled | Uses ShuttleRev1 |
| 0x22 0x22 VarRev2 | Acknowledge Disabled | Treated as N=1;Same as VarRev1 | |||
| 0x21 | 0x23 | ShuttleRev1 | Acknowledge | Disabled | |
| 0x22 | 0x23 | ShuttleRev2 | Acknowledge | Disabled | Treated as N=1;Same as ShuttleRev1 |
| 0x20 | 0x30 | Preroll | Acknowledge | Disabled | |
| 0x24 | 0x31 | CueData | Acknowledge | Disabled | |
| 0x20 | 0x34 | SyncPlay | Acknowledge | Disabled | |
| 0x21 | 0x38 | ProgSpeedPlayPlus | Acknowledge | Disabled | |
| 0x21 | 0x39 | ProgSpeedPlayMinus | Acknowledge | Disabled | |
| 0x20 | 0x40 | Preview | Acknowledge | Disabled | Status bits are set |
| 0x20 | 0x41 | Review | Acknowledge | Disabled | Status bits are set |
| 0x20 | 0x43 | OutpointPreview | Acknowledge | Disabled | |
| 0x22 | 0x5C | DMCSetFwd | Acknowledge | Disabled | |
| 0x22 | 0x5D | DMCSetRev | Acknowledge | Disabled | |
| 0x20 | 0x60 | FullEEOff | Acknowledge | Disabled | |
| 0x20 | 0x61 | FullEEOn | Acknowledge | Disabled | |
| 0x20 | 0x63 | SelectEEOn | Acknowledge | Disabled | |
| 4 - Preset/Select Control | |||||
| 0x40 | 0x10 | InEntry | Acknowledge | Disabled | |
| 0x22 | 0x23 | ShuttleRev2 | Acknowledge | Disabled | Treated as N=1;Same as ShuttleRev1 |
| 0x20 | 0x30 | Preroll | Acknowledge | Disabled | |
| 0x24 | 0x31 | CueData | Acknowledge | Disabled | |
| 0x20 | 0x34 | SyncPlay | Acknowledge | Disabled | |
| 0x21 | 0x38 | ProgSpeedPlayPlus | Acknowledge | Disabled | |
| 0x21 | 0x39 | ProgSpeedPlayMinus | Acknowledge | Disabled | |
| 0x40 | 0x11 | OutEntry | Acknowledge | Disabled | |
| 0x44 | 0x14 | InDataPreset | Acknowledge | Disabled | |
| 0x44 | 0x15 | OutDataPreset | Acknowledge | Disabled | |
| 0x40 | 0x18 | InFwd | Acknowledge | Disabled | |
| 0x40 | 0x19 | InRev | Acknowledge | Disabled | |
| 0x40 | 0x1A | OutFwd | Acknowledge | Disabled | |
| 0x40 | 0x1B | OutRev | Acknowledge | Disabled | |
| Command Reply No Remote Notes | |||||
| 0x40 | 0x20 | InReset | Acknowledge | Disabled | |
| 0x40 | 0x21 | OutReset | Acknowledge | Disabled | |
| 0x40 | 0x22 | AInReset | Acknowledge | Disabled | |
| 0x40 | 0x23 | AOutReset | Acknowledge | Disabled | |
| 0x44 0x31 PrerollPreset Acknowledge Disabled | |||||
| 0x40 0x40 AutoModeOff Acknowledge Disabled | ignored, Status bit remembered | ||||
| 0x40 | 0x41 | AutoModeOn | Acknowledge | Disabled | ignored, Status bit remembered |
6 - Sense Request
| 0x61 0x0A | TimeCodeGenSense | ||||
| Request for Gen TC | GenTCData | Enabled | |||
| Timer1Sense Timer1Data | Enabled | ||||
| UserBitsVITCTimeSense | UserBitsVITCTimeData | Enabled | |||
| LTCUserBitsTimeSense | LTCUserBitsTimeData | Enabled | |||
| VITCUserBitsTimeSense | VITCUserBitsTimeData | Enabled | |||
| 0x60 | 0x10 | InDataSense | InData | Enabled | |
| 0x60 | 0x11 | OutDataSense | OutData | Enabled | |
| 0x60 | 0x12 | AlnDataSense | AlnData | Enabled | |
| 0x60 | 0x13 | AOutDataSense | AOutData | Enabled | |
| 0x61 | 0x20 | StatusSense | StatusData | Enabled | |
| 0x60 | 0x2E | SpeedSense | SpeedData | Enabled | |
| 0x60 | 0x31 | PrerollTimeSense | PreRollTimeData | Enabled | |
| 0x60 | 0x36 | TimerModeSense | TimerModeData | Enabled | |
| 0x60 | 0x3E | RecordInhibitSense | RecordInhibitStatus | Enabled | |
7 - Sense Reply
| 0x78 | 0x00 | Timer1Data | — | — | Current Time and 00:00:00:00 |
| 0x78 | 0x04 | LTCUserBitsTimeData | — | — | Current Time and 00:00:00:00 |
| 0x78 | 0x06 | VITCUserBitsTimeData | — | — | Current Time and 00:00:00:00 |
| 0x74 | 0x06 | VITCTimeData | — | — | Current Time |
| 0x74 | 0x07 | UserBitsVITCTimeData | — | — | 00:00:00:00 |
| 0x74 | 0x08 | GenTCDATA | — | — | Current Time |
| 0x78 | 0x08 | GenTCUBData | — | — | Current Time and 00:00:00:00 |
| 0x74 | 0x09 | GenUBData | — | — | 00:00:00:00 |
| 0x74 | 0x10 | InData | — | — | |
| 0x74 | 0x11 | OutData | — | — | |
| 0x74 | 0x12 | AlnData | — | — | |
| 0x74 | 0x13 | AOutData | — | — | |
| Command Reply No Remote Notes | |||||
| 0x74 | 0x14 | CorrectedLTCTimeData | — | — | Current Time |
| 0x70 0x20 StatusData — — | Please see “Status Bits” sheet: Limited to 9 bytes of status, silently truncated | ||||
| 0x71 0x2E SpeedData — — | |||||
| 0x74 0x31 PrerollTimeData — — | |||||
| 0x71 | 0x36 | TimerModeData | — | — | Returns 0 (TimeCode) |
| 0x72 | 0x3E | RecordInhibitStatus | — | — | |
| A - Advanced Media Protocol - Available on HyperDeck Studio Mini | |||||
| 0xAX | 0x15 ListNextID | when x = 0 single clip request when x = 1, # clips can be specified in the send data | |||
| 0x20 | 0x29 | ClearPlaylist | Acknowledge | ||
| 0x41 | 0x42 | SetPlaybackLoop | Acknowledge | Bit 0 loop mode enable, 0=false 1=true Bit 1 is single clip/timeline 0=single clip 1=timeline | |
| 0x4f | 0x16 | AppendPreset | Acknowledge | Disabled | |
RS-422 Developer Information
| bit 7 | bit 6 | bit 5 | bit 4 | bit 3 | bit 2 | bit 1 | bit 0 | |
| Byte 0 | 0 | 0 | Cassette out | 0 | 0 | 0 | 0 | Local |
| Byte 1 | Standby | 0 | Stop | 0 | Rewind | Forward | Record | Play |
| Byte 2 | Servo Lock | 0 | Shuttle | Jog | Var | Direction | Still | 1 |
| Byte 3 | Auto Mode | 0 | 0 | 0 | Aout Set | Ain Set | Out Set | In Set |
| Byte 4 | Select EE | Full EE | 0 | 0 | 0 | 0 | 0 | 0 |
| Byte 5 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 |
| Byte 6 | 0 | Lamp Still | Lamp Fwd | Lamp Rev | 0 | 0 | 0 | 0 |
| Byte 7 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 |
| Byte 8 | 0 | 0 | Near EOT | EOT | 0 | 0 | 0 | 0 |
| Byte 9 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 |
| Variables | |
| Cassette Out | Set if no SSD is present |
| Local | Set if Remote is disabled (local control) |
| Standby | Set if a disk is available |
| Direction | Clear if playback is forwarding, set if playback is reversing |
| Still | Set if playback is paused, or if in input preview mode |
| Auto Mode | Set if in Auto Mode |
| Select EE, Full EE | Set if in input preview mode |
| Lamp Still/Fwd/Rev | Set according to playback speed and direction |
| Near EOT | Set if total space left on available SSDs is less than 3 minutes |
| EOT | Set if total space left on available SSDs is less than 30 seconds |
| Others | |
| Cue Complete (byte 2, bit 0) | Always 1: Cue requests are always instantaneous |
| HyperDeck Serial RS-422 Protocol | ||
| Protocol | Based on Sony 9-pin protocol | |
| Interface | Baud rate 38.4 Kbps | |
| 1 start bit | ||
| 8 data bits | ||
| 1 stop bit | ||
| 1 parity bit | ||
| Odd parity | ||
Transferring Files over a Network
With Blackmagic HyperDeck Studio Mini, you can access files on your disk recorder over a network using file transfer protocol, or 'ftp'. This means that you don't have to remove SD cards from your HyperDeck Studio Mini to transfer files to and from the recorder.
Connecting to HyperDeck Studio Mini
With your computer and HyperDeck Studio Mini on the same network, all you'll need is an ftp client and your HyperDeck Studio Mini's IP address.
1 Download and install an FTP client on the computer you want to connect your HyperDeck to. We recommend Cyberduck, FileZilla or Transmit but most FTP applications will work. Cyberduck and FileZilla are free downloads.
2 Connect your HyperDeck Studio Mini to your network using an Ethernet cable and note its IP address. To access the IP address, press the 'menu' button and rotate the 'jog/shuttle' wheel to access the 'settings' screen. You'll see your HyperDeck Studio Mini's IP address at the bottom of this screen.

You can find your HyperDeck Studio Mini's IP address in the smart panel's 'settings' screen
3 Enter your HyperDeck Studio Mini's IP address into your TCP application's connection dialog. The naming and position of this box can vary between applications, but it is usually labeled 'server' or 'host.' If your FTP program includes an 'anonymous login' checkbox, make sure this is checked.

When connecting to HyperDeck Studio Mini, you don't need to enter a username or password. Simply enter your disk recorder's IP address in your FTP application's 'server' or 'host' field and check an 'anonymous login' checkbox if one is available.
Transferring Files
Once connected to HyperDeck Studio Mini you can transfer files as you normally would with your ftp program. Most ftp applications have a drag and drop interface, but check your particular application for the appropriate method.
You can transfer any file to and from your HyperDeck Studio Mini, but it's worth noting that any files you intend to play back from HyperDeck Studio Mini will need to conform to your HyperDeck's supported codecs and resolutions. You can find a list of supported codecs in the 'Blackmagic HyperDeck Setup' section of this manual.
TIP You can transfer files over a network while your HyperDeck Studio Mini is recording. HyperDeck Studio Mini will automatically adjust transfer speeds to make sure recording is not affected.
Connecting to an ATEM Switcher
If you're using an ATEM switcher, you can plug in up to 4 Blackmagic HyperDeck disk recorders and control them using the ATEM software control panel. This is a very powerful feature that effectively gives you an entire videotape department at your fingertips. You can also trigger recording on your HyperDeck from an ATEM switcher, which is a great way of making an archive copy of a live broadcast, or capturing B roll when live switching a production that will be fine tuned later.


ATEM switchers, such as the ATEM 2 M/E Broadcast Studio 4K, can connect with up to four HyperDeck disk recorders
To connect HyperDecks to an ATEM switcher:
1 Update your ATEM Switcher to software version 6.8 or higher. This process outlined in the ATEM Switcher manual and can even be done over Ethernet.
2 Update your HyperDeck's internal software to version 4.3 or later. Updating your HyperDeck software is explained earlier in this manual.
3 Connect your HyperDeck to the same network as your ATEM Switcher and note its IP address.
Your HyperDeck's IP address can be found via its front panel and LCD menu by entering the 'setup', then 'Ethernet' menus from the main menu.
Alternatively, you can access your HyperDeck's IP address on your Mac or PC via the 'configure' tab in BlackMagic HyperDeck Setup utility.
4 Connect one of your HyperDeck's SDI or HDMI outputs to an SDI or HDMI source input on your ATEM Switcher.
5 If you want to use your ATEM Switcher to trigger recording on your HyperDeck, you'll also need to connect a video source to your HyperDeck.
Simply connect an SDI or HDMI source to your HyperDeck as usual. To record your ATEM switcher's program output, connect one of your switcher's auxiliary SDI outputs to your HyperDeck's SDI input.
6 Enable remote by pressing the remote button on HyperDeck's front panel, or via the LCD menu on HyperDeck Studio Mini, to allow remote control from the switcher.
7 Complete the connection process by entering your HyperDeck's source and IP address information into your ATEM software or ATEM broadcast panel. This is very straightforward and laid out in your ATEM switcher manual.

Make sure your HyperDeck has remote set to 'on' in the LCD menu, or via the control panel remote button, to enable Ethernet control with an ATEM switcher
Understanding Post Production Workflows
Accessing Your Clips
To access your clips, simply plug the SD card or SSD into your computer via an SD card slot, external reader, or SSD dock. You can either drag the files from the SSD or SD card directly to a local hard drive, or you can work directly from the SSD or SD card. You can also connect SSDs to your computer with a 2.5" eSATA to USB cable adapter, however this won't be fast enough to handle working directly from the SSD and is really only recommended as a portable solution for getting your video files off the SSD and onto a laptop.

natural_image
Generic film strip icon with a stylized 'Q' symbol, no text or symbols present

Mac OS
QuickTime is built into Mac OS. Apple ProRes, Avid DNxHD and DNxHR, and uncompressed QuickTime movies recorded by HyperDeck can be opened in almost any video software on Mac OS.
DNxHD and DNxHR MXF files recorded by HyperDeck can be opened with Avid Media Composer and DaVinci Resolve for Mac. DNxHD codecs can be downloaded free from http://www.avid.com/products/avid-dnxhr-and-dnxhd
MCC closed caption data files recorded by HyperDeck can be opened with MacCaption software for Mac OS from http://www.cpcweb.com.
Windows
Apple ProRes and uncompressed QuickTime movies recorded by HyperDeck require QuickTime to be installed on your PC. Almost any video software on Windows that supports QuickTime can open movies recorded by HyperDeck. QuickTime for Windows can be downloaded free from http://www.apple.com/quicktime/download/.
DNxHD and DNxHR MXF files recorded by HyperDeck can be opened with Avid Media Composer and DaVinci Resolve for Windows. DNxHD codecs can be downloaded free from http://www.avid.com/products/avid-dnxhr-and-dnxhd
MCC closed caption data files recorded by HyperDeck can be opened with CaptionMaker software for Windows from http://www.cpcweb.com.
Using DaVinci Resolve
Recording clips with your HyperDeck Disk Recorder is only part of the process of creating film and television content, and just as important is the process of media backup and management as well as editing, color correction and encoding final master files. DaVinci Resolve for Mac OS and Windows can be downloaded free from the Blackmagic Design website so you can have a complete solution for recording and post production!

NOTE We recommend using the latest version of DaVinci Resolve for accurate treatment of clips recorded with your Blackmagic HyperDeck Disk Recorder. For example, version 14 or later will ensure accurate color.
After connecting your SSD or SD card to your computer, you can use DaVinci Resolve's 'clone' tool, in the 'media' page, to create running backups as you shoot. This is recommended as any type of media is susceptible to becoming damaged or developing a fault so creating backups ensures your clips will be immune to loss. Once you have used DaVinci Resolve to back up your media, you can then add your clips to the DaVinci media pool, then edit, color correct, and finish your production without ever having to leave DaVinci Resolve.
DaVinci Resolve is the same tool used on most major blockbuster movies, so it's much more than a simple NLE software tool, as it has extremely advanced technology built in for high end digital film. You get the advantage of this technology when you use DaVinci Resolve to edit and color correct your work.
Included here is information on how to get started using DaVinci Resolve with your recorded clips. Of course, DaVinci Resolve is extremely advanced and includes a lot more features than you immediately see when first looking at its user interface. To learn more about how to use DaVinci Resolve, please check for the DaVinci Resolve instruction manual pdf file on the DaVinci Resolve software disk, or check online for the many training courses and tutorial videos available.
Importing your Clips
To start editing your clips, you'll first need to import them into the media pool:
1 Launch DaVinci Resolve. If this is the first time you've opened DaVinci Resolve, wait for the Project Manager to appear, and double click the 'untitled project' icon in the project manager window.
If you have enabled the multi-user environment in previous versions of DaVinci Resolve, then the log in window will appear. To login as one of the listed users, double click the user icon. To add a new user, click 'add new' at the bottom left of the log in window and create a new user by entering a user name and clicking 'setup new user'.
Then double-click the user icon to proceed to the Project Manager. Now click 'new project', enter a title for your project and click 'create'. This will add your new project to the project manager. Double click on your project to open it.
2 You'll now see the 'media' page with a 'media storage' browser at the top left. The 'media storage' browser displays all your linked media folders from where you'll drag your clips and drop them into the media pool.
3 If your clip folder doesn't appear in the library, you'll need to add it. This is easily done by right clicking inside the 'media storage' browser area, selecting a drive or folder path and clicking 'open'.
4 In the 'media storage' browser, click on your newly added clip folder. Now simply drag your clips from your storage folder and drop them into the media pool. If the untitled project settings are different to your clip settings, you'll be prompted to either change the project settings to match your clips, or leave the settings as they are. To get started quickly, click 'change'. Now your project settings match your clips.

To import your clips, simply drag them from the 'media storage' browser and drop them into the media pool. You can also drag and drop files from your desktop
Editing your Clips
With your clips in the media pool, click on the 'edit' tab to open the edit page.
Now you can start building your edit!
1 You'll first need to create a new timeline. Right click anywhere within the media pool and choose Timelines > New Timeline. When the dialog box appears, click the 'create' button.

To start editing your clips, you'll need to create a new timeline. The timeline is the stage upon which all your editing will take place
2 Double click a clip in the media pool to open the clip in the source viewer. Use the mouse pointer to scrub the play head in the source viewer left and right until you find the start frame you want for the clip. Mark the in point with the 'I' shortcut. Do the same for the end frame using the 'O' shortcut.
3 Go to the timeline and position the timeline play head where you want your clip to be inserted.
4 To insert the clip onto the timeline, click inside the source viewer then drag the mouse pointer across to the timeline viewer. A list of edit options will appear. Select the type of edit you want.
Your clip will be placed onto the timeline using the edit type you selected. You'll find a description of each edit type and how to use them in the DaVinci Resolve manual.
A faster way to add clips to your edit is by dragging them from the media pool and dropping them directly onto the timeline where you can adjust your in and out points, position your clips, try different plug in effects, titles, and more. This particular workflow is like using the timeline as an artist's palette.

The 'edit' page. You can trim your clips, change their order, move them around and add transitions between them using the timeline editor
Trimming Clips
When editing clips you'll want to trim them to include only the specific actions you want in each shot. There are various ways, but the easiest is to adjust the clips' in and out points on the timeline:
1 After adding clips to your timeline, hover your mouse pointer over the start of a clip until the pointer becomes a 'trim' icon.
2 When the 'trim' icon appears, click on the start of your clip and drag it forwards or backwards to trim the in point. Watch the timeline monitor as you trim to find the edit point.
3 Now click and drag the end of your clip to adjust the out point.
The zoom slider is located above the timeline, to the right of the tools that are centered in the toolbar. By dragging the slider left and right you can zoom in and out of your timeline to make fine adjustments.

Trim your clips by dragging their start and end points left or right, and press the 'snapping' button in the toolbar to turn snapping on or off
Snapping is a helpful feature to keep your clips held tightly against each other, but can be disabled for greater precision when fine tuning edits. Press the 'N' key to quickly turn snapping on or off.
Mapping Keyboard Shortcuts
If you are familiar with keyboard shortcuts used in other editing software, you can setup DaVinci Resolve to use the same shortcuts. You also have the ability to create your own custom sets of keyboard shortcuts to increase speed and optimize your workflow.
To map your own keyboard shortcuts:
1 Open DaVinci Resolve> Preferences and select the 'user' panel at the top, then select 'keyboard mapping' from the settings list.
2 Select the shortcut you want to change from the categories provided, for example timeline cut and paste shortcuts will be in the 'edit' category.
3 Click on the shortcut once to highlight the setting. Double click on the shortcut to enable the change.
4 Press your new shortcut keys on the keyboard. If you make a mistake you can easily undo the change by clicking the 'undo' icon next to the setting.
5 Click 'save' to confirm your new shortcut setting.

Use the 'set to' drop down menu to choose one of the keyboard shortcuts you may already be familiar with from other editing software
Adding Transitions
A transition is a visual effect used to bridge one clip to another in a pleasing way, for example dissolves, wipes, dips to color, and more. These can add a layer of excitement to your edit. Transitions don't always have to be joining two clips, for example you can apply a dissolve transition to the end of one clip to create a quick and easy fade to black.

The transitions palette contains many types of transition effects
To add a dissolve transition between two clips:
1 Make sure there are two clips edited right next to one another on the timeline. Click the 'effects library' button in the UI toolbar at the top of the 'edit' page, and make sure the 'toolbox' panel is open.
2 Click on the 'cross dissolve' transition, drag it to your timeline and hover it over the edit point between two clips. You'll see the mouse pointer highlight both the end section of the first clip, and the start of the second. Drop the transition onto the clips. It's important both clips have enough length before and after their edit points to make room for the dissolve.
You now have a smooth transition mixing from one clip to the other. If you want to adjust the length of the transition you can lengthen or shorten its start and end point using a similar approach to trimming a clip. Hover your mouse pointer over the start or end of the transition until the transition 'trim' icon appears, then drag it left or right.
![01:02:56:19 01:02:58:20 01:02:51:06 01:02:51:16 01:02:52:02 Cross Display A01_2015-12-17_2022_C3001 [000000-005725] A01_2015-12-17_2022_C9001 [000000-005726] A01_2015-12-17_2022_C9001 [000000-005726]](/content/2026/05/883531/images/62b58e908743c154888d11754bf52a0dcc4d109296168836e9a879a2527fa160.jpg)
Simply drag and drop transitions between adjoining clips
Adding Titles
You can place a title on any video track just as you would a clip. If you run out of tracks you can easily add new ones by right clicking next to an existing track name and selecting 'add track'.
To create a title:
1 Scroll down towards the middle of the toolbox in the 'effects library' located underneath the media pool and you'll see the 'titles' generators. Use the scroll bar to reveal more 'titles' options.
2 Drag and drop a text title on the empty video track above the clip you want the title to appear. You can even drop your title next to a clip on Video 1 if you just want it to appear over black. To see the title, make sure the timeline playhead is on the title.
3 Double click on the title clip. The 'inspector' will appear showing you the settings for your title. Type your title into the 'text' field.
You can choose from a variety of fonts and adjust the appearance of your title by changing settings such as color, size, alignment, position, and more. Transitions can be added to titles, just like they can for clips.

Drag a title type from the 'titles' palette and drop it on an empty track
Color Correcting your Clips
Once you have edited your sequence of clips, you can start color correcting. This is best begun after you have finished editing your sequence so you can maintain a consistent look, but part of the fun of DaVinci Resolve is being able to move between the edit and color page to make fine adjustments and discover new creative choices.

With the 'color' page you get absolute control over the look of your clips
First, click on the 'color' tab to open the 'color' page.
You'll see the color wheels, curves palettes and general color correction tools as well as the preview and nodes window. Don't feel overwhelmed by the vast array of features in front of you, they are all there to help you get the most amazing looking pictures. The DaVinci Resolve manual will show you exactly what the tools are for and how to use them in easy to follow steps. You'll learn the same techniques the professionals use in high end color correction facilities.
Generally, the first thing you'll want do is optimize the shadows, mid tones and highlights in your clips. In other words adjust the 'lift', 'gamma' and 'gain' settings. This will help get your pictures looking their brightest and best with a clean, uniform starting point from where you can begin grading the 'look' of your film.
Using Scopes
Most colorists make creative color choices by focusing on the emotion and the look they want their program to have and then simply work using the monitor to achieve that look. You can look at everyday objects and how different types of light interact with them to generate ideas on what you can do with your images and a little practice.

line
| Time | Red Line | Green Line | Blue Line | |------|----------|------------|-----------| | 0 | 364 | 256 | 0 | | 1 | 896 | 512 | 0 | | 2 | 768 | 640 | 0 | | 3 | 512 | 640 | 0 | | 4 | 364 | 640 | 0 | | 5 | 256 | 640 | 0 | | 6 | 128 | 640 | 0 | | 7 | 0 | 640 | 0 | | 8 | 0 | 640 | 0 | | 9 | 0 | 640 | 0 | | 10 | 0 | 640 | 0 | | 11 | 0 | 640 | 0 | | 12 | 0 | 640 | 0 | | 13 | 0 | 640 | 0 | | 14 | 0 | 640 | 0 | | 15 | 0 | 640 | 0 | | 16 | 0 | 640 | 0 | | 17 | 0 | 640 | 0 | | 18 | 0 | 640 | 0 | | 19 | 0 | 640 | 0 | | 20 | 0 | 640 | 0 | | 21 | 0 | 640 | 0 | | 22 | 0 | 640 | 0 | | 23 | 0 | 640 | 0 | | 24 | 0 | 640 | 0 | | 25 | 0 | 640 | 0 | | 26 | 0 | 640 | 0 | | 27 | 0 | 640 | 0 | | 28 | 0 | 640 | 0 | | 29 | 0 | 640 | 0 | | 30 | 0 | 640 | 0 | | 31 | 0 | 640 | 0 | | 32 | 0 | 640 | 0 | | 33 | 0 | 640 | 0 | | 34 | 0 | 640 | 0 | | 35 | 0 | 640 | 0 | | 36 | 0 | 640 | 0 | | 37 | 0 | 640 | 0 | | 38 | 0 | 640 | 0 | | 39 | 0 | 640 | 0 | | 40 | 0 | 640 | 0 | | 41 | 0 | 640 | 0 | | 42 | 0 | 640 | 0 | | 43 | 0 | 640 | 0 | | 44 | 0 | 640 | 0 | | 45 | 0 | 640 | 0 | | 46 | 0 | 640 | 0 | | 47 | 0 | 640 | 0 | | 48 | 0 | 640 | 0 | | 49 | 0 | 640 | 0 | | 50 | 0 | 640 | 0 | | ... (approx) - Series: Scopes - Parade - X-axis: Time Point; Y-axis: Value; Legend: Red, Green, Blue lines represent different series. Values are estimated based on the provided code.The parade scope helps you optimize highlights, mid tones and shadows

The 'lift, 'gamma', 'gain' and 'offset' color wheels give you total control over the color and tonal balance of your clips. To make a uniform adjustment to all colors for each tonal region, drag the dial underneath the color wheels back and forth.
Another way to color grade is to use the built in scopes to help you balance shots. You can open a single video scope by clicking the 'scope' button, which is the second from the right on the palette toolbar. You can choose to display a waveform, parade, vectorscope and histogram. Using these scopes you can monitor your tonal balance, check the levels of your video to avoid crushing your blacks and clipping the highlights, plus monitor any color cast in your clips.
The ‘color wheels’ palette contains the ‘lift’, ‘gamma’ and ‘gain’ controls which will generally constitute your first adjustment. These should resemble controls you’ve seen in other applications for doing color and contrast adjustments. For more accurate control of each color using a mouse, you can change the color wheels to ‘primaries bars’ which let you adjust each color and luminance channel for the lift, gamma and gain controls separately. Simply select ‘primaries bars’ from the drop down menu near the top right of the color wheels.
1 Adjusting the 'lift'
With your first clip selected on the color timeline, click on the 'lift' dial underneath the first color wheel. Slide it back and forth and watch how it affects your image. You'll see the brightness of the dark regions of your picture increase and decrease.
Set it to where you want the dark areas to look their best. If you decrease the lift too much, you'll lose details in the blacks and you can use the parade scope to help avoid this. The optimal position for blacks on the waveform is just above the bottom line of the parade scope.
2 Adjusting the 'gain'
Click on the 'gain' dial and slide it back and forth. This adjusts the highlights which are the brightest areas of your clip. The highlights are shown on the top section of the waveform on the parade scope. For a brightly lit shot, these are best positioned just below the top line of the waveform scope. If the highlights rise above the top line of the waveform scope, they will clip and you will lose details in the brightest regions of your image.
3 Adjusting the 'gamma'
Click on the 'gamma' dial underneath the color wheel and slide it back and forth. As you increase the gamma you'll see the brightness of the image increase. Notice the middle section of the waveform will also move as you adjust the gamma. This represents the mid tones of your clip. The optimal position for mid tones generally falls between 50 to 70% on the waveform scope. However, this can be subjective based on the look you are creating and the lighting conditions in the clip.
You can also use the curves palette to make primary color corrections. Simply click to create control points on the diagonal line inside the curve graph, and drag them up or down to adjust the master RGB contrast at different areas of image tonality. The optimum points to adjust are the bottom third, mid, and top third of the curve line.
There are many more ways of doing primary color correction in DaVinci Resolve. Check the DaVinci Resolve manual to learn how to use them all.

The curves palette is another tool you can use to make primary color corrections, or enhance specific areas of your clip when using a power window
Secondary Color Correction
If you want to adjust a specific part of your image then you need to use secondary corrections. The adjustments you have been doing up until now using the color wheels and lift, gamma and gain adjustments affect the whole image at the same time and so they are called primary color corrections.
However if you need to adjust specific parts of your image, say for example you wanted to improve the color in the grass in a scene, or you wanted to deepen the blue in a sky, then you can use secondary corrections. Secondary color corrections are where you select a part of the image and then adjust just that part. With nodes, you can stack multiple secondary corrections so you can keep working parts of your image until everything is just right! You can even use windows and tracking to allow the selections to follow movement in your images.
Qualifying a Color
Often you'll find a specific color in your clip can be enhanced, for example grass by the side of a road, or the blue in a sky, or you may need to adjust color on a specific object to focus the audience's attention on it. You can easily do this by using the HSL qualifier tool.

natural_image
Silhouette of a human head against a blue sky background (no text or symbols)Using the HSL qualifier to select colors in your image is helpful when you want to make areas of your image 'pop', to add contrast, or to help draw the audience's attention to certain areas of your shot
To qualify a color:
1 Add a new serial node.
2 Open the 'qualifier' palette and make sure the 'color range' sample eyedropper tool is selected.
3 Click on the color in your clip you want to affect.
4 Usually you'll need to make some adjustments to soften the edges of your selection and limit the region to only the desired color. Click on the 'highlight' button to see your selection.
5 Adjust the 'width' control in the 'hue' window to broaden or narrow your selection.
Experiment with the high, low and softness controls to see how to refine your selection.
Now you can make corrections to your selected color using the color wheels or custom curves.
Sometimes your selection can spill into areas of the shot you don't want to affect. You can easily mask out the unwanted areas using a power window. Simply create a new window and shape it to select only the area of color you want. If your selected color moves in the shot, you can use the tracking feature to track your power window.
Adding a Power Window
Power windows are an extremely effective secondary color correction tool that can be used to isolate specific regions of your clips. These regions don't have to be static, but can be tracked to move with a camera pan, tilt or rotation, plus the movement of the region itself.

natural_image
Person sitting by a coastal cliff at sunset, overlooking the sea with hills in the background (no text or symbols visible)Use power windows to mask out areas you don't want to be affected by the HSL qualifier secondary adjustments
For example, you can track a window on a person in order to make color and contrast changes just to that person without affecting his or her surroundings. By making corrections like this you can influence the audience's attention on areas you want them to look at.
To add a power window to your clip:
1 Add a new serial node.
2 Open the 'window' palette and select a window shape by clicking on a shape icon. Your selected window shape will appear on the node.
3 Resize the shape by clicking and dragging the blue points around the shape. The pink points adjust the edge softness. You can position the shape by clicking the center point and moving it to the area you want to isolate. Rotate the window using the point connected to the center.
Now you can make color corrections to your image in just the area you want.

natural_image
Side view of a car with driver's seat and dashboard, captured in a garage (no visible text or symbols)Power windows let you make secondary corrections to specific parts of your image
Tracking a Window
The camera, object or area in your shot may be moving, so to make sure your window stays on your selected object or area, you'll need to use DaVinci Resolve's powerful tracking feature. The tracker analyzes the pan, tilt, zoom and rotation of the camera or object in your clip so you can match your windows to that movement. If this isn't done, your correction can move off the selected target and call attention to itself, which you probably don't want.

natural_image
Interior view of a modern living room with large windows, a man standing near a metal hoop, and no visible text or symbols.You can track objects or areas in your clip using the tracker feature so power windows can follow the action
To track a window to a moving object:
1 Create a new serial node and add a power window.
2 Go to the start of your clip and position and size the window to highlight just the object or area you want.
3 Open the 'tracker' palette. Select the pan, tilt, zoom, rotate, and perspective 3D settings appropriate for the movement in your clip by checking or unchecking the relevant 'analyse' checkboxes.
4 Click on the 'forward' arrow to the left of the checkboxes. DaVinci Resolve will now apply a cluster of tracking points on your clip and then step through the frames to analyze the movement. When the tracking is done, your power window will follow the path of the movement in your clip.
Most of the time automatic tracking is successful, but scenes can be complex and sometimes an object can pass in front of your selected area, interrupting or affecting your track. This can be solved manually using the keyframe editor. Refer to the DaVinci Resolve manual to find out more.
Using Plugins
While making secondary color corrections you can also add OpenFX plugins to create fast, interesting looks and effects using the 'color' page, or imaginative transitions and effects on your clips on the 'edit' page. OFX plugins can be purchased and downloaded from third party suppliers.
After installing a set of plugins, you can access them on the color page by opening the OpenFX inspector to the right of the 'node editor' Simply click the 'OpenFX' button to open the OpenFX inspector, create a new serial node and drag and drop a plugin onto the new node. If the plugin has editable settings, you can adjust these in the adjoining 'settings' panel.
In the 'edit' page you can add plugin generators and transitions to clips by opening the 'OpenFX' panel in the 'effects library' and dragging your selected plugin onto the video track above your clip on the timeline.

OFX plugins are a quick and easy way to create an imaginative and interesting look
Mixing Your Audio
Mixing Audio in the Edit Page
Once you have edited and color corrected your project, you can begin to mix your audio. DaVinci Resolve has a helpful set of features for editing, mixing and mastering audio for your project directly in the 'edit' page. For projects requiring more advanced audio tools, the Fairlight page provides you with a full audio post production environment, and if you are already familiar with the edit page and want to move straight to Fairlight, skip this section and move onto the next.
Adding Audio Tracks
If you are working in the edit page and want to mix a basic sound edit with lots of sound effects and music, you can easily add more audio tracks when you need them. This can be helpful when building your sound, and separating your audio elements into individual tracks, for example, dialogue, sound effects and music.
To Add an Audio Track to the Edit Page:
1 Right click next to the name of any audio track on your timeline and select 'add track'. This will add a track to the bottom of the track list. Alternatively select 'add tracks' and select the location you would like the new track placed.
2 Select the type of audio track you want, such as stereo, mono, 5.1 or adaptive.
Your new audio track will appear on the timeline.
Adjusting Audio Levels in the Timeline
Each clip of audio in the timeline has a volume overlay that lets you set that clip's level by simply dragging it up or down with the pointer. This overlay corresponds to the Volume parameter in the Inspector.

area
| Volume (dB) | |-------------| | 4.69 |Dragging a volume overlay to adjust the clip level
For projects requiring more advanced audio tools, the Fairlight page provides you with a full audio post production environment.
The Fairlight Page
The 'Fairlight' page in DaVinci Resolve is where you adjust your project audio. In single monitor mode, this page gives you an optimized look at the audio tracks of your project, with an expanded mixer and custom monitoring controls that make it easy to evaluate and adjust levels in order to create a smooth and harmonious mix. Don't feel overwhelmed by the vast array of features in front of you, they are all there to help you deliver the best audio quality for your project.

This guide provides a basic overview of the features on the Fairlight page, but to learn more about all the details for each feature, refer to the DaVinci Resolve manual. The DaVinci Resolve manual provides details on the purpose of each tool and describes how to use them in easy to follow steps.
The Audio Timeline
Track Header
At the left of each track is a header area that displays the track number, track name, track color, audio channels, fader value and audio meters. The track header also contains different controls for locking and unlocking tracks, plus solo and muting controls. These controls can help to keep your tracks organized, and let you preview individual tracks one at a time.
Tracks
Each track on the Fairlight page is divided into lanes, which show each individual channel of clip audio for editing and mixing. The edit page hides these individual audio channels, displaying only a single clip in the timeline to make it easier to edit multi channel sources without needing to manage a huge number of tracks.

The track header on track A1 indicates a mono track with a single lane for mono audio, whilst track A2 indicates a stereo track with two lanes to accommodate stereo audio
What is a Bus?
A bus is essentially a destination channel to which you can route multiple audio tracks from the timeline, so that they are mixed together into a single signal that can be controlled via a single channel strip.
Main Bus
'Main busses' are typically the primary output of a program and each new project you create starts out with a single 'main bus', to which all tracks are routed by default. The 'main bus' combines all of the tracks in the timeline into one signal so that you can adjust the overall level of the audio mix once you have adjusted the level of each individual track.
Sub Bus
'Sub busses' allow you to combine multiple tracks of audio that belong to the same category such as dialogue, music or effects so that everything in that category can be mixed as a single audio signal. For example, if you have five dialogue tracks, you can route the output of all five dialogue tracks to a 'submix bus', and the level of all dialogue can then be mixed with a single set of controls. This submix can be rendered separately or sent to the main bus for render.
The Mixer
Each audio track in your timeline corresponds to an individual channel strip in the Mixer, and by default there's a single strip on the right for the 'main bus' labeled 'M1'. Additional channel strips will appear on the right hand side with a set of controls for each additional 'main' and 'submix bus' you create. A set of graphical controls allows you to assign track channels to output channels, adjust EQ and dynamics, set levels and record automation, pan stereo and surround audio, and mute and solo tracks.

The audio mixer, with channel strips corresponding to the tracks in the timeline
Using the Equalizer to Enhance your Audio
After adjusting the audio levels of your audio clips in your project, you may find that the audio needs further finessing. In some cases you may find that the dialogue, music and sound effects are competing for the same frequency on the audio spectrum, making your audio too busy and unclear. This is where using EQ can help, as it allows you to specify the parts of the audio spectrum that each track occupies. You can also use an equalizer to help remove unwanted elements from your audio by isolating and reducing the level on particular frequencies that contain low rumbles, hums, wind noise and hiss, or simply to improve the overall quality of your sound so it is more pleasing to listen to.
DaVinci Resolve provides EQ filters that can be applied at a clip level to each individual clip or at the track level to affect entire tracks. Each audio clip in the timeline has a four band equalizer in the inspector panel, and each track has a 6 band parametric equalizer in the mixer panel. The graphical and numeric controls for boosting or attenuating different ranges of frequencies, and different filter types allow you to define the shape of the EQ curve.

The four band equalizer can be applied to every clip in the timeline
Outer bands let you make band filter adjustments using hi-shelf, lo-shelf, hi-pass and lo-pass filters. A pass filter affects all the frequencies above or below a particular frequency, by removing those frequencies completely from the signal. For example, a high pass filter will allow the high frequencies to pass through the filter whilst cutting the low frequencies.
Any frequencies outside the cutoff frequency are cut gradually in a downward sloping curve.
A shelf filter is less aggressive, and is useful when you want to shape the overall top end or low end of the signal without completely removing those frequencies. The shelf filter boosts or cuts the target frequency and every frequency either above or below it evenly, depending on whether you use a high shelf or low shelf.
The middle sets of band controls let you make a wide variety of equalization adjustments, and can be switched between lo-shelf, bell, notch, and hi-shelf filtering options.
Bell
Bell filters boost or cut frequencies around a given center point of the bell curve, and as the name suggests the shape of the curve is like a bell.
Notch
Notch filters allow you to specifically target a very narrow range of frequencies. For example, removing a mains hum at 50 or 60Hz.
Lo-Shelf
Low shelf filters boost or cut the target frequency at the low end, and every frequency below it
Hi-Shelf
High shelf filters boost or cut the target frequency at the high end, and every frequency above it
To add EQ to an individual clip:
1 Select the clip in the timeline that you want to add the EQ filter to.
2 Click on the inspector and then click the 'clip equalizer' enable button.
To add EQ to a track:
1 Double-click in the EQ section for one of your tracks in the mixer to open the equalizer for that track.
2 Select the band filter type from the drop down menu for the band you want to adjust.

The EQ section in the mixer panel indicating an EQ curve has been applied to track one

line
| Metric | Value | | ------------ | ----- | | Gain | 0 | | Gain | -2.5 | | Gain | +7.5 | | Gain | 0 | | Frequency | 144 | | Frequency | 246 | | Frequency | -0.3 | | Frequency | -0.7 | | Frequency | +0.7 | | Frequency | +0.7 | | Frequency | -0.7 | | Frequency | -0.7 | | Frequency | -0.7 | | Frequency | -0.7 | | Frequency | -0.7 | | Frequency | -0.7 | | Frequency | -0.7 | | Frequency | -0.7 | | Frequency | -0.7 | | Frequency | -0.7 | | Frequency | 0 | | Frequency | 0 | | Frequency | 0 | | Frequency | 0 | | Frequency | 0 | | Frequency | 0 | | Frequency | 0 | | Frequency | 0 | | Frequency | 0 | | Frequency | 0 | | Frequency | 0 | | Frequency | 0 | | Frequency | 0 | | Frequency | -0.3 | | Frequency | -0.7 | | Frequency | -0.7 | | Frequency | -0.7 | | Frequency | -0.7 | | Frequency | -0.7 | | Frequency | -0.7 | | Frequency | -0.7 | | Frequency | -0.7 | | Frequency | -0.7 | | Frequency | -0.7 | | Frequency | -0.3 | | Frequency | -0.7 | | Frequency | -0.7 | | Frequency | -0.7 | | Frequency | -0.7 | | Frequency | -0.7 | | Frequency | -0.7 | | Frequency | -0.7 | | Frequency | -0.7 | | Frequency | -0.7, -0.7| | Frequency | -0.7, -0.7| | Frequency | -0.7, -0.7| | Frequency | -0.7, -0.7| | Frequency | -0.7, -0.7| | Frequency | -0.7, -0.7| | Frequency | -0.7, -0.7| | Frequency | -0.7, -0.7| | Gain | 47 | | Gain | 143 | | Gain | 892 | | Gain | 2x44 | | Gain | Gain | | Gain | Gain | | Gain | Gain | | Gain | Gain | | Gain | Gain | | Gain | Gain | | Gain | Gain | | Gain | Gain | | Gain | Gain | | Gain | Gain | | Gain | Gain | | Gain | Gain | | Gain | Gain | | Gain | Gain | | Gain | Gain | | | Gain | Gain | | | Gain | Gain | | | Gain | Gain | | | Gain | Gain | | | Gain | Gain | | | Gain | Gain | | | Gain | Gain | | | Gain | Gain | | | Gain | Gain | | | Gain | Gain | | | Gain | Gain | | | Gain | Gain | | | Gain / Gain | -21 | | Gain / Gain | -21 | | Gain / Gain | -21 | | Gain / Gain | -21 | | Gain / Gain | -21 | | Gain / Gain | -21 | | Gain / Gain | -21 | | Gain / Gain | -21 | | Gain / Gain | -21 | | Gain /\ gain | -21 | | Gain /\ gain | -21 | | Gain /\ gain | -21 | | Gain /\ gain | -21 | | Gain /\ gain | -21 | | Gain /\ gain | -21 | | Gain /\ gain | -21 | | Gain /\ gain | -21 | | Gain /\ gain | -19 | | Gain /\ gain | -19 | | Gain /\ gain | -19 | | Gain /\ gain | -19 | | Gain /\ gain | -19 | | Gain /\ gain | -19 | | Gain /\ gain | -19 | | Gain /\ gain | -19 | | Gain /\ gain | -19 | | | Gain /\ gain | -19 | | | Gain /\ gain | -19 | | | Gain /\ gain | -19 | | | Gain /\ gain | -19 | | | Gain /\ gain | -19 | | | Gain /\ gain | -19 | | | Gain /\ gain | -19 | | | Gain /\ gain | -21 | | | Gain /\ gain | -21 | | | Gain /\ gain | -21 | | | Gain /\ gain | -21 | | | Gain /\ gain | -21 | | | Gain /\ gain | -21 | | | Gain /\ gain | -21 | | | Gain /\ gain | -21 | | | Gain /\ gainThe 6 Band parametric equalizer that can be applied to every track
Once you have added EQ to your clip or track, you can adjust the EQ for each band. Note that controls may vary depending on which band filter type is selected.
To adjust the EQ for a band filter:
1 Select the band filter type from the drop down menu for the band you want to adjust.
2 Adjust the 'frequency' value to select the center frequency of the EQ adjustment.
3 Adjust the 'gain' value to boost or attenuate the frequencies governed by that band.
4 Use the 'Q factor' value to adjust the width of affected frequencies.
Use the reset button to reset all controls in the EQ window to their defaults.
Fairlight has many controls you can use to improve the quality of each audio track. You can add more tracks and arrange buses to organize them, plus add effects like delay or reverb, and generally perfect your audio mix.
Mastering your Edit
So now you've edited, graded your clips and mixed your audio, you'll want to export a render of your edit in the 'deliver' page. This page lets you select the range of clips you want to export, plus the format, codec and resolution you want. You can export in many types of formats such as QuickTime, AVI, MXF and DPX using codecs such as 8-bit or 10-bit uncompressed RGB/YUV, ProRes, DNxHD, H.264 and more.

The 'deliver' page is where you export your edit. You can select from many different video formats and codecs
To export a single clip of your edit:
1 Click on the 'deliver' tab to open the deliver page.
2 Go to the 'render settings' window on the top left of the page. In the 'format' settings, select 'single clip'. You can now choose from a number of export presets, for example YouTube, Vimeo and audio presets, or you can set your own export settings manually by leaving it set to the default 'custom' preset and entering your own parameters.
For this example, select YouTube, then click on the arrow next to the preset and select the 1080p video format.
The frame rate will be locked to your project frame rate setting.
3 Underneath the presets you will see the timeline filename and the target location for your exported video. Click the 'browse' button and choose the location where you want to save your exported file.
4 Immediately above the timeline, you'll see an options box with 'entire timeline' selected. This will export the entire timeline, however you can select a range of the timeline if you want to. Simply choose 'in/out range' and then use the 'i' and 'o' hot key shortcuts to choose the in and out points in your timeline.
5 Go to the bottom of the 'render settings' and click on the 'add to render queue' button.
Your render settings will be added to the render queue on the right side of the page. Now all you have to do is click 'start render' and monitor the progress of your render in the render queue.
When your render is complete you can open the folder location, double click on your new rendered clip and watch your finished edit.
Developer Information
Blackmagic HyperDeck Ethernet Protocol
Version 1.8
The Blackmagic HyperDeck Ethernet Protocol is a text based protocol accessed by connecting to TCP port 9993 on HyperDeck Studio models that have a built in Ethernet connection. If you are a software developer you can use the protocol to construct devices that integrate with our products. Here at Blackmagic Design our approach is to open up our protocols and we eagerly look forward to seeing what you come up with!
Protocol Commands
| Command Command Description | |
| help or ? Provides help text on all commands and parameters | |
| commands return commands in XML format | |
| device info return device information | |
| disk list query clip list on active disk | |
| disk list: slot id: {n} query clip list on disk in slot {n} | |
| quit disconnect ethernet control | |
| ping check device is responding | |
| preview: enable: {true/false} switch to preview or output | |
| play play from current timecode | |
| play: speed: (-1600 to 1600) play at specific speed | |
| play: loop: {true/false} play in loops or stop-at-end | |
| play: single clip: {true/false} play current clip or all clips | |
| playrange set: clip id: {n} | set play range to play clip {n} only |
| playrange set: in: {inT} out: {outT} | set play range to play between:- timecode {inT} and timecode {outT} |
| playrange clear | clear/reset play range setting |
| play on startup | query unit play on startup state |
| play on startup: enable: {true/false} | enable or disable play on startup |
| play on startup: single clip: {true/false} | play single clip or all clips on startup |
| record | record from current input |
| record: name: {name} | record named clip |
| stop stop playback or recording | |
| clips count | query number of clips on timeline |
| clips get | query all timeline clips |
| clips get: clip id: {n} | query a timeline clip info |
| clips get: clip id: {n} count: {m} | query m clips starting from n |
| clips add: name: {name} | append a clip to timeline |
| clips clear empty timeline clip list | |
| transport info query current activity | |
| slot info query active slot | |
| slot info: slot id: {n} query slot {n} | |
| slot select: slot id: {1/2} switch to specified slot | |
| slot select: video format: {format} load clips of specified format | |
| notify query notification status | |
| notify: remote: {true/false} set remote notifications | |
| notify: transport: {true/false} set transport notifications | |
| notify: slot: {true/false} set slot notifications | |
| notify: configuration: {true/false} set configuration notifications | |
| notify: dropped frames: {true/false} set dropped frames notifications | |
| goto: clip id: {n} goto clip id {n} | |
| goto: clip id: +{n} | go forward {n} clips |
| goto: clip id: {-n} | go backward {n} clips |
| goto: clip: {start/end} | goto start or end of clip |
| goto: timeline: {start/end} | goto start or end of timeline |
| goto: timecode: {timecode} | goto specified timecode |
| goto: timecode: +{timecode} | go forward {timecode} duration |
| goto: timecode: {-timecode} | go backward {timecode} duration |
| goto: slot id: {n} | goto slot id {n} |
| jog: timecode: {timecode} | jog to timecode |
| jog: timecode: +{timecode} | jog forward {timecode} duration |
| jog: timecode: {-timecode} | jog backward {timecode} duration |
| shuttle: speed: {-1600 to 1600} | shuttle with speed |
| remote | query unit remote control state |
| remote: enable: {true/false} | enable or disable remote control |
| remote: override: {true/false} | session override remote control |
| configuration | query configuration settings |
| configuration: video input: SDI | switch to SDI input |
| configuration: video input: HDMI | switch to HDMI input |
| configuration: video input: component | switch to component input |
| configuration: audio input: embedded | capture embedded audio |
| configuration: audio input: XLR | capture XLR audio |
| configuration: audio input: RCA | capture RCA audio |
| configuration: file format: {format} | switch to specific file format |
Command Command Description
uptime return time since last boot
format: prepare: {format} prepare a disk formatting operation to filesystem {format}
format: confirm: {token} perform a pre-prepared formatting operation using token
identify: enable: {true/false} identify the device
watchdog: period: {period in seconds} client connection timeout
Command Combinations
You can combine the parameters into a single command, for example:
play: speed: 200 loop: true single clip: true
Or for configuration:
configuration: video input: SDI audio input: XLR
Or to switch to the second disk, but only play NTSC clips:
slot select: slot id: 2 video format: NTSC
Using XML
While you can use the Terminal to talk to HyperDeck, if you are writing software you can use XML to confirm the existence of a specific command based on the firmware of the HyperDeck you are communicating with. This helps your software user interface adjust to the capabilities of the specific HyperDeck model and software version.
Protocol Details
Connection
The HyperDeck Ethernet server listens on TCP port 9993.
Basic syntax
The HyperDeck protocol is a line oriented text protocol. Lines from the server will be separated by an ascii CR LF sequence. Messages from the client may be separated by LF or CR LF.
New lines are represented in this document as a "←" symbol.
Command syntax
Command parameters are usually optional. A command with no parameters is terminated with a new line:
{Command name}
If parameters are specified, the command name is followed by a colon, then pairs of parameter names and values. Each parameter name is terminated with a colon character:
{Command name}: {Parameter}: {Value} {Parameter}: {Value} ...
Response syntax
Simple responses from the server consist of a three digit response code and descriptive text terminated by a new line:
{Response code} {Response text}
If a response carries parameters, the response text is terminated with a colon, and parameter name and value pairs follow on subsequent lines until a blank line is returned:
{Response code} {Response text}:
{Parameter}: {Value}
{Parameter}: {Value}
...
←
Successful response codes
A simple acknowledgement of a command is indicated with a response code of 200:
200 ok←
Other successful responses carry parameters and are indicated with response codes in the range of 201 to 299.
Failure response codes
Failure responses to commands are indicated with response codes in the range of 100 to 199:
100 syntax error
101 unsupported parameter
102 invalid value
103 unsupported
104 disk full
105 no disk
106 disk error
107 timeline empty
108 internal error
109 out of range
110 no input
111 remote control disabled
120 connection rejected
150 invalid state
151 invalid codec
160 invalid format
161 invalid token
162 format not prepared
Asynchronous response codes
The server may return asynchronous messages at any time. These responses are indicated with response codes in the range of 500 to 599:
5xx {Response Text}:
{Parameter}: {Value}
{Parameter}: {Value}
Connection response
On connection, an asynchronous message will be delivered:
500 connection info:←
protocol version: {Version}←
model: {Model Name}←
Connection rejection
Only one client may connect to the server at a time. If other clients attempt to connect concurrently, they will receive an error and be disconnected:
120 connection rejected
Timecode syntax
Timecodes are expressed as non-drop-frame timecode in the format:
H
H:M
M:SS:FF
Handling of deck "remote" state
The “remote” command may be used to enable or disable the remote control of the deck. Any attempt to change the deck state over ethernet while remote access is disabled will generate an error:
111 remote control disabled←
To enable or disable remote control:
remote: enable: { "true", "false"} ←
The current remote control state may be overridden allowing remote access over ethernet irrespective of the current remote control state:
remote: override: { "true", "false"}
The override state is only valid for the currently connected ethernet client and only while the connection remains open.
The “remote” command may be used to query the remote control state of the deck by specifying no parameters:
remote
The deck will return the current remote control state:
210 remote info:←
enabled: {"true", "false"}←
override: {"true", "false"}←
Asynchronous remote control information change notification is disabled by default and may be configured with the "notify" command. When enabled, changes in remote state will generate a "510 remote info:" asynchronous message with the same parameters as the "210 remote info:" message.
Closing connection
The "quit" command instructs the server to cleanly shut down the connection:
q uit
Checking connection status
The "ping" command has no function other than to determine if the server is responding:
ping←
Getting help
The "help" or "?" commands return human readable help text describing all available commands and parameters:
help
Or:
?←
The server will respond with a list of all supported commands:
201 help:←
{Help Text}←
{Help Text}←
Switching to preview mode
The "preview" command instructs the deck to switch between preview mode and output mode:
preview: enable: {"true", "false"}
Playback will be stopped when the deck is switched to preview mode. Capturing will be stopped when the deck is switched to output mode.
Controlling device playback
The "play" command instructs the deck to start playing:
play←
The play command accepts a number of parameters which may be used together in most combinations.
By default, the deck will play all remaining clips on the timeline then stop.
The "single clip" parameter may be used to override this behaviour:
play: single clip: { "true", "false"}
By default, the deck will play at normal (100%) speed. An alternate speed may be specified in percentage between -1600 and 1600:
play: speed: {% normal speed}
By default, the deck will stop playing when it reaches to the end of the timeline. The "loop" parameter may be used to override this behaviour:
play: loop: { "true", "false"}←
The "playrange" command instructs the deck to play all the clips. To override this behaviour and select a particular clip:
playrange set: clip id: {Clip ID}
To only play a certain timecode range:
playrange set: in: {in timecode} out: {out timecode}
To clear a set playrange and return to the default value:
playrange clear
The "play on startup command" instructs the deck on what action to take on startup. By default, the deck will not play. Use the "enable" command to start playback after each power up.
play on startup: enable {"true", "false"}
By default, the unit will play back all clips on startup. Use the "single clip" command to override.
play on startup: single clip: {"true", "false"}
Stopping deck operation
The "stop" command instructs the deck to stop the current playback or capture:
stop
Changing timeline position
The "goto" command instructs the deck to switch to playback mode and change its position within the timeline.
To go to the start of a specific clip:
goto: clip id: {Clip ID}
To move forward/back {count} clips from the current clip on the current timeline:
goto: clip id: +/- {count}
Note that if the resultant clip id goes beyond the first or last clip on timeline, it will be clamp at the first or last clip.
To go to the start or end of the current clip:
goto: clip: {"start", "end"}
To go to the start of the first clip or the end of the last clip:
goto: timeline: { "start", "end"}
To go to a specified timecode:
goto: timecode: {timecode}
To move forward or back a specified duration in timecode:
goto: timecode: {"+"", "-"}{duration in timecode}
To specify between slot 1 and slot 2:
goto: slot id: {Slot ID}
Note that only one parameter/value pair is allowed for each goto command.
Enumerating supported commands and parameters
The "commands" command returns the supported commands:
commands
The command list is returned in a computer readable XML format:
212 comm and s:
<commands>
<command name="..."><parameter name="..."/>...</command>
<command name="..."><parameter name="..."/>...</command>
...
</c o m m a n ds>
More XML tokens and parameters may be added in later releases.
Controlling asynchronous notifications
The "notify" command may be used to enable or disable asynchronous notifications from the server.
To enable or disable transport notifications:
notify: transport: {"true", "false"}
To enable or disable slot notifications:
notify: slot: {"true", "false"}
To enable or disable remote notifications:
notify: remote: {"true", "false"}
To enable or disable configuration notifications:
notify: configuration: {"true", "false"}
Multiple parameters may be specified. If no parameters are specified, the server returns the current state of all notifications:
209 notify:
transport: { "true", "false" }←
slot: { "true", "false" }←
remote: { "true", "false" }←
configuration: { "true", "false" }←
Retrieving device information
The "device info" command returns information about the connected deck device:
device info←
The server will respond with:
204 device info:←
protocol version: {Version}←
model: {Model Name}←
unique id: {unique alphanumeric identifier}←
Retrieving slot information
The "slot Info" command returns information about a slot. Without parameters, the command returns information for the currently selected slot:
slot info←
If a slot id is specified, that slot will be queried:
slot info: slot id: {Slot ID}
The server will respond with slot specific information:
202 slot info:←
slot id: {Slot ID}←
status: {"empty", "mounting", "error", "mounted"}←
volume name: {Volume name}←
recording time: {recording time available in seconds}←
video format: {disk's default video format}←
Asynchronous slot information change notification is disabled by default and may be configured with the "notify" command. When enabled, changes in slot state will generate a "502 slot info:" asynchronous message with the same parameters as the "202 slot info:" message.
Retrieving clip information
The "disk list" command returns the information for each playable clip on a given disk. Without parameters, the command returns information for the current active disk:
disk list
If a slot id is specified, the disk in that slot will be queried:
disk list: slot id: {Slot ID}
The server responds with the list of all playable clips on the disk in the format of: Index, name, formats, and duration in timecode:
206 disk list:←
slot id: {Slot ID}←
{clip index}: {name} {file format} {video format} {Duration timecode}←
{clip index}: {name} {file format} {video format} {Duration timecode}←
...
Note that the clip index starts from 1.
Retrieving clip count
The "clips count" command returns the number of clips on the current timeline:
clips count ←
The server responds with the number of clips:
214 clips count: ←
clip count: {Count}←
Retrieving timeline information
The "clips get" command returns information for each available clip, for a given range in timecode, on the current timeline. Without parameters, the command returns information for all clips on timeline:
clips get←
The server responds with a list of clip IDs, names and timecodes:
205 clips info:←
clip count: {Count}←
{Clip ID}: {Name} {Start timecode} {Duration timecode}←
{Clip ID}: {Name} {Start timecode} {Duration timecode}←
...
Note that the clip list format has changed incompatibly in protocol version 1.1,
i.e., Start timecode information field is inserted to each clip information line.
Retrieving transport information
The "transport info" command returns the state of the transport:
transport info ←
The server responds with transport specific information:
208 transport info:
status: {"preview", "stopped", "play", "forward", "rewind", "jog", "shuttle", "record"}←
speed: {Play speed between -1600 and 1600 %}←
slot id: {Slot ID or "none"}←
display timecode: {timecode}←
timecode: {timecode}
clip id: {Clip ID or "none"}←
video format: {Video format}←
loop: {"true", "false"}←
The "timecode" value is the timecode within the current timeline for playback or the clip for record. The "display timecode" is the timecode displayed on the front of the deck. The two timecodes will differ in some deck modes.
Asynchronous transport information change notification is disabled by default and may be configured with the "notify" command. When enabled, changes in transport state will generate a "508 transport info:" asynchronous message with the same parameters as the "208 transport info:" message.
Video Formats
The following video formats are currently supported on HyperDeck Studio:
NTSC, PAL, NTSCp, PALp
720p50, 720p5994, 720p60
1080p23976, 1080p24, 1080p25, 1080p2997, 1080p30
1080I50, 1080I5994, 1080I60
HyperDeck Studio Pro adds supports for 4k formats:
4Kp23976, 4Kp24, 4Kp25, 4Kp2997, 4Kp30
HyperDeck Studio 12G adds support for the following 4k formats:
4Kp50, 4Kp5994, 4Kp60
Video format support may vary between models and software releases.
File Formats
All HyperDeck models currently support the following file formats:
QuickTimeUncompressed
QuickTimeProResHQ
QuickTimeProRes
QuickTimeProResLT
QuickTimeProResProxy
QuickTimeDNxHD220
DNxHD220
HyperDeck Studio Mini and HyperDeck Studio 12G additionally support the following file formats:
QuickTimeDNxHR_HQX
DNxHR_HQX
HyperDeck Studio Mini also supports the following file formats:
H.264Low
H.264Medium
H.264High
QuickTimeDNxHD45
DNxHD45
QuickTimeDNxHD145
DNxHD145
QuickTimeDNxHR_SQ
DNxHR_SQ
QuicktimeDNxHR_LB
DNxHR_LB
Supported file formats may vary between models and software releases.
Querying and updating configuration information
The "configuration" command may be used to query the current configuration of the deck:
configuration
The server returns the configuration of the deck:
211 configuration:
audio input: { "embedded", "XLR", "RCA"}
video input: { "SDI", "HDMI", "component"}
file format: {File format}
←
One or more configuration parameters may be specified to change the configuration of the deck.
To change the current video input:
configuration: video input: {"SDI", "HDMI", "component"}
Valid video inputs may vary between models. To configure the current audio input:
configuration: audio input: {"embedded", "XLR", "RCA"}
Valid audio inputs may vary between models.
To configure the current file format:
configuration: file format: {File format}
Note that changes to the file format may require the deck to reset, which will cause the client connection to be closed. In such case, response code 213 will be returned (Instead of 200) before the client connection is closed:
"213 deck rebooting"
Asynchronous configuration information change notification is disabled by default and may be configured with the "notify" command. When enabled, changes in configuration will generate a "511 configuration:" asynchronous message with the same parameters as the "211 configuration:" message.
Selecting active slot and video format
The "slot select" command instructs the deck to switch to a specified slot, or/and to select a specified output video format.
To switch to a specified slot:
slot select: slot id: {slot ID}
To select the output video format:
slot select: video format: {video format}
Either or all slot select parameters may be specified. Note that selecting video format will result in a rescan of the disk to reconstruct the timeline with all clips of the specified video format.
Clearing the current timeline
The "clips clear" command instructs the deck to empty the current timeline:
clips clear
The server responds with
200 ok←
Adding a clip to the current timeline
The "clips add:" command instructs the deck to add a clip to the current timeline:
clips add: name: {"clip name"}
The server responds with
200 ok←
or in case of error
1xx {error description}
Configuring the watchdog
The "watchdog" command instructs the deck to monitor the connected client and terminate the connection if the client is inactive for at least a specified period of time.
To configure the watchdog:
watchdog: period: {period in seconds}
To avoid disconnection, the client must send a command to the server at least every {period} seconds. Note that if the period is set to 0 or less than 0, connection monitoring will be disabled.
Help
Getting Help
The fastest way to obtain help is to go to the Blackmagic Design online support pages and check the latest support material available for your Blackmagic HyperDeck Disk Recorder.
Blackmagic Design Online Support Pages
The latest manual, software and support notes can be found at the Blackmagic Design support center at www.blackmagicdesign.com/support.
Blackmagic Design Forum
The Blackmagic Design forum on our website is a helpful resource you can visit for more information and creative ideas. This can also be a faster way of getting help as there may already be answers you can find from other experienced users and Blackmagic Design staff which will keep you moving forward. You can visit the forum at https://forum.blackmagicdesign.com
Contacting Blackmagic Design Support
If you can't find the help you need in our support material or on the forum, please use the "Send us an email" button on the support page to email a support request. Alternatively, click on the "Find your local support team" button on the support page and call your nearest Blackmagic Design support office.
Checking the Software Version Currently Installed
To check which version of Blackmagic HyperDeck software is installed on your computer, open the About Blackmagic HyperDeck Setup window.
- On Mac OS, open Blackmagic HyperDeck Setup from the Applications folder. Select About Blackmagic HyperDeck Setup from the application menu to reveal the version number.
- On Windows 7, open Blackmagic HyperDeck Setup from your Start menu. Click on the Help menu and select About Blackmagic HyperDeck Setup to reveal the version number.
- On Windows 8, open Blackmagic HyperDeck Setup from the Blackmagic HyperDeck Setup tile on your Start page. Click on the Help menu and select About Blackmagic HyperDeck Setup to reveal the version number.
How to Get the Latest Software Updates
After checking the version of Blackmagic HyperDeck Setup software installed on your computer, please visit the Blackmagic Design support center at www.blackmagicdesign.com/support to check for the latest updates. While it is usually a good idea to run the latest updates, it is wise to avoid updating any software if you are in the middle of an important project.
Regulatory Notices and Safety Information
Regulatory Notices

Disposal of waste of electrical and electronic equipment within the European union.
The symbol on the product indicates that this equipment must not be disposed of with other waste materials. In order to dispose of your waste equipment, it must be handed over to a designated collection point for recycling. The separate collection and recycling of your waste equipment at the time of disposal will help conserve natural resources and ensure that it is recycled in a manner that protects human health and the environment. For more information about where you can drop off your waste equipment for recycling, please contact your local city recycling office or the dealer from whom you purchased the product.

This equipment has been tested and found to comply with the limits for a Class A digital device, pursuant to Part 15 of the FCC rules. These limits are designed to provide reasonable protection against harmful interference when the equipment is operated in a commercial environment. This equipment generates, uses, and can radiate radio frequency energy and, if not installed and used in accordance with the instructions, may cause harmful interference to radio communications. Operation of this product in a residential area is likely to cause harmful interference, in which case the user will be required to correct the interference at personal expense.
Operation is subject to the following two conditions:
1 This device may not cause harmful interference.
2 This device must accept any interference received, including interference that may cause undesired operation.
Connection to HDMI interfaces must be made with shielded HDMI cables.
Safety Information
This equipment must be connected to a mains socket outlet with a protective earth connection.
To reduce the risk of electric shock, do not expose this equipment to dripping or splashing.
This equipment is suitable for use in tropical locations with an ambient temperature of up to 40^ C.
Ensure that adequate ventilation is provided around the product and is not restricted.
When rack mounting, ensure the ventilation is not restricted by adjacent equipment.
No operator serviceable parts inside. Refer servicing to your local Blackmagic Design service centre.

Use only at altitudes not more than 2000m above sea level.
Warranty
12 Month Limited Warranty
Blackmagic Design warrants that this product will be free from defects in materials and workmanship for a period of 12 months from the date of purchase. If a product proves to be defective during this warranty period, Blackmagic Design, at its option, either will repair the defective product without charge for parts and labor, or will provide a replacement in exchange for the defective product.
In order to obtain service under this warranty, you the Customer, must notify Blackmagic Design of the defect before the expiration of the warranty period and make suitable arrangements for the performance of service. The Customer shall be responsible for packaging and shipping the defective product to a designated service center nominated by Blackmagic Design, with shipping charges pre paid. Customer shall be responsible for paying all shipping charges, insurance, duties, taxes, and any other charges for products returned to us for any reason.
This warranty shall not apply to any defect, failure or damage caused by improper use or improper or inadequate maintenance and care. Blackmagic Design shall not be obligated to furnish service under this warranty: a) to repair damage resulting from attempts by personnel other than Blackmagic Design representatives to install, repair or service the product, b) to repair damage resulting from improper use or connection to incompatible equipment, c) to repair any damage or malfunction caused by the use of non Blackmagic Design parts or supplies, or d) to service a product that has been modified or integrated with other products when the effect of such a modification or integration increases the time or difficulty of servicing the product. THIS WARRANTY IS GIVEN BY BLACKMAGIC DESIGN IN LIEU OF ANY OTHER WARRANTIES, EXPRESS OR IMPLIED. BLACKMAGIC DESIGN AND ITS VENDORS DISCLAIM ANY IMPLIED WARRANTIES OF MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE. BLACKMAGIC DESIGN'S RESPONSIBILITY TO REPAIR OR REPLACE DEFECTIVE PRODUCTS IS THE WHOLE AND EXCLUSIVE REMEDY PROVIDED TO THE CUSTOMER FOR ANY INDIRECT, SPECIAL, INCIDENTAL OR CONSEQUENTIAL DAMAGES IRRESPECTIVE OF WHETHER BLACKMAGIC DESIGN OR THE VENDOR HAS ADVANCE NOTICE OF THE POSSIBILITY OF SUCH DAMAGES. BLACKMAGIC DESIGN IS NOT LIABLE FOR ANY ILLEGAL USE OF EQUIPMENT BY CUSTOMER. BLACKMAGIC IS NOT LIABLE FOR ANY DAMAGES RESULTING FROM USE OF THIS PRODUCT. USER OPERATES THIS PRODUCT AT OWN RISK.
© Copyright 2018 Blackmagic Design. All rights reserved. 'Blackmagic Design', 'DeckLink', 'HDLink', 'Workgroup Videohub', 'Multibridge Pro', 'Multibridge Extreme', 'Intensity' and 'Leading the creative video revolution' are registered trademarks in the US and other countries. All other company and product names may be trade marks of their respective companies with which they are associated.

natural_image
Circular portrait photo of a smiling man in a dark polo shirt against a textured gray background (no text or symbols)ようこそ
Blackmagic Design CEO
目次
HyperDeck ディスクレコーダー
はじめに 77
収録 79
再生 82
natural_image
Diagram showing a server rack with two internal ports and an external drive module, illustrating the process of data transfer (no text or symbols present)
| Command Reply No | Remote Notes | ||||
| 0 - System Control | |||||
| 0x00 0x11 DeviceTypeRequest | NTSC: 0xF0E0PAL:0xF1E024P:0xF2E0 | Enabled | |||
| 1 - Slave Response | |||||
| 0x20 | 0x00 | Stop | Acknowledge | Disabled | |
| 0x20 | 0x01 | Play | Acknowledge | Disabled | |
| 0x20 | 0x02 | Record | Acknowledge | Disabled | |
| 0x20 | 0x10 | FastFwd | Acknowledge | Disabled | |
| 0x21 | 0x11 | JogFwd1 | Acknowledge | Disabled | |
| 0x22 | 0x11 | JogFwd2 | Acknowledge | Disabled | Treated as N=1;Same as JogFwd1 |
| 0x21 | 0x12 | VarFwd1 | Acknowledge | Disabled | Uses ShuttleFwd1 |
| 0x22 | 0x12 | VarFwd2 | Acknowledge | Disabled | Treated as N=1;Same as VarFwd1 |
| 0x21 | 0x13 | ShuttleFwd1 | Acknowledge | Disabled | |
| 0x22 | 0x13 | ShuttleFwd2 | Acknowledge | Disabled | Treated as N=1;Same as ShuttleFwd1 |
| 0x20 | 0x20 | Rewind | Acknowledge | Disabled | |
| 0x21 | 0x21 | JogRev1 | Acknowledge | Disabled | |
| 0x22 | 0x21 | JogRev2 | Acknowledge | Disabled | Treated as N=1;Same as JogRev1 |
| 0x21 | 0x22 | VarRev1 | Acknowledge | Disabled | Uses ShuttleRev1 |
| 0x22 | 0x22 | VarRev2 | Acknowledge | Disabled | Treated as N=1;Same as VarRev1 |
| 0x21 | 0x23 | ShuttleRev1 | Acknowledge | Disabled | |
| 0x22 | 0x23 | ShuttleRev2 | Acknowledge | Disabled | Treated as N=1;Same as ShuttleRev1 |
| 0x20 | 0x30 | Preroll | Acknowledge | Disabled | |
| 0x24 | 0x31 | CueData | Acknowledge | Disabled | |
| 0x20 | 0x34 | SyncPlay | Acknowledge | Disabled | |
| 0x21 | 0x38 | ProgSpeedPlayPlus | Acknowledge | Disabled | |
| 0x21 | 0x39 | ProgSpeedPlayMinus | Acknowledge | Disabled | |
| 0x20 | 0x40 | Preview | Acknowledge | Disabled | Status bits are set |
| 0x20 | 0x41 | Review | Acknowledge | Disabled | Status bits are set |
| 0x20 | 0x43 | OutpointPreview | Acknowledge | Disabled | |
| 0x22 | 0x5C | DMCSetFwd | Acknowledge | Disabled | |
| 0x22 | 0x5D | DMCSetRev | Acknowledge | Disabled | |
| 0x20 | 0x60 | FullEEOff | Acknowledge | Disabled | |
| 0x20 | 0x61 | FullEEOn | Acknowledge | Disabled | |
| 0x20 | 0x63 | SelectEEOn | Acknowledge | Disabled | |
| 4 - Preset/Select Control | |||||
| 0x40 | 0x10 | InEntry | Acknowledge | Disabled | |
| 0x22 | 0x23 | ShuttleRev2 | Acknowledge | Disabled | Treated as N=1;Same as ShuttleRev1 |
| 0x20 | 0x30 | Preroll | Acknowledge | Disabled | |
| 0x24 | 0x31 | CueData | Acknowledge | Disabled | |
| 0x20 | 0x34 | SyncPlay | Acknowledge | Disabled | |
| 0x21 | 0x38 | ProgSpeedPlayPlus | Acknowledge | Disabled | |
| 0x21 | 0x39 | ProgSpeedPlayMinus | Acknowledge | Disabled | |
| 0x40 | 0x11 | OutEntry | Acknowledge | Disabled | |
| 0x44 | 0x14 | InDataPreset | Acknowledge | Disabled | |
| 0x44 | 0x15 | OutDataPreset | Acknowledge | Disabled | |
| 0x40 | 0x18 | InFwd | Acknowledge | Disabled | |
| 0x40 | 0x19 | InRev | Acknowledge | Disabled | |
| 0x40 | 0x1A | OutFwd | Acknowledge | Disabled | |
| 0x40 | 0x1B | OutRev | Acknowledge | Disabled | |
| 0x40 | 0x20 | InReset | Acknowledge | Disabled | |
| 0x40 | 0x21 | OutReset | Acknowledge | Disabled | |
| 0x40 | 0x22 | AlnReset | Acknowledge | Disabled | |
| 0x40 | 0x23 | AOutReset | Acknowledge | Disabled | |
| 0x44 | 0x31 | PrerollPreset | Acknowledge | Disabled | |
| 0x40 | 0x40 | AutoModeOff | Acknowledge | Disabled | ignored, Status bit remembered |
| 0x40 | 0x41 | AutoModeOn | Acknowledge | Disabled | ignored, Status bit remembered |
| 6 - Sense Request | |||||
| 0x61 0x0A TimeCodeGenSense | |||||
| Request for Gen TC | GenTCData | Enabled | |||
| Timer1Sense | Timer1Data | Enabled | |||
| UserBitsVITCTimeSense | UserBitsVITCTimeData | Enabled | |||
| LTCUserBitsTimeSense | LTCUserBitsTimeData | Enabled | |||
| VITCUserBitsTimeSense | VITCUserBitsTimeData | Enabled | |||
| 0x60 | 0x10 | InDataSense | InData | Enabled | |
| 0x60 | 0x11 | OutDataSense | OutData | Enabled | |
| 0x60 | 0x12 | AlnDataSense | AlnData | Enabled | |
| 0x60 | 0x13 | AOutDataSense | AOutData | Enabled | |
| 0x61 | 0x20 | StatusSense | StatusData | Enabled | |
| 0x60 | 0x2E | SpeedSense | SpeedData | Enabled | |
| 0x60 | 0x31 | PrerollTimeSense | PreRollTimeData | Enabled | |
| 0x60 | 0x36 | TimerModeSense | TimerModeData | Enabled | |
| 0x60 | 0x3E | RecordInhibitSense | RecordInhibitStatus | Enabled | |
| Command Reply No | Remote Notes | |||
| 7 - Sense Reply | ||||
| 0x78 0x00 Timer1Data -- | Current Time and 00:00:00:00 | |||
| 0x78 0x04 LTCUserBitsTimeData -- | Current Time and 00:00:00:00 | |||
| 0x78 0x06 | VITCUserBitsTimeData | - | - | Current Time and 00:00:00:00 |
| 0x74 | 0x06 | VITCTimeData | - | Current Time |
| 0x74 | 0x07 | UserBitsVITCTimeData | -- 00:00:00:00 | |
| 0x74 | 0x08 | GenTCDATA | - | Current Time |
| 0x78 0x08 GenTCUBData -- | Current Time and 00:00:00:00 | |||
| 0x74 | 0x09 | GenUBData | - | 00:00:00:00 |
| 0x74 | 0x10 | InData | - | |
| 0x74 | 0x11 | OutData | - | |
| 0x74 | 0x12 | AlnData | - | |
| 0x74 | 0x13 | AOutData | - | |
| 0x74 | 0x14 | CorrectedLTCTimeData | -- Current | Time |
| 0x70 | 0x20 | StatusData | - | Please see "Status Bits" sheet: Limited to 9 bytes of status, silently truncated |
| 0x71 | 0x2E | SpeedData | - | |
| 0x74 | 0x31 | PrerollTimeData | - | |
| 0x71 | 0x36 | TimerModeData | - | Returns 0 (TimeCode) |
| 0x72 | 0x3E | RecordInhibitStatus | - | |
| A - Advanced Media Protocol - Available on HyperDeck Studio Mini | |||||
| 0xAX | 0x15 | ListNextID | when x =0 singleclip requestwhen x =1, # clipscan be specified inthe send data | ||
| 0x20 | 0x29 | ClearPlaylist | Acknowledge | ||
| 0x41 | 0x42 | SetPlaybackLoop | Acknowledge | Bit 0 loop mode enable,0=false 1=trueBit 1 is singleclip/timeline0=single clip1=timeline | |
| 0x4f | 0x16 | AppendPreset | Acknowledge | Disabled | |
RS-422 デベロッパー 情報
| bit 7 bit | 6 bit | 5 bit | 4 bit | 3 bit | 2 bit | 1 bit | 0 | |
| Byte 0 | 0 | 0 | Cassette out | 0 0 0 0 | Local | |||
| Byte 1 | Standby 0 | Stop 0 Rewind | Forward Record Play | |||||
| Byte 2 | Servo Lock | 0 | Shuttle | Jog | Var | Direction | Still | 1 |
| Byte 3 | Auto Mode | 0 | 0 | 0 | Aout Set | Ain Set | Out Set | In Set |
| Byte 4 | Select EE | Full EE | 0 0 0 0 | 0 0 | ||||
| Byte 5 | 0 0 0 0 | 0 0 0 0 | ||||||
| Byte 6 | 0 | Lamp Still | Lamp Fwd | Lamp Rev | 0 | 0 | 0 | 0 |
| Byte 7 | 0 0 0 0 | 0 0 0 0 | ||||||
| Byte 8 | 0 | 0 | Near EOT | EOT | 0 | 0 | 0 | 0 |
| Byte 9 | 0 0 0 0 | 0 0 0 0 | ||||||
Variables
| Cassette Out | Set if no SSD is present |
| Local | Set if Remote is disabled (local control) |
| Standby | Set if a disk is available |
| Direction | Clear if playback is forwarding、set if playback is reversing |
| Still | Set if playback is paused、or if in input preview mode |
| Auto Mode | Set if in Auto Mode |
| Select EE、Full EE | Set if in Input preview mode |
| Lamp Still/Fwd/Rev | Set according to playback speed and direction |
| Near EOT | Set if total space left on available SSDs is less than 3 minutes |
| EOT | Set if total space left on available SSDs is less than 30 seconds |
Others
| Cue Complete (byte 2, bit 0) | Always 1: Cue requests are always instantaneous. |
HyperDeck Serial RS-422 Protocol
| Protocol | Based on Sony 9-pin protocol | |
| Interface | Baud rate | 38.4 Kbps |
| 1 start bit | ||
| 8 data bits | ||
| 1 stop bit | ||
| 1 parity bit | ||
| Odd parity | ||
ネットワークでファイルを転送
natural_image
Icon of a film strip with a stylized 'Q' logo, no text or symbols present

Mac OS
http://www.avid.com/jp/products/avid-dnxhr-and-dnxhd
http://www.avid.com/jp/products/avid-dnxhr-and-dnxhd
line
| Time | Red Line Value | Green Line Value | Blue Line Value | |------|----------------|------------------|-----------------| | 0 | 512 | 512 | 512 | | 1 | 768 | 768 | 768 | | 2 | 896 | 896 | 896 | | 3 | 768 | 768 | 768 | | 4 | 512 | 512 | 512 | | 5 | 384 | 384 | 384 | | 6 | 256 | 256 | 256 | | 7 | 128 | 128 | 128 | | 8 | 0 | 0 | 0 | | 9 | 128 | 128 | 128 | | 10 | 384 | 384 | 384 | | 11 | 512 | 512 | 512 | | 12 | 768 | 768 | 768 | | 13 | 896 | 896 | 896 | | 14 | 768 | 768 | 768 | | 15 | 512 | 512 | 512 | | 16 | 384 | 384 | 384 | | 17 | 256 | 256 | 256 | | 18 | 128 | 128 | 128 | | 19 | 0 | 0 | 0 | | 20 | 128 | 128 | 128 | | 21 | 384 | 384 | 384 | | 22 | 512 | 512 | 512 | | 23 | 768 | 768 | 768 | | 24 | 896 | 896 | 896 | | 25 | 768 | 768 | 768 | | 26 | 512 | 512 | 512 | | 27 | 384 | 384 | 384 | | 28 | 256 | 256 | 256 | | 29 | 128 | 128 | 128 | | 30 | 0 | 0 | 0 | | Peak (approx) - Bar (approx) - Bar (approx) - Bar (approx) - Bar (approx) - Bar (approx) - Bar (approx) - Bar (approx) - Bar (approx) - Bar (approx) - Bar (approx) - Bar (approx) - Bar (approx) - Bar (approx) - Bar (approx) - Bar (approx) - Bar (approx) - Bar (approx) - Bar (approx) - Bar (approx) - Bar (approx) - A vertical line at Bar (approx) = Bar (approx) - A vertical line at Bar (approx) = Bar (approx) - A vertical line at Bar (approx) - A vertical line at Bar (approx) - A vertical line at Bar (approx) - A vertical line at Bar (approx) - A vertical line at Bar (approx) - A vertical line at Bar (approx) - A vertical line at Bar (approx) - A vertical line at Bar (approx) - A vertical line at Bar (approx) - A vertical line at Bar (approx) - A vertical line at Bar (approx) - A vertical line at B vs. B vs. B vs. B vs. B vs. B vs. B vs. B vs. B vs. B vs. B vs. B vs. B vs. B vs. B vs. B vs. B vs. B vs. B vs. B vs. B vs. B vs. B vs. B vs. B vs. B vs. B vs. B vs. B vs. B vs. B vs. B vs. B vs. B vs. C vs. C vs. C vs. C vs. C vs. C vs. C vs. C vs. C vs. C vs. C vs. C vs. C vs. C vs. C vs. C vs. C vs. C vs. C vs. C vs. C vs. C vs. C vs. C vs. C vs. C vs. C vs. C vs. C vs. C vs. C vs. C vs. C vs. C / C vs. C vs. C vs. C vs. C vs. C vs. C vs. C vs. C vs. C vs. C vs. C / C vs. C vs. C vs. C vs. C / C vs. C / C vs. C / C vs. C / C vs. C / C / C / C / C / C / C / C / C / C / C / C / C / C / C / C / C / C / C / C / C / C / C / C / C / C / C / C / C / C / C / C / C / C / C / C / C / C / C / C / C / C / C / C / C / C / C / C / C / C / C : Parade Vnatural_image
Silhouette of a human head against a blue sky background (no text or symbols)natural_image
Person sitting by a coastal cliff at sunset, overlooking the sea with hills in the background (no text or symbols visible)natural_image
Interior view of a car with a person visible through the window, no text or symbols present.natural_image
Interior view of a modern living room with large windows, a man standing near a circular metal frame, and no visible text or symbols.The Blackmagic HyperDeck Ethernet Protocol is a text based protocol accessed by connecting to TCP port 9993 on HyperDeck Studio models that have a built in Ethernet connection. If you are a software developer you can use the protocol to construct devices that integrate with our products. Here at Blackmagic Design our approach is to open up our protocols and we eagerly look forward to seeing what you come up with!
Protocol Commands
| Command Command Description | |
| help or ? Provides help text on all commands and parameters | |
| commands return commands in XML format | |
| device info return device information | |
| disk list query clip list on active disk | |
| disk list: slot id: {n} query clip list on disk in slot {n} | |
| quit disconnect ethernet control | |
| ping check device is responding | |
| preview: enable: {true/false} switch to preview or output | |
| play play from current timecode | |
| play: speed: [-1600 to 1600] play at specific speed | |
| play: loop: {true/false} play in loops or stop-at-end | |
| play: single clip: {true/false} play current clip or all clips | |
| playrange set: clip id: {n} | set play range to play clip {n} only |
| playrange set: in: {inT} out: {outT} | set play range to play between:- timecode {inT} and timecode {outT} |
| playrange clear | clear/reset play range setting |
| play on startup | query unit play on startup state |
| play on startup: enable: {true/false} | enable or disable play on startup |
| play on startup: single clip: {true/false} | play single clip or all clips on startup |
| record | record from current input |
| record: name: {name} | record named clip |
| stop stop playback or recording | |
| clips count query number of clips on timeline | |
| clips get | query all timeline clips |
| clips get: clip id: {n} | query a timeline clip info |
| clips get: clip id: {n} count: {m} | query m clips starting from n |
| clips add: name: {name} | append a clip to timeline |
| clips clear empty timeline clip list | |
| transport info query current activity | |
| slot info query active slot | |
| slot info: slot id: {n} query slot {n} | |
| slot select: slot id: [1/2] switch to specified slot | |
| slot select: video format: {format} load clips of specified format | |
| notify query notification status | |
| notify: remote: {true/false} set remote notifications | |
| notify: transport: {true/false} set transport notifications | |
| notify: slot: {true/false} set slot notifications | |
| notify: configuration: {true/false} set configuration notifications | |
| notify: dropped frames: {true/false} set dropped frames notifications | |
| goto: clip id: {n} | goto clip id {n} |
| goto: clip id: +{n} | go forward {n} clips |
| goto: clip id: {-n} | go backward {n} clips |
| goto: clip: {start/end} | goto start or end of clip |
| goto: timeline: {start/end} | goto start or end of timeline |
| goto: timecode: {timecode} | goto specified timecode |
| goto: timecode: +{timecode} | go forward {timecode} duration |
| goto: timecode: {-timecode} | go backward {timecode} duration |
| goto: slot id: {n} | goto slot id {n} |
| jog: timecode: {timecode} | jog to timecode |
| jog: timecode: +{timecode} | jog forward {timecode} duration |
| jog: timecode: {-timecode} | jog backward {timecode} duration |
| shuttle: speed: [-1600 to 1600] | shuttle with speed |
| remote | query unit remote control state |
| remote: enable: {true/false} | enable or disable remote control |
| remote: override: {true/false} | session override remote control |
| configuration | query configuration settings |
| configuration: video input: SDI | switch to SDI input |
| configuration: video input: HDMI | switch to HDMI input |
| configuration: video input: component | switch to component Input |
| configuration: audio input: embedded | capture embedded audio |
| configuration: audio input: XLR | capture XLR audio |
| configuration: audio Input: RCA | capture RCA audio |
| configuration: file format: {format} | switch to specific file format |
Command Command Description
uptime return time since last boot
format: prepare: {format} prepare a disk formatting operation to filesystem {format}
format: confirm: {token} perform a pre-prepared formatting operation using token
identify: enable: {true/false} identify the device
watchdog: period: {period in seconds} client connection timeout
Command Combinations
You can combine the parameters into a single command, for example:
play: speed: 200 loop: true single clip: true
Or for configuration:
configuration: video input: SDI audio input: XLR
Or to switch to the second disk, but only play NTSC clips:
slot select: slot id: 2 video format: NTSC
Using XML
While you can use the Terminal to talk to HyperDeck, if you are writing software you can use XML to confirm the existence of a specific command based on the firmware of the HyperDeck you are communicating with. This helps your software user interface adjust to the capabilities of the specific HyperDeck model and software version.
Protocol Details
Connection
The HyperDeck Ethernet server listens on TCP port 9993.
Basic syntax
The HyperDeck protocol is a line oriented text protocol. Lines from the server will be separated by an ascii CR LF sequence. Messages from the client may be separated by LF or CR LF.
New lines are represented in this document as a "←" symbol.
Command syntax
Command parameters are usually optional. A command with no parameters is terminated with a new line:
{Command name}
If parameters are specified, the command name is followed by a colon, then pairs of parameter names and values. Each parameter name is terminated with a colon character:
{Command name}: {Parameter}: {Value} {Parameter}: {Value} ...
Response syntax
Simple responses from the server consist of a three digit response code and descriptive text terminated by a new line:
{Response code} {Response text}
If a response carries parameters, the response text is terminated with a colon, and parameter name and value pairs follow on subsequent lines until a blank line is returned:
{Response code} {Response text}:
{Parameter}: {Value}
{Parameter}: {Value}←
...
←
Successful response codes
A simple acknowledgement of a command is indicated with a response code of 200:
200 ok←
Other successful responses carry parameters and are indicated with response codes in the range of 201 to 299.
Failure response codes
Failure responses to commands are indicated with response codes in the range of 100 to 199:
100 syntax error
101 unsupported parameter
102 invalid value
103 unsupported
104 disk full
105 no disk
106 disk error
107 timeline empty
108 internal error
109 out of range
110 no input
111 remote control disabled
120 connection rejected
150 invalid state
151 invalid codec
160 invalid format
161 invalid token
162 format not prepared
Asynchronous response codes
The server may return asynchronous messages at any time. These responses are indicated with response codes in the range of 500 to 599:
5xx {Response Text}:
{Parameter}: {Value}
{Parameter}: {Value}
Connection response
On connection, an asynchronous message will be delivered:
500 connection info:←
protocol version: {Version}←
model: {Model Name}←
Connection rejection
Only one client may connect to the server at a time. If other clients attempt to connect concurrently, they will receive an error and be disconnected:
120 connection rejected
Timecode syntax
Timecodes are expressed as non-drop-frame timecode in the format:
H
H:M
M:SS:FF
Handling of deck "remote" state
The “remote” command may be used to enable or disable the remote control of the deck. Any attempt to change the deck state over ethernet while remote access is disabled will generate an error:
111 remote control disabled←
To enable or disable remote control:
remote: enable: { "true", "false"} ←
The current remote control state may be overridden allowing remote access over ethernet irrespective of the current remote control state:
remote: override: { "true", "false"}
The override state is only valid for the currently connected ethernet client and only while the connection remains open.
The “remote” command may be used to query the remote control state of the deck by specifying no parameters:
remote
The deck will return the current remote control state:
210 remote info:←
enabled: {"true", "false"}←
override: {"true", "false"}←
Asynchronous remote control information change notification is disabled by default and may be configured with the "notify" command. When enabled, changes in remote state will generate a "510 remote info:" asynchronous message with the same parameters as the "210 remote info:" message.
Closing connection
The "quit" command instructs the server to cleanly shut down the connection:
q uit
Checking connection status
The "ping" command has no function other than to determine if the server is responding:
ping←
Getting help
The "help" or "?" commands return human readable help text describing all available commands and parameters:
help
Or:
?←
The server will respond with a list of all supported commands:
201 help:←
{Help Text}←
{Help Text}←
Switching to preview mode
The "preview" command instructs the deck to switch between preview mode and output mode:
preview: enable: {"true", "false"}
Playback will be stopped when the deck is switched to preview mode. Capturing will be stopped when the deck is switched to output mode.
Controlling device playback
The "play" command instructs the deck to start playing:
play←
The play command accepts a number of parameters which may be used together in most combinations.
By default, the deck will play all remaining clips on the timeline then stop.
The "single clip" parameter may be used to override this behaviour:
play: single clip: { "true", "false"}
By default, the deck will play at normal (100%) speed. An alternate speed may be specified in percentage between -1600 and 1600:
play: speed: {% normal speed}
By default, the deck will stop playing when it reaches to the end of the timeline. The "loop" parameter may be used to override this behaviour:
play: loop: { "true", "false"}←
The "playrange" command instructs the deck to play all the clips. To override this behaviour and select a particular clip:
playrange set: clip id: {Clip ID}
To only play a certain timecode range:
playrange set: in: {in timecode} out: {out timecode}
To clear a set playrange and return to the default value:
playrange clear
The “play on startup command” instructs the deck on what action to take on startup. By default, the deck will not play. Use the “enable” command to start playback after each power up.
play on startup: enable {"true", "false"}
By default, the unit will play back all clips on startup. Use the "single clip" command to override.
play on startup: single clip: {"true", "false"}
Stopping deck operation
The "stop" command instructs the deck to stop the current playback or capture:
stop
Changing timeline position
The "goto" command instructs the deck to switch to playback mode and change its position within the timeline.
To go to the start of a specific clip:
goto: clip id: {Clip ID}
To move forward/back {count} clips from the current clip on the current timeline:
goto: clip id: +/- {count}
Note that if the resultant clip id goes beyond the first or last clip on timeline, it will be clamp at the first or last clip.
To go to the start or end of the current clip:
goto: clip: {"start", "end"}
To go to the start of the first clip or the end of the last clip:
goto: timeline: { "start", "end"}
To go to a specified timecode:
goto: timecode: {timecode}
To move forward or back a specified duration in timecode:
goto: timecode: {"+"", "-"}{duration in timecode}
To specify between slot 1 and slot 2:
goto: slot id: {Slot ID}
Note that only one parameter/value pair is allowed for each goto command.
Enumerating supported commands and parameters
The "commands" command returns the supported commands:
commands
The command list is returned in a computer readable XML format:
212 comm and s:
<commands>
<command name="..."><parameter name="..."/>...</command>
<command name="..."><parameter name="..."/>...</command>
...
</c o m m a n ds>
More XML tokens and parameters may be added in later releases.
Controlling asynchronous notifications
The "notify" command may be used to enable or disable asynchronous notifications from the server.
To enable or disable transport notifications:
notify: transport: {"true", "false"}
To enable or disable slot notifications:
notify: slot: {"true", "false"}
To enable or disable remote notifications:
notify: remote: {"true", "false"}
To enable or disable configuration notifications:
notify: configuration: {"true", "false"}
Multiple parameters may be specified. If no parameters are specified, the server returns the current state of all notifications:
209 notify:
transport: { "true", "false" }←
slot: { "true", "false" }←
remote: { "true", "false" }←
configuration: { "true", "false" }←
Retrieving device information
The "device info" command returns information about the connected deck device:
device info←
The server will respond with:
204 device info:←
protocol version: {Version}←
model: {Model Name}←
unique id: {unique alphanumeric identifier}←
Retrieving slot information
The "slot Info" command returns information about a slot. Without parameters, the command returns information for the currently selected slot:
slot info←
If a slot id is specified, that slot will be queried:
slot info: slot id: {Slot ID}
The server will respond with slot specific information:
202 slot info:←
slot id: {Slot ID}←
status: {"empty", "mounting", "error", "mounted"}←
volume name: {Volume name}←
recording time: {recording time available in seconds}←
video format: {disk's default video format}←
Asynchronous slot information change notification is disabled by default and may be configured with the "notify" command. When enabled, changes in slot state will generate a "502 slot info:" asynchronous message with the same parameters as the "202 slot info:" message.
Retrieving clip information
The "disk list" command returns the information for each playable clip on a given disk. Without parameters, the command returns information for the current active disk:
disk list
If a slot id is specified, the disk in that slot will be queried:
disk list: slot id: {Slot ID}
The server responds with the list of all playable clips on the disk in the format of: Index, name, formats, and duration in timecode:
206 disk list:←
slot id: {Slot ID}←
{clip index}: {name} {file format} {video format} {Duration timecode}←
{clip index}: {name} {file format} {video format} {Duration timecode}←
...
Note that the clip index starts from 1.
Retrieving clip count
The "clips count" command returns the number of clips on the current timeline:
clips count ←
The server responds with the number of clips:
214 clips count: ←
clip count: {Count}←
Retrieving timeline information
The "clips get" command returns information for each available clip, for a given range in timecode, on the current timeline. Without parameters, the command returns information for all clips on timeline:
clips get←
The server responds with a list of clip IDs, names and timecodes:
205 clips info:←
clip count: {Count}←
{Clip ID}: {Name} {Start timecode} {Duration timecode}←
{Clip ID}: {Name} {Start timecode} {Duration timecode}←
...
Note that the clip list format has changed incompatibly in protocol version 1.1,
i.e., Start timecode information field is inserted to each clip information line.
Retrieving transport information
The "transport info" command returns the state of the transport:
transport info ←
The server responds with transport specific information:
208 transport info:
status: {"preview", "stopped", "play", "forward", "rewind", "jog", "shuttle", "record"}←
speed: {Play speed between -1600 and 1600 %}←
slot id: {Slot ID or "none"}←
display timecode: {timecode}←
timecode: {timecode}
clip id: {Clip ID or "none"}←
video format: {Video format}←
loop: {"true", "false"}←
The "timecode" value is the timecode within the current timeline for playback or the clip for record. The "display timecode" is the timecode displayed on the front of the deck. The two timecodes will differ in some deck modes.
Asynchronous transport information change notification is disabled by default and may be configured with the "notify" command. When enabled, changes in transport state will generate a "508 transport info:" asynchronous message with the same parameters as the "208 transport info:" message.
Video Formats
The following video formats are currently supported on HyperDeck Studio:
NTSC, PAL, NTSCp, PALp
720p50, 720p5994, 720p60
1080p23976, 1080p24, 1080p25, 1080p2997, 1080p30
1080I50, 1080I5994, 1080I60
HyperDeck Studio Pro adds supports for 4k formats:
4Kp23976, 4Kp24, 4Kp25, 4Kp2997, 4Kp30
HyperDeck Studio 12G adds support for the following 4k formats:
4Kp50, 4Kp5994, 4Kp60
Video format support may vary between models and software releases.
File Formats
All HyperDeck models currently support the following file formats:
QuickTimeUncompressed
QuickTimeProResHQ
QuickTimeProRes
QuickTimeProResLT
QuickTimeProResProxy
QuickTimeDNxHD220
DNxHD220
HyperDeck Studio Mini and HyperDeck Studio 12G additionally support the following file formats:
QuickTimeDNxHR_HQX
DNxHR_HQX
HyperDeck Studio Mini also supports the following file formats:
H.264Low
H.264Medium
H.264High
QuickTimeDNxHD45
DNxHD45
QuickTimeDNxHD145
DNxHD145
QuickTimeDNxHR_SQ
DNxHR_SQ
QuicktimeDNxHR_LB
DNxHR_LB
Supported file formats may vary between models and software releases.
Querying and updating configuration information
The "configuration" command may be used to query the current configuration of the deck:
configuration
The server returns the configuration of the deck:
211 configuration:
audio input: { "embedded", "XLR", "RCA"}
video input: { "SDI", "HDMI", "component"}
file format: {File format}
←
One or more configuration parameters may be specified to change the configuration of the deck.
To change the current video input:
configuration: video input: { "SDI", "HDMI", "component"}
Valid video inputs may vary between models. To configure the current audio input:
configuration: audio input: {"embedded", "XLR", "RCA"}
Valid audio inputs may vary between models.
To configure the current file format:
configuration: file format: {File format}
Note that changes to the file format may require the deck to reset, which will cause the client connection to be closed. In such case, response code 213 will be returned (instead of 200) before the client connection is closed:
"213 deck rebooting"
Asynchronous configuration information change notification is disabled by default and may be configured with the "notify" command. When enabled, changes in configuration will generate a "511 configuration:" asynchronous message with the same parameters as the "211 configuration:" message.
Selecting active slot and video format
The "slot select" command instructs the deck to switch to a specified slot, or/and to select a specified output video format.
To switch to a specified slot:
slot select: slot id: {slot ID}
To select the output video format:
slot select: video format: {video format}
Either or all slot select parameters may be specified. Note that selecting video format will result in a rescan of the disk to reconstruct the timeline with all clips of the specified video format.
Clearing the current timeline
The "clips clear" command instructs the deck to empty the current timeline:
clips clear
The server responds with
200 ok←
Adding a clip to the current timeline
The "clips add:" command instructs the deck to add a clip to the current timeline:
clips add: name: {"clip name"}
The server responds with
200 ok←
or in case of error
1xx {error description}
Configuring the watchdog
The "watchdog" command instructs the deck to monitor the connected client and terminate the connection if the client is inactive for at least a specified period of time.
To configure the watchdog:
watchdog: period: {period in seconds}
To avoid disconnection, the client must send a command to the server at least every {period} seconds. Note that if the period is set to 0 or less than 0, connection monitoring will be disabled.
ヘルプ
へ ルプライン
natural_image
Circular portrait photo of a smiling man in a dark shirt against a textured gray background (no text or symbols)Cher client, chère cliente,

Command Reply No Remote Notes
| 1 - Slave Response | |||||
| 0x20 | 0x00 | Stop | Acknowledge | Disabled | |
| 0x20 | 0x01 | Play | Acknowledge | Disabled | |
| 0x20 | 0x02 | Record | Acknowledge | Disabled | |
| 0x20 | 0x10 | FastFwd | Acknowledge | Disabled | |
| 0x21 0x11 | JogFwd1 Acknowledge Disabled | ||||
| 0x22 | 0x11 | JogFwd2 | Acknowledge | Disabled | Treated as N=1;Same as JogFwd1 |
| 0x21 | 0x12 | VarFwd1 | Acknowledge | Disabled | Uses ShuttleFwd1 |
| 0x22 | 0x12 | VarFwd2 | Acknowledge | Disabled | Treated as N=1;Same as VarFwd1 |
| 0x21 | 0x13 | ShuttleFwd1 | Acknowledge | Disabled | |
| 0x22 | 0x13 | ShuttleFwd2 | Acknowledge | Disabled | Treated as N=1;Same as ShuttleFwd1 |
| 0x20 | 0x20 | Rewind | Acknowledge | Disabled | |
| 0x21 | 0x21 | JogRev1 | Acknowledge | Disabled | |
| 0x22 | 0x21 | JogRev2 | Acknowledge | Disabled | Treated as N=1;Same as JogRev1 |
| 0x21 | 0x22 | VarRev1 | Acknowledge | Disabled | Uses ShuttleRev1 |
| 0x22 0x22 | VarRev2 Acknowledge Disabled | Treated as N=1;Same as VarRev1 | |||
| 0x21 | 0x23 | ShuttleRev1 | Acknowledge | Disabled | |
| 0x22 | 0x23 | ShuttleRev2 | Acknowledge | Disabled | Treated as N=1;Same as ShuttleRev1 |
| 0x20 | 0x30 | Preroll | Acknowledge | Disabled | |
| 0x24 | 0x31 | CueData | Acknowledge | Disabled | |
| 0x20 | 0x34 | SyncPlay | Acknowledge | Disabled | |
| 0x21 0x38 | ProgSpeedPlayPlus Acknowledge Disabled | ||||
| 0x21 | 0X39 | ProgSpeedPlayMinus | Acknowledge | Disabled | |
| 0x20 | 0x40 | Preview | Acknowledge | Disabled | Status bits are set |
| 0x20 | 0x41 | Review | Acknowledge | Disabled | Status bits are set |
| 0x20 | 0x43 | OutpointPreview | Acknowledge | Disabled | |
| 0x22 | 0x5C | DMCSetFwd | Acknowledge | Disabled | |
| 0x22 | 0x5D | DMCSetRev | Acknowledge | Disabled | |
| 0x20 | 0x60 | FullEEOff | Acknowledge | Disabled | |
| 0x20 | 0x61 | FullEEOn | Acknowledge | Disabled | |
| 0x20 | 0x63 | SelectEEOn | Acknowledge | Disabled | |
Command Reply No Remote Notes
4 - Preset/Select Control
| 0x40 | 0x10 | InEntry | Acknowledge | Disabled | |
| 0x22 | 0x23 | ShuttleRev2 | Acknowledge | Disabled | Treated as N=1;Same as ShuttleRev1 |
| 0x20 | 0x30 | Preroll | Acknowledge | Disabled | |
| 0x24 0x31 | CueData Acknowledge Disabled | ||||
| 0x20 0x34 | SyncPlay Acknowledge Disabled | ||||
| 0x21 0x38 | ProgSpeedPlayPlus Acknowledge Disabled | ||||
| 0x21 | 0X39 | ProgSpeedPlayMinus | Acknowledge | Disabled | |
| 0x40 | 0x11 | OutEntry | Acknowledge | Disabled | |
| 0x44 | 0x14 | InDataPreset | Acknowledge | Disabled | |
| 0x44 | 0x15 | OutDataPreset | Acknowledge | Disabled | |
| 0x40 | 0x18 | InFwd | Acknowledge | Disabled | |
| 0x40 | 0x19 | InRev | Acknowledge | Disabled | |
| 0x40 | 0x1A | OutFwd | Acknowledge | Disabled | |
| 0x40 | 0x1B | OutRev | Acknowledge | Disabled | |
| 0x40 | 0x20 | InReset | Acknowledge | Disabled | |
| 0x40 | 0x21 | OutReset | Acknowledge | Disabled | |
| 0x40 | 0x22 | AlnReset | Acknowledge | Disabled | |
| 0x40 | 0x23 | AOutReset | Acknowledge | Disabled | |
| 0x44 | 0x31 | PrerollPreset | Acknowledge | Disabled | |
| 0x40 | 0x40 | AutoModeOff | Acknowledge | Disabled | ignored, Status bitremembered |
| 0x40 | 0x41 | AutoModeOn | Acknowledge | Disabled | ignored, Status bitremembered |
6 - Sense Request
| 0x61 0x0A | TimeCodeGenSense | ||||
| Request for Gen TC | GenTCData | Enabled | |||
| Timer1Sense | Timer1Data | Enabled | |||
| UserBitsVITCTimeSense | UserBitsVITCTimeData | Enabled | |||
| LTCUserBitsTimeSense | LTCUserBitsTimeData | Enabled | |||
| VITCUserBitsTimeSense | VITCUserBitsTimeData | Enabled | |||
| 0x60 | 0x10 | InDataSense | InData | Enabled | |
| 0x60 | 0x11 | OutDataSense | OutData | Enabled | |
| 0x60 | 0x12 | AlnDataSense | AlnData | Enabled | |
| 0x60 | 0x13 | AOutDataSense | AOutData | Enabled | |
| 0x61 | 0x20 | StatusSense | StatusData | Enabled | |
| 0x60 | 0x2E | SpeedSense | SpeedData | Enabled | |
| 0x60 | 0x31 | PrerollTimeSense | PreRollTimeData | Enabled | |
| 0x60 | 0x36 | TimerModeSense | TimerModeData | Enabled | |
| 0x60 | 0x3E | RecordInhibitSense | RecordInhibitStatus | Enabled | |
Command Reply No Remote Notes
7 - Sense Reply
| 0x78 0x00 Timer1Data -- | Current Time and 00:00:00:00 | ||||
| 0x78 0x04 LTCUserBitsTimeData -- | Current Time and 00:00:00:00 | ||||
| 0x78 0x06 | VITCUserBitsTimeData | - | - | Current Time and 00:00:00:00 | |
| 0x74 | 0x06 | VITCTimeData | - | - | Current Time |
| 0x74 0x07 | UserBitsVITCTimeData | -- 00:00:00:00 | |||
| 0x74 | 0x08 | GenTCData | - | - | Current Time |
| 0x78 0x08 GenTCUBData -- | Current Time and 00:00:00:00 | ||||
| 0x74 | 0x09 | GenUBData | - | - | 00:00:00:00 |
| 0x74 0x10 InData | -- | ||||
| 0x74 | 0x11 | OutData | - | - | |
| 0x74 | 0x12 | AlnData | - | - | |
| 0x74 | 0x13 | AOutData | - | - | |
| 0x74 0x14 | CorrectedLTCTimeData | -- Current Time | |||
| 0x70 | 0x20 | StatusData | - | - | Please see "Status Bits" sheet: Limited to 9 bytes of status, silently truncated |
| 0x71 | 0x2E | SpeedData | - | - | |
| 0x74 | 0x31 | PrerollTimeData | - | - | |
| 0x71 | 0x36 | TimerModeData | - | - | Returns 0 (TimeCode) |
| 0x72 | 0x3E | RecordInhibitStatus | - | - | |
A - Advanced Media Protocol - Available on HyperDeck Studio Mini
| 0xAX | 0x15 ListNextID | when x = 0 singleclip requestwhen x = 1, # clips canbe specified inthe send data | |||
| 0x20 | 0x29 | ClearPlaylist | Acknowledge | ||
| 0x41 | 0x42 | SetPlaybackLoop | Acknowledge | Bit 0 loop modeenable, 0=false 1=trueBit 1 is singleclip/timeline0=single clip1=timeline | |
| 0x4f | 0x16 | AppendPreset | Acknowledge | Disabled | |
| Cassette Out | Set if no SSD is present |
| Local | Set if Remote is disabled (local control) |
| Standby | Set if a disk is available |
| Direction | Clear if playback is forwarding, set if playback is reversing |
| Still | Set if playback is paused, or if in input preview mode |
| Auto Mode | Set if in Auto Mode |
| Select EE, Full EE | Set if in input preview mode |
| Lamp Still/Fwd/Rev | Set according to playback speed and direction |
| Near EOT | Set if total space left on available SSDs is less than 3 minutes |
| EOT | Set if total space left on available SSDs is less than 30 seconds |
Others
| Cue Complete (byte 2, bit 0) | Always 1: Cue requests are always instantaneous |
HyperDeck Serial RS-422 Protocol
| Protocol | Based on Sony 9-pin protocol | |
| Interface | Baud rate | 38.4 Kbps |
| 1 start bit | ||
| 8 data bits | ||
| 1 stop bit | ||
| 1 parity bit | ||
| Odd parity | ||
natural_image
Icon of a film strip with a stylized letter 'Q' in the center (no text or symbols beyond the icon itself)

Mac OS
Utiliser DaVinci Resolve
natural_image
Silhouette of a human head against a blue sky background (no text or symbols)natural_image
Person standing by a coastal cliff at sunset, overlooking the sea with distant hills (no text or symbols visible)natural_image
Interior view of a car with a person visible through the window, enclosed by a wireframe bounding box (no text or symbols)natural_image
Modern living room interior with large windows overlooking the sea, featuring a man holding a tablet and a decorative umbrella (no visible text or symbols)Bus principal (Main bus)
line
| Frequency | Gain | | --------- | ---- | | 47 | 0 | | 143 | -89 | | 892 | -15 | | 2x44 | -6 | | 144 | -20 | | 246 | -20 | | -0.3 | -20 | | 0 | -20 |The Blackmagic HyperDeck Ethernet Protocol is a text based protocol accessed by connecting to TCP port 9993 on HyperDeck Studio models that have a built in Ethernet connection. If you are a software developer you can use the protocol to construct devices that integrate with our products. Here at Blackmagic Design our approach is to open up our protocols and we eagerly look forward to seeing what you come up with!
Protocol Commands
| Command Command Description | |
| help or ? Provides help text on all commands and parameters | |
| commands return commands in XML format | |
| device info return device information | |
| disk list query clip list on active disk | |
| disk list: slot id: n query clip list on disk in slot n | |
| quit disconnect ethernet control | |
| ping check device is responding | |
| preview: enable: true/false switch to preview or output | |
| play play from current timecode | |
| play: speed: -1600 to 1600 play at specific speed | |
| play: loop: true/false play in loops or stop-at-end | |
| play: single clip: true/false play current clip or all clips | |
| playrange set: clip id: n set play range to play clip n only | |
| playrange set: in: inT out: outT | set play range to play between:- timecode inT and timecode outT |
| playrange clear | clear/reset play range setting |
| record | record from current input |
| record: name: name | record named clip |
| stop stop playback or recording | |
| clips count query number of clips on timeline | |
| clips get | query all timeline clips |
| clips get: clip id: n | query a timeline clip info |
| clips get: clip id: n count: m | query m clips starting from n |
| clips add: name: name | append a clip to timeline |
| clips clear | empty timeline clip list |
| transport info | query current activity |
| slot info | query active slot |
| slot info: slot id: n query slot n | |
| slot select: slot id: 1/2 switch to specified slot | |
| slot select: video format: format load clips of specified format | |
| notify query notification status | |
| notify: remote: true/false set remote notifications | |
| notify: transport: true/false set transport notifications | |
| notify: slot: true/false set slot notifications | |
| notify: configuration: true/false set configuration notifications | |
| notify: dropped frames: true/false | set dropped frames notifications |
| goto: clip id: n goto clip id n | |
| goto: clip id: +n go forward n clips | |
| goto: clip id: -n go backward n clips | |
| goto: clip: start/end goto start or end of clip | |
| goto: timeline: start/end | goto start or end of timeline |
| goto: timecode: timecode | goto specified timecode |
| goto: timecode: +timecode | go forward timecode duration |
| goto: timecode: -timecode | go backward timecode duration |
| jog: timecode: timecode | jog to timecode |
| jog: timecode: +timecode | jog forward timecode duration |
| jog: timecode: -timecode | jog backward timecode duration |
| shuttle: speed: -1600 to 1600 | shuttle with speed |
| remote | query unit remote control state |
| remote: enable: true/false | enable or disable remote control |
| remote: override: true/false | session override remote control |
| configuration | query configuration settings |
| configuration: video input: SDI | switch to SDI input |
| configuration: video input: HDMI | switch to HDMI Input |
| configuration: video input: component | switch to component input |
| configuration: audio input: embedded | capture embedded audio |
| configuration: audio input: XLR | capture XLR audio |
| configuration: audio input: RCA capture RCA audio | |
| configuration: file format: format | switch to specific file format |
| uptime: | return time since last boot |
| format: prepare: format | prepare a disk formatting operation to filesystem format |
| format: confirm: token | perform a pre-prepared formatting operation using token |
| identify: enable: true/false | identify the device |
| watchdog: period: period in seconds | client connection timeout |
Command Combinations
You can combine the parameters into a single command, for example:
play: speed: 200 loop: true single clip: true
Or for configuration:
configuration: video input: SDI audio input: XLR
Or to switch to the second disk, but only play NTSC clips:
slot select: slot id: 2 video format: NTSC
Using XML
While you can use the Terminal to talk to HyperDeck, if you are writing software you can use XML to confirm the existence of a specific command based on the firmware of the HyperDeck you are communicating with. This helps your software user interface adjust to the capabilities of the specific HyperDeck model and software version.
Protocol Details
Connection
The HyperDeck Ethernet server listens on TCP port 9993.
Basic syntax
The HyperDeck protocol is a line oriented text protocol. Lines from the server will be separated by an ascii CR LF sequence. Messages from the client may be separated by LF or CR LF.
New lines are represented in this document as a "←" symbol.
Command syntax
Command parameters are usually optional. A command with no parameters is terminated with a new line:
Command name←
If parameters are specified, the command name is followed by a colon, then pairs of parameter names and values. Each parameter name is terminated with a colon character:
Command name: Parameter: Value Parameter: Value ...
Response syntax
Simple responses from the server consist of a three digit response code and descriptive text terminated by a new line:
Response code Response text←
If a response carries parameters, the response text is terminated with a colon, and parameter name and value pairs follow on subsequent lines until a blank line is returned:
Response code Response text:←
Parameter: Value←
Parameter: Value←
...
←
Successful response codes
A simple acknowledgement of a command is indicated with a response code of 200:
200 ok←
Other successful responses carry parameters and are indicated with response codes in the range of 201 to 299.
Failure response codes
Failure responses to commands are indicated with response codes in the range of 100 to 199:
100 syntax error
101 unsupported parameter
102 invalid value
103 unsupported
104 disk full
105 no disk
106 disk error
107 timeline empty
109 out of range
110 no input
111 remote control disabled
120 connection rejected
150 invalid state
Asynchronous response codes
The server may return asynchronous messages at any time. These responses are indicated with response codes in the range of 500 to 599:
5xx Response Text:←
Parameter: Value←
Parameter: Value←
Connection response
On connection, an asynchronous message will be delivered:
500 connection info:←
protocol version: Version←
m o del: Model Name←
Connection rejection
Only one client may connect to the server at a time. If other clients attempt to connect concurrently, they will receive an error and be disconnected:
120 connection rejected
Timecode syntax
Timecodes are expressed as non-drop-frame timecode in the format:
H H:M M:SS:F F
Handling of deck "remote" state
The “remote” command may be used to enable or disable the remote control of the deck. Any attempt to change the deck state over ethernet while remote access is disabled will generate an error:
111 remote control disabled
To enable or disable remote control:
remote: enable: "true", "false"
The current remote control state may be overridden allowing remote access over ethernet irrespective of the current remote control state:
remote: override: "true", "false" ←
The override state is only valid for the currently connected ethernet client and only while the connection remains open.
The “remote” command may be used to query the remote control state of the deck by specifying no parameters:
remote
The deck will return the current remote control state:
210 remote info:
enabled: "true", "false"←
ov er rid e: "true", "false"←
←
Asynchronous remote control information change notification is disabled by default and may be configured with the "notify" command. When enabled, changes in remote state will generate a "510 remote info." asynchronous message with the same parameters as the "210 remote info." message.
Closing connection
The "quit" command instructs the server to cleanly shut down the connection:
q uit
Checking connection status
The "ping" command has no function other than to determine if the server is responding:
ping←
Getting help
The "help" or "?" commands return human readable help text describing all available commands and parameters:
help
Or:
?←
The server will respond with a list of all supported commands:
201 help:
Help Text←
Help Text←
←
Switching to preview mode
The "preview" command instructs the deck to switch between preview mode and output mode:
preview: enable: "true", "false"
Playback will be stopped when the deck is switched to preview mode. Capturing will be stopped when the deck is switched to output mode.
Controlling device playback
The "play" command instructs the deck to start playing:
play
The play command accepts a number of parameters which may be used together in most combinations.
By default, the deck will play all remaining clips on the timeline then stop.
The "single clip" parameter may be used to override this behaviour:
play: single clip: "true", "false"
By default, the deck will play at normal (100%) speed. An alternate speed may be specified in percentage between -1600 and 1600:
play: speed: % normal speed
By default, the deck will stop playing when it reaches to the end of the timeline. The "loop" parameter may be used to override this behaviour:
play: loop: "true", "false"
By default, the deck will start playing from the current position on the timeline. The "start" parameter may be specified to override the start-point for playback:
play: start: timecode←
If loop mode is set, the playback loop will be between:
the "start" position and the end of timeline for play forward,
the "start" position and the start of timeline for play backward.
By default the deck will continue playing until the end of the timeline. The "end" parameter may be used to halt playback at the frame before the specified timecode:
play: end: timecode
If loop mode is set, the playback loop will be between:
the start of timeline and the "end" position for play forward,
the end of timeline and the "end" position for play backward.
Note that the "end" position must be:
beyond the current/or start position on timeline for play forward,
before the current/or start position on timeline for play backward.
The "duration" parameter may be used instead of the "end" parameter to halt playback after a duration specified in timecode format:
play: duration: timecode←
These three parameters are not compatible with the "single clip" parameter.
Stopping deck operation
The "stop" command instructs the deck to stop the current playback or capture:
stop
Changing timeline position
The "goto" command instructs the deck to switch to playback mode and change its position within the timeline.
To go to the start of a specific clip:
goto: clip id: Clip ID←
To move forward/back count clips from the current clip on the current timeline:
goto: clip id: +/-count
Note that if the resultant clip id goes beyond the first or last clip on timeline, it will be clamp at the first or last clip.
To go to the start or end of the current clip:
goto: clip: "start", "end"
To go to the start of the first clip or the end of the last clip:
goto: timeline: "start", "end"←
To go to a specified timecode:
goto: timecode: timecode←
To move forward or back a specified duration in timecode:
goto: timecode: "+", "-"duration in timecode←
Note that only one parameter/value pair is allowed for each goto command.
Enumerating supported commands and parameters
The "commands" command returns the supported commands:
commands
The command list is returned in a computer readable XML format:
212 commands:
<commands>
<command name="..."><parameter name="..."/>...</command>
<command name="..."><parameter name="..."/>...</command>
…
</c o m m a nds>
←
More XML tokens and parameters may be added in later releases.
Controlling asynchronous notifications
The "notify" command may be used to enable or disable asynchronous notifications from the server.
To enable or disable transport notifications:
notify: transport: "true", "false"
To enable or disable slot notifications:
notify: slot: "true", "false"
To enable or disable remote notifications:
notify: remote: "true", "false"←
To enable or disable configuration notifications:
notify: configuration: "true", "false"
Multiple parameters may be specified. If no parameters are specified, the server returns the current state of all notifications:
209 notify:←
transport: "true", "false"←
slot: "true", "false"←
re m ot e: "true", "false"←
configuration: "true", "false"←
Retrieving device information
The "device info" command returns information about the connected deck device:
device info←
The server will respond with:
204 device info:←
protocol version: Version←
m od el: Model Name←
unique id: unique alphanumeric identifier←
Retrieving slot information
The "slot info" command returns information about a slot. Without parameters, the command returns information for the currently selected slot:
slot info←
If a slot id is specified, that slot will be queried:
slot info: slot id: SlotID←
The server will respond with slot specific information:
202 slot info:←
slot id: SlotID←
status: "empty", "mounting", "error", "mounted"←
volume name: Volume name←
recording time: recording time available in seconds←
video format: disk's default video format←
Asynchronous slot information change notification is disabled by default and may be configured with the "notify" command. When enabled, changes in slot state will generate a "502 slot info:" asynchronous message with the same parameters as the "202 slot info:" message.
Retrieving clip information
The "disk list" command returns the information for each playable clip on a given disk. Without parameters, the command returns information for the current active disk:
disk list
If a slot id is specified, the disk in that slot will be queried:
disk list: slot id: Slot ID←
The server responds with the list of all playable clips on the disk in the format of: Index, name, formats, and duration in timecode:
206 disk list:←
slot id: Slot ID←
clip index: name file format video format Duration timecode←
clip index: name file format video format Duration timecode←
←
Note that the clip index starts from 1.
Retrieving clip count
The "clips count" command returns the number of clips on the current timeline:
clips count ←
The server responds with the number of clips:
214 clips count: ←
clip count: Count←
Retrieving timeline information
The "clips get" command returns information for each available clip, for a given range in timecode, on the current timeline. Without parameters, the command returns information for all clips on timeline:
clips get←
The server responds with a list of clip IDs, names and timecodes:
205 clips info:←
clip count: Count←
Clip ID: Name Start timecode Duration timecode←
Clip ID: Name Start timecode Duration timecode←
...
Note that the clip list format has changed incompatibly in protocol version 1.1,
i.e., Start timecode information field is inserted to each clip information line.
Retrieving transport information
The "transport info" command returns the state of the transport:
transport info ←
The server responds with transport specific information:
208 transport info:
status: "preview", "stopped", "play", "forward", "rewind", "jog", "shuttle", "record"←
speed: Play speed between -1600 and 1600%←
slot id: Slot ID or "none"←
display timecode: timecode←
ti m eco de: timecode←
clip id: Clip ID or "none"←
video format: Video format←
lo op: "true", "false"←
The "timecode" value is the timecode within the current timeline for playback or the clip for record. The "display timecode" is the timecode displayed on the front of the deck. The two timecodes will differ in some deck modes.
Asynchronous transport information change notification is disabled by default and may be configured with the "notify" command. When enabled, changes in transport state will generate a "508 transport info:" asynchronous message with the same parameters as the "208 transport info:" message.
Video Formats
The following video formats are currently supported on HyperDeck Studio:
NTSC, PAL, NTSCp, PALp
720p50, 720p5994, 720p60
1080p23976, 1080p24, 1080p25, 1080p2997, 1080p30
1080i50, 1080i5994, 1080i60
HyperDeck Studio Pro adds supports for 4k formats:
4Kp23976, 4Kp24, 4Kp25, 4Kp2997, 4Kp30
HyperDeck Studio 12G adds support for the following 4k formats:
4Kp50, 4Kp5994, 4Kp60
Video format support may vary between models and software releases.
File Formats
The HyperDeck Studio and HyperDeck Studio Pro currently support the following file formats:
QuickTimeUncompressed
QuickTimeProResHQ
QuickTimeProRes
QuickTimeProResLT
QuickTimeProResProxy
The HyperDeck Studio Pro and HyperDeck Studio 12G additionally support the following file formats:
QuickTimeDNxHR220
DNxHR220
Supported file formats may vary between models and software releases.
Querying and updating configuration information
The "configuration" command may be used to query the current configuration of the deck:
configuration
The server returns the configuration of the deck:
211 configuration:
audio input: "embedded", "XLR", "RCA"
video input: "SDI", "HDMI", "component"
file format: File format←
←
One or more configuration parameters may be specified to change the configuration of the deck.
To change the current video input:
configuration: video input: "SDI", "HDMI", "component"
Valid video inputs may vary between models. To configure the current audio input:
configuration: audio input: "embedded", "XLR", "RCA"
Valid audio inputs may vary between models.
To configure the current file format:
configuration: file format: File format←
Note that changes to the file format may require the deck to reset, which will cause the client connection to be closed. In such case, response code 213 will be returned (instead of 200) before the client connection is closed:
"213 deck rebooting"
Asynchronous configuration information change notification is disabled by default and may be configured with the "notify" command. When enabled, changes in configuration will generate a "511 configuration:" asynchronous message with the same parameters as the "211 configuration:" message.
Selecting active slot and video format
The "slot select" command instructs the deck to switch to a specified slot, or/and to select a specified output video format.
To switch to a specified slot:
slot select: slot id: slotID←
To select the output video format:
slot select: video format: video format←
Either or all slot select parameters may be specified. Note that selecting video format will result in a rescan of the disk to reconstruct the timeline with all clips of the specified video format.
Clearing the current timeline
The "clips clear" command instructs the deck to empty the current timeline:
clips clear
The server responds with
200 ok←
Adding a clip to the current timeline
The "clips add:" command instructs the deck to add a clip to the current timeline:
clips add: name: "clip name"
The server responds with
200 ok←
or in case of error
1xx error description
Configuring the watchdog
The “watchdog” command instructs the deck to monitor the connected client and terminate the connection if the client is inactive for at least a specified period of time.
To configure the watchdog:
watchdog: period: period in seconds←
To avoid disconnection, the client must send a command to the server at least every period seconds. Note that if the period is set to 0 or less than 0, connection monitoring will be disabled.
Assistance
Obtenir de l'aide
natural_image
Circular portrait photo of a smiling man in a dark shirt against a textured gray background (no text or symbols)Willkommen!
CEO Blackmagic Design
Inhaltsverzeichnis
HyperDeck Digitalrekorder
Erste Schritte 212
Aufzeichnen
Wiedergabe
natural_image
Diagram showing a server rack connected to an internal drive, with an orange arrow indicating the process (no text or symbols present)
4 - Preset/Select Control
natural_image
Generic film strip icon with a stylized 'Q' symbol, no text or symbols present.

Mac OS
DNxHD and DNxHR MXF files recorded by HyperDeck can be opened with Avid Media Composer and DaVinci Resolve for Mac. DNxHD codecs can be downloaded free from http://www.avid.com/products/avid-dnxhr-and-dnxhd.
DNxHD and DNxHR MXF files recorded by HyperDeck can be opened with Avid Media Composer and DaVinci Resolve for Windows. DNxHD codecs can be downloaded free from http://www.avid.com/products/avid-dnxhr-and-dnxhd.
natural_image
Silhouette of a human head against a blue sky background (no text or symbols)natural_image
Person sitting by a coastal cliff at sunset, overlooking the sea with sun rays and distant hills (no text or symbols visible)natural_image
Interior view of a car with a person visible through the window, enclosed by a bounding box (no text or symbols)natural_image
Interior view of a modern living room with large windows, high furniture, and a person standing near a circular pendant light (no visible text or symbols)line
| Frequency | Gain | | --------- | ---- | | 47 | 0 | | 143 | -9.5 | | 892 | +7.5 | | 2x44 | -0.7 | | 144 | 0 | | 246 | -0.3 | | 0 | 0 |The Blackmagic HyperDeck Ethernet Protocol is a text based protocol accessed by connecting to TCP port 9993 on HyperDeck Studio models that have a built in Ethernet connection. If you are a software developer you can use the protocol to construct devices that integrate with our products. Here at Blackmagic Design our approach is to open up our protocols and we eagerly look forward to seeing what you come up with!
Protocol Commands
| Command Command Description | |
| help or ? Provides help text on all commands and parameters | |
| commands return commands in XML format | |
| device info return device information | |
| disk list query clip list on active disk | |
| disk list: slot id: n query clip list on disk in slot n | |
| quit disconnect ethernet control | |
| ping check device is responding | |
| preview: enable: true/false switch to preview or output | |
| play play from current timecode | |
| play: speed: -1600 to 1600 play at specific speed | |
| play: loop: true/false play in loops or stop-at-end | |
| play: single clip: true/false play current clip or all clips | |
| playrange set: clip id: n | set play range to play clip n only |
| playrange set: in: inT out: outT | set play range to play between:- timecode inT and timecode outT |
| playrange clear clear/reset play range setting | |
| play on startup | query unit play on startup state |
| play on startup: enable: true/false | enable or disable play on startup |
| play on startup: single clip: true/false | play single clip or all clips on startup |
| record | record from current input |
| record: name: name | record named clip |
| stop stop playback or recording | |
| clips count | query number of clips on timeline |
| clips get | query all timeline clips |
| clips get: clip id: n | query a timeline clip info |
| clips get: clip id: n count: m | query m clips starting from n |
| clips add: name: name | append a clip to timeline |
| clips clear empty timeline clip list | |
| transport info query current activity | |
| slot info query active slot | |
| slot info: slot id: n query slot n | |
| slot select: slot id: 1/2 switch to specified slot | |
| slot select: video format: format | load clips of specified format |
| notify query notification status | |
| notify: remote: true/false set remote notifications | |
| notify: transport: true/false set transport notifications | |
| notify: slot: true/false set slot notifications | |
| notify: configuration: true/false set configuration notifications | |
| notify: dropped frames: true/false | set dropped frames notifications |
| goto: clip id: n goto clip id n | |
| goto: clip id: +n | go forward n clips |
| goto: clip id: -n | go backward n clips |
| goto: clip: start/end | goto start or end of clip |
| goto: timeline: start/end | goto start or end of timeline |
| goto: timecode: timecode | goto specified timecode |
| goto: timecode: +timecode | go forward timecode duration |
| goto: timecode: -timecode | go backward timecode duration |
| goto: slot id: n | goto slot id n |
| jog: timecode: timecode | jog to timecode |
| jog: timecode: +timecode | jog forward timecode duration |
| jog: timecode: -timecode | jog backward timecode duration |
| shuttle: speed: -1600 to 1600 | shuttle with speed |
| remote | query unit remote control state |
| remote: enable: true/false | enable or disable remote control |
| remote: override: true/false | session override remote control |
| configuration | query configuration settings |
| configuration: video input: SDI | switch to SDI input |
| configuration: video input: HDMI | switch to HDMI input |
| configuration: video input: component | switch to component input |
| configuration: audio input: embedded | capture embedded audio |
| configuration: audio input: XLR | capture XLR audio |
| configuration: audio input: RCA | capture RCA audio |
| configuration: file format: format | switch to specific file format |
| uptime return time since last boot | |
| format: prepare: format | prepare a disk formatting operation to filesystem format |
| format: confirm: token | perform a pre-prepared formatting operation using token |
| identify: enable: true/false identify the device | |
| watchdog: period: period in seconds | client connection timeout |
Command Combinations
You can combine the parameters into a single command, for example:
play: speed: 200 loop: true single clip: true
Or for configuration:
configuration: video input: SDI audio input: XLR
Or to switch to the second disk, but only play NTSC clips:
slot select: slot id: 2 video format: NTSC
Using XML
While you can use the Terminal to talk to HyperDeck, if you are writing software you can use XML to confirm the existence of a specific command based on the firmware of the HyperDeck you are communicating with. This helps your software user interface adjust to the capabilities of the specific HyperDeck model and software version.
Protocol Details
Connection
The HyperDeck Ethernet server listens on TCP port 9993.
Basic syntax
The HyperDeck protocol is a line oriented text protocol. Lines from the server will be separated by an ascii CR LF sequence. Messages from the client may be separated by LF or CR LF.
New lines are represented in this document as a "←" symbol.
Command syntax
Command parameters are usually optional. A command with no parameters is terminated with a new line:
Command name←
If parameters are specified, the command name is followed by a colon, then pairs of parameter names and values. Each parameter name is terminated with a colon character:
Command name: Parameter: Value Parameter: Value ...
Response syntax
Simple responses from the server consist of a three digit response code and descriptive text terminated by a new line:
Response code Response text←
If a response carries parameters, the response text is terminated with a colon, and parameter name and value pairs follow on subsequent lines until a blank line is returned:
Response code Response text:
Parameter: Value←
Parameter: Value←
...
←
Successful response codes
A simple acknowledgement of a command is indicated with a response code of 200:
200 ok←
Other successful responses carry parameters and are indicated with response codes in the range of 201 to 299.
Failure response codes
Failure responses to commands are indicated with response codes in the range of 100 to 199:
100 syntax error
101 unsupported parameter
102 invalid value
103 unsupported
104 disk full
105 no disk
106 disk error
107 timeline empty
108 internal error
109 out of range
110 no input
111 remote control disabled
120 connection rejected
150 invalid state
151 invalid codec
160 invalid format
161 invalid token
162 format not prepared
Asynchronous response codes
The server may return asynchronous messages at any time. These responses are indicated with response codes in the range of 500 to 599:
5xx Response Text:←
Parameter: Value←
Parameter: Value←
←
Connection response
On connection, an asynchronous message will be delivered:
500 connection info:
protocol version: Version←
m
。
del:
Model Name←
←
Connection rejection
Only one client may connect to the server at a time. If other clients attempt to connect concurrently, they will receive an error and be disconnected:
120 connection rejected
Timecode syntax
Timecodes are expressed as non-drop-frame timecode in the format:
H
H:M
M:SS:F
F
Handling of deck "remote" state
The “remote” command may be used to enable or disable the remote control of the deck. Any attempt to change the deck state over ethernet while remote access is disabled will generate an error:
111 remote control disabled←
To enable or disable remote control:
remote: enable: "true", "false" ←
The current remote control state may be overridden allowing remote access over ethernet irrespective of the current remote control state:
remote: override: "true", "false" ←
The override state is only valid for the currently connected ethernet client and only while the connection remains open.
The "remote" command may be used to query the remote control state of the deck by specifying no parameters:
remote
The deck will return the current remote control state:
210 remote info:←
ena bled: "true", "false"←
overrid e: "true", "false"←
Asynchronous remote control information change notification is disabled by default and may be configured with the "notify" command. When enabled, changes in remote state will generate a "510 remote info:" asynchronous message with the same parameters as the "210 remote info:" message.
Closing connection
The "quit" command instructs the server to cleanly shut down the connection:
q uit
Checking connection status
The "ping" command has no function other than to determine if the server is responding:
ping←
Getting help
The "help" or "?" commands return human readable help text describing all available commands and parameters:
help
Or:
?
The server will respond with a list of all supported commands:
201 help:←
Help Text←
Help Text←
Switching to preview mode
The "preview" command instructs the deck to switch between preview mode and output mode:
preview: enable: "true", "false"
Playback will be stopped when the deck is switched to preview mode. Capturing will be stopped when the deck is switched to output mode.
Controlling device playback
The "play" command instructs the deck to start playing:
play←
The play command accepts a number of parameters which may be used together in most combinations.
By default, the deck will play all remaining clips on the timeline then stop.
The "single clip" parameter may be used to override this behaviour:
play: single clip: "true", "false"
By default, the deck will play at normal (100%) speed. An alternate speed may be specified in percentage between -1600 and 1600:
play: speed: % normal speed←
By default, the deck will stop playing when it reaches to the end of the timeline. The "loop" parameter may be used to override this behaviour:
play: loop: "true", "false"
The "playrange" command instructs the deck to play all the clips. To override this behaviour and select a particular clip:
playrange set: clip id: Clip ID←
To only play a certain timecode range:
playrange set: in: in timecode out: out timecode←
To clear a set playrange and return to the default value:
playrange clear
The "play on startup command" instructs the deck on what action to take on startup. By default, the deck will not play. Use the "enable" command to start playback after each power up.
play on startup: enable "true", "false"
By default, the unit will play back all clips on startup. Use the "single clip" command to override.
play on startup: single clip: "true", "false"
Stopping deck operation
The "stop" command instructs the deck to stop the current playback or capture:
stop←
Changing timeline position
The "goto" command instructs the deck to switch to playback mode and change its position within the timeline.
To go to the start of a specific clip:
goto: clip id: Clip ID←
To move forward/back count clips from the current clip on the current timeline:
goto: clip id: +/-count
Note that if the resultant clip id goes beyond the first or last clip on timeline, it will be clamp at the first or last clip.
To go to the start or end of the current clip:
goto: clip: "start", "end"
To go to the start of the first clip or the end of the last clip:
goto: timeline: "start", "end"
To go to a specified timecode:
goto: timecode: timecode←
To move forward or back a specified duration in timecode:
goto: timecode: "+", "-"duration in timecode←
To specify between slot 1 and slot 2:
goto: slot id: Slot ID←
Note that only one parameter/value pair is allowed for each goto command.
Enumerating supported commands and parameters
The "commands" command returns the supported commands:
commands
The command list is returned in a computer readable XML format:
212 comm and s:
<commands>
<command name="..."><parameter name="..."/...</command>
<command name="..."><parameter name="..."/...</command>
...
</c o m m a n ds>
More XML tokens and parameters may be added in later releases.
Controlling asynchronous notifications
The "notify" command may be used to enable or disable asynchronous notifications from the server.
To enable or disable transport notifications:
notify: transport: "true", "false"
To enable or disable slot notifications:
notify: slot: "true", "false"
To enable or disable remote notifications:
notify: remote: "true", "false"
To enable or disable configuration notifications:
notify: configuration: "true", "false"
Multiple parameters may be specified. If no parameters are specified, the server returns the current state of all notifications:
209 notify:←
transport: "true", "false"←
slot: "true", "false"←
re m ote: "true", "false"←
configuration: "true", "false"←
Retrieving device information
The "device info" command returns information about the connected deck device:
device info←
The server will respond with:
204 device info:←
protocol version: Version←
m o d e l: Model Name←
unique id: unique alphanumeric identifier←
←
Retrieving slot information
The "slot Info" command returns information about a slot. Without parameters, the command returns information for the currently selected slot:
slot info←
If a slot id is specified, that slot will be queried:
slot info: slot id: SlotID←
The server will respond with slot specific information:
202 slot info:←
slot id: SlotID←
status: "empty", "mounting", "error", "mounted"←
volume name: Volume name←
recording time: recording time available in seconds←
video format: disk's default video format←
Asynchronous slot information change notification is disabled by default and may be configured with the "notify" command. When enabled, changes in slot state will generate a "502 slot info:" asynchronous message with the same parameters as the "202 slot info:" message.
Retrieving clip information
The "disk list" command returns the information for each playable clip on a given disk. Without parameters, the command returns information for the current active disk:
disk list
If a slot id is specified, the disk in that slot will be queried:
disk list: slot id: SlotID←
The server responds with the list of all playable clips on the disk in the format of: Index, name, formats, and duration in limecode:
206 disk list:←
slot id: Slot ID←
clip index: name file format video format Duration timecode←
clip Index: name file format video format Duration timecode←
...
Note that the clip index starts from 1.
Retrieving clip count
The "clips count" command returns the number of clips on the current timeline:
clips count ←
The server responds with the number of clips:
214 clips count: ←
clip count: Count←
Retrieving timeline information
The "clips get" command returns information for each available clip, for a given range in timecode, on the current timeline. Without parameters, the command returns information for all clips on timeline:
clips get←
The server responds with a list of clip IDs, names and timecodes:
205 clips info:
clip count: Count←
Clip ID: Name Start timecode Duration timecode←
Clip ID: Name Start timecode Duration timecode←
←
Note that the clip list format has changed incompatibly in protocol version 1.1,
i.e., Start timecode information field is inserted to each clip information line.
Retrieving transport information
The "transport info" command returns the state of the transport:
transport info ←
The server responds with transport specific information:
208 transport info:
status: "preview", "stopped", "play", "forward", "rewind", "jog", "shuttle", "record" ←
sp eed: Play speed between -1600 and 1600 %←
slot id: Slot ID or "none"←
display timecode: timecode←
ti
m
ecode:
timecode←
clip id: Clip ID or "none"←
video format: Video format←
lo
。
p:
"true", "false"
←
The "timecode" value is the timecode within the current timeline for playback or the clip for record. The "display timecode" is the timecode displayed on the front of the deck. The two timecodes will differ in some deck modes.
Asynchronous transport information change notification is disabled by default and may be configured with the "notify" command. When enabled, changes in transport state will generate a "508 transport info:" asynchronous message with the same parameters as the "208 transport info:" message.
Video Formats
The following video formats are currently supported on HyperDeck Studio:
NTSC, PAL, NTSCp, PALp
720p50, 720p5994, 720p60
1080p23976, 1080p24, 1080p25, 1080p2997, 1080p30
1080i50, 1080i5994, 1080i60
HyperDeck Studio Pro adds supports for 4k formats:
4Kp23976, 4Kp24, 4Kp25, 4Kp2997, 4Kp30
HyperDeck Studio 12G adds support for the following 4k formats:
4Kp50, 4Kp5994, 4Kp60
Video format support may vary between models and software releases.
File Formats
The HyperDeck Studio and HyperDeck Studio Pro currently support the following file formats:
QuickTimeUncompressed
QuickTimeProResHQ
QuickTimeProRes
QuickTimeProResLT
QuickTimeProResProxy
QuickTimeDNxHD220
DNxHD220
HyperDeck Studio Mini and HyperDeck Studio 12G additionally support the following file formats:
QuickTimeDNxHR_HQX
DNxHR_HQX
HyperDeck Studio Mini also supports the following file formats:
H.264Low
H.264Medium
H.264High
QuickTimeDNxHD45
DNxHD45
QuickTimeDNxHD145
DNxHD145
QuickTimeDNxHR_SQ
DNxHR_SQ
QuicktimeDNxHR_LB
DNxHR_LB
Supported file formats may vary between models and software releases.
Querying and updating configuration information
The "configuration" command may be used to query the current configuration of the deck:
configuration
The server returns the configuration of the deck:
211 configuration:
audio input: "embedded", "XLR", "RCA"
video input: "SDI", "HDMI", "component"
file format: File format←
←
One or more configuration parameters may be specified to change the configuration of the deck.
To change the current video input:
configuration: video input: "SDI", "HDMI", "component"
Valid video inputs may vary between models. To configure the current audio input:
configuration: audio input: "embedded", "XLR", "RCA"
Valid audio inputs may vary between models.
To configure the current file format:
configuration: file format: File format
Note that changes to the file format may require the deck to reset, which will cause the client connection to be closed. In such case, response code 213 will be returned (instead of 200) before the client connection is closed:
"213 deck rebooting"
Asynchronous configuration information change notification is disabled by default and may be configured with the "notify" command. When enabled, changes in configuration will generate a "511 configuration:" asynchronous message with the same parameters as the "211 configuration:" message.
Selecting active slot and video format
The "slot select" command instructs the deck to switch to a specified slot, or/and to select a specified output video format.
To switch to a specified slot:
slot select: slot id: slot ID←
To select the output video format:
slot select: video format: video format
Either or all slot select parameters may be specified. Note that selecting video format will result in a rescan of the disk to reconstruct the timeline with all clips of the specified video format.
Clearing the current timeline
The "clips clear" command instructs the deck to empty the current timeline:
clips clear
The server responds with
200 ok←
Adding a clip to the current timeline
The "clips add:" command instructs the deck to add a clip to the current timeline:
clips add: name: "clip name"←
The server responds with
200 ok←
or in case of error
1xx error description←
Configuring the watchdog
The "watchdog" command instructs the deck to monitor the connected client and terminate the connection if the client is inactive for at least a specified period of time.
To configure the watchdog:
watchdog: period: period in seconds←
To avoid disconnection, the client must send a command to the server at least every period seconds. Note that if the period is set to 0 or less than 0, connection monitoring will be disabled.