Anton Khirnov [Fri, 15 Apr 2016 13:00:29 +0000 (15:00 +0200)]
h264: call ff_h264_fill_mbaff_ref_list() when constructing the normal ref list
There is no real reason to call it separately.
Anton Khirnov [Fri, 15 Apr 2016 12:45:48 +0000 (14:45 +0200)]
h264: move initialising the explicit pred weight table for MBAFF
Currently it's done in the code that initialises the ref list for
MBAFF, which is not a logical place for it. Move it to the function that
parses the pred table from the bitstream, which is analogous to what is
done for the implicit weight table as well.
Anton Khirnov [Thu, 14 Apr 2016 18:59:20 +0000 (20:59 +0200)]
h264: drop an outdated comment
Anton Khirnov [Thu, 14 Apr 2016 18:53:59 +0000 (20:53 +0200)]
h264: move direct mode inits out of h264_slice_header_parse()
This code does not do any bitstream parsing, it just initializes some
internal state.
Anton Khirnov [Wed, 13 Apr 2016 15:53:50 +0000 (17:53 +0200)]
h264: start splitting decode_slice_header()
That function is currently very long and entangles bitstream parsing and
decoder configuration. This makes the code much harder to read than
necessary.
Begin splitting the code that configures the decoder state based on the
slice header information from the parsing of the slice header.
Mark Thompson [Tue, 31 May 2016 09:21:19 +0000 (10:21 +0100)]
vaapi_h265: cu_qp_delta should not be used in constant-QP mode
Mark Thompson [Wed, 18 May 2016 09:19:07 +0000 (10:19 +0100)]
vaapi_h264: Add source version identifier as unregistered SEI
Contains the libavcodec version, the VAAPI version and the libva
driver vendor string.
Mark Thompson [Tue, 17 May 2016 14:52:58 +0000 (15:52 +0100)]
vaapi_h264: Add support for SEI messages
Send buffering_period and pic_timing messages when in modes
targetting bitrate. Also adds NAL HRD parameters to VUI.
Mark Thompson [Sat, 9 Apr 2016 15:48:27 +0000 (16:48 +0100)]
vaapi_encode: Add support for writing arbitrary additional packed headers
Mark Thompson [Tue, 17 May 2016 14:14:57 +0000 (15:14 +0100)]
vaapi_h264: Add support for VUI parameters
Supports aspect ratio, colour format and timing information.
Anton Khirnov [Thu, 9 Jun 2016 08:29:55 +0000 (10:29 +0200)]
h264: drop unused H264Context.gb
Signed-off-by: Diego Biurrun <diego@biurrun.de>
Diego Biurrun [Tue, 7 Jun 2016 16:02:34 +0000 (18:02 +0200)]
Drop unnecessary golomb.h #includes
Diego Biurrun [Tue, 7 Jun 2016 15:18:14 +0000 (17:18 +0200)]
Drop unnecessary unary.h #includes
Diego Biurrun [Tue, 7 Jun 2016 14:35:18 +0000 (16:35 +0200)]
dvbsub_parser: Add missing mem.h #include
Diego Biurrun [Sat, 4 Jun 2016 14:53:54 +0000 (16:53 +0200)]
gsm: Move requant_tab table to the gsm tables file
This avoids duplicating the table in the gsm template file.
Also adjust the table type to uint8_t to save space.
Diego Biurrun [Sat, 4 Jun 2016 15:13:39 +0000 (17:13 +0200)]
mpc: Drop unused GetBitContext context member
Diego Biurrun [Sat, 4 Jun 2016 15:12:41 +0000 (17:12 +0200)]
svq1enc: Drop unused GetBitContext context member
Diego Biurrun [Sat, 4 Jun 2016 06:41:15 +0000 (08:41 +0200)]
vorbis: Kill some pointless debug code
Diego Biurrun [Sat, 4 Jun 2016 10:58:11 +0000 (12:58 +0200)]
mss2: Drop a silly assert
Diego Biurrun [Sat, 4 Jun 2016 13:07:30 +0000 (15:07 +0200)]
get_bits: Move BITSTREAM_READER_LE definition before all relevant #includes
This avoids the danger that get_bits.h might get indirectly #included before
BITSTREAM_READER_LE is defined.
Also sort headers into canonical order where appropriate.
Diego Biurrun [Sat, 4 Jun 2016 15:04:45 +0000 (17:04 +0200)]
indeo2: Drop disabled big-endian ir2_codes table
Only the little-endian variant of the table is ever used.
Diego Biurrun [Sat, 4 Jun 2016 09:45:16 +0000 (11:45 +0200)]
Remove unnecessary get_bits.h #includes
Paul B Mahol [Wed, 1 Jun 2016 19:10:42 +0000 (15:10 -0400)]
sgirledec: simplify, no need to use reget buffer
Signed-off-by: Paul B Mahol <onemda@gmail.com>
Paul B Mahol [Wed, 1 Jun 2016 19:46:49 +0000 (15:46 -0400)]
aic: add frame threading support
Signed-off-by: Paul B Mahol <onemda@gmail.com>
Vittorio Giovara [Fri, 3 Jun 2016 18:09:18 +0000 (14:09 -0400)]
fate: Move Canopus decoder tests to a separate file
Signed-off-by: Vittorio Giovara <vittorio.giovara@gmail.com>
Vittorio Giovara [Fri, 3 Jun 2016 16:14:50 +0000 (12:14 -0400)]
avconv: Do not copy extradata if source buffer is empty
Fixes clang-usan runtime error "null pointer passed as argument 2,
which is declared to never be null" while streamcopying.
Signed-off-by: Vittorio Giovara <vittorio.giovara@gmail.com>
Denis Charmet [Sat, 4 Jun 2016 11:22:42 +0000 (13:22 +0200)]
vp9: Return the correct size when decoding a superframe
According to avcodec.h, avcodec_decode_video2 should return the number of
bytes used if a frame was decoded.
The current implementation returns size - used size of all the subframes.
This fixes the VLC's bug https://trac.videolan.org/vlc/ticket/16836.
The superframe is always fully consumed.
Signed-off-by: Diego Biurrun <diego@biurrun.de>
Diego Biurrun [Fri, 27 May 2016 18:14:21 +0000 (20:14 +0200)]
build: Only enable symbol reduction if the compiler does proper DCE
With compilers that do not support proper dead code elimination, like
Sun C 5.12, linking fails due to missing references to unavailable,
but also unused, symbols.
Bug-Id: 895
Diego Biurrun [Fri, 27 May 2016 09:38:38 +0000 (11:38 +0200)]
build: Simplify postprocessing of linker version script files
Generate the files in a single postprocessing step w/o intermediate files.
Diego Biurrun [Tue, 24 May 2016 00:18:40 +0000 (02:18 +0200)]
build: Change structure of the linker version script templates
Split version files into one line per symbol/directive to allow compatibility
with the Solaris linker without preprocessing and eliminate $ from version file
templates to simplify the postprocessing shell command.
Diego Biurrun [Tue, 24 May 2016 10:39:54 +0000 (12:39 +0200)]
build: Print a message when generating version scripts
Diego Biurrun [Wed, 25 May 2016 11:34:12 +0000 (13:34 +0200)]
asm: FF_-prefix internal macros used in inline assembly
These warnings conflict with system macros on Solaris, producing
truckloads of warnings about macro redefinition.
Diego Biurrun [Tue, 24 May 2016 18:06:03 +0000 (20:06 +0200)]
Drop unnecessary libavutil/x86/asm.h #includes
Luca Barbato [Thu, 26 May 2016 00:41:25 +0000 (02:41 +0200)]
ac3: Check the array bound before dereferencing
CC: libav-stable@libav.org
Signed-off-by: Luca Barbato <lu_zero@gentoo.org>
Mark Thompson [Tue, 17 May 2016 22:08:57 +0000 (23:08 +0100)]
vaapi_h264: Add trivial support for low-power encoding
Experimental; requires Skylake and VAAPI 0.39.1 (not yet released).
Also increases the allowed range of the quality option - in low-power
mode, the Intel driver supports levels 1-8 (and 0 meaning default).
Mark Thompson [Mon, 16 May 2016 13:01:31 +0000 (14:01 +0100)]
vaapi_h264: Fix frame_num after non-reference frames
Non-reference frames (nal_ref_idc == 0) should be discardable, so
frame_num does not advance after them. Before this change, a stream
containing unreferenced B-frames would be rejected by the reference
decoder.
Mark Thompson [Wed, 18 May 2016 09:58:56 +0000 (10:58 +0100)]
vaapi_encode: Check config attributes before creating config
This prevents attempts to use unsupported modes, such as low-power
H.264 mode on non-Skylake targets. Also fixes a crash on invalid
configuration, when trying to destroy an invalid VA config/context.
Diego Biurrun [Tue, 24 May 2016 10:16:52 +0000 (12:16 +0200)]
build: Ignore generated mapfile and remove it on distclean
Anton Khirnov [Tue, 24 May 2016 20:20:45 +0000 (22:20 +0200)]
FATE: drop the audio stream from the dxtory test
This is a video test and there are no audio packets in the sample
anyway.
Anton Khirnov [Tue, 24 May 2016 14:49:19 +0000 (16:49 +0200)]
avconv: fix parsing bitstream filters
The current code modifies the user-supplied string, which is shared for
the whole output file. So a bitstream filter specification applied to
multiple streams would not work correctly.
Anton Khirnov [Tue, 24 May 2016 14:36:16 +0000 (16:36 +0200)]
avconv: fix a check for av_bsf_get_by_name() return value
Anton Khirnov [Thu, 19 May 2016 17:08:06 +0000 (19:08 +0200)]
avconv_vaapi: use the hwcontext device creation API
Anton Khirnov [Thu, 19 May 2016 17:08:06 +0000 (19:08 +0200)]
avconv_dxva2: use the hwcontext device creation API
Anton Khirnov [Thu, 19 May 2016 17:08:06 +0000 (19:08 +0200)]
avconv_vdpau: use the hwcontext device creation API
Anton Khirnov [Thu, 19 May 2016 17:19:20 +0000 (19:19 +0200)]
hwcontext_vaapi: implement device creation
Anton Khirnov [Thu, 19 May 2016 17:19:20 +0000 (19:19 +0200)]
hwcontext_dxva2: implement device creation
Anton Khirnov [Thu, 19 May 2016 17:19:20 +0000 (19:19 +0200)]
hwcontext_cuda: implement device creation
Anton Khirnov [Thu, 19 May 2016 14:33:15 +0000 (16:33 +0200)]
hwcontext_vdpau: implement device creation
Anton Khirnov [Thu, 19 May 2016 13:59:25 +0000 (15:59 +0200)]
hwcontext: add a function for opening devices
Andrey Turkin [Wed, 25 May 2016 11:16:14 +0000 (14:16 +0300)]
lavc: handle hw_frames_ctx where necessary
avcodec_copy_context() didn't handle hw_frames_ctx references correctly
which could cause crashes.
Signed-off-by: Anton Khirnov <anton@khirnov.net>
Diego Biurrun [Mon, 23 May 2016 23:20:34 +0000 (01:20 +0200)]
golomb: Give svq3_get_se_golomb()/svq3_get_ue_golomb() better names
Diego Biurrun [Mon, 23 May 2016 20:15:43 +0000 (22:15 +0200)]
fate: More fine-grained dependencies for demuxer tests
Diego Biurrun [Mon, 23 May 2016 20:15:10 +0000 (22:15 +0200)]
fate: More fine-grained dependencies for voice codec tests
Martin Storsjö [Tue, 24 May 2016 08:20:28 +0000 (11:20 +0300)]
rtsp: Use avcodec_descriptor_get instead of avcodec_find_decoder
This is only used for logging a human readable codec name for
debugging.
Signed-off-by: Martin Storsjö <martin@martin.st>
Diego Biurrun [Tue, 24 May 2016 10:32:01 +0000 (12:32 +0200)]
avcodec: Bump micro version after changing public JPEG 2000 defines
Francois Cartegnie [Mon, 23 May 2016 12:12:15 +0000 (14:12 +0200)]
jpeg2000: Fix profile define values
Signed-off-by: Diego Biurrun <diego@biurrun.de>
Anton Khirnov [Sun, 22 May 2016 08:46:19 +0000 (10:46 +0200)]
avfiltergraph: check the query_formats() return value
Anton Khirnov [Sat, 21 May 2016 10:05:38 +0000 (12:05 +0200)]
lavc: document that avcodec_close() should not be used
We cannot deprecate it until the new parser API is in place, because of
the way libavformat works. But the majority of the users can already
simply replace it with avcodec_free_context(), which will simplify the
transition once it is finally deprecated.
Anton Khirnov [Sat, 21 May 2016 09:57:28 +0000 (11:57 +0200)]
lavc: deprecate avcodec_get_context_defaults3()
This function is supposed to "reset" a codec context to a clean state so
that it can be opened again. The only reason it exists is to allow using
AVStream.codec as a decoding context (after it was already
opened/used/closed by avformat_find_stream_info()). Since that behaviour
is now deprecated, there is no reason for this function to exist
anymore.
Anton Khirnov [Sat, 21 May 2016 09:46:44 +0000 (11:46 +0200)]
lavc: deprecate avcodec_copy_context()
Since AVCodecContext contains a lot of complex state, copying a codec
context is not a well-defined operation. The purpose for which it is
typically used (which is well-defined) is copying the stream parameters
from one codec context to another. That is now possible with through the
AVCodecParameters API. Therefore, there is no reason for
avcodec_copy_context() to exist.
Anton Khirnov [Sat, 21 May 2016 09:41:37 +0000 (11:41 +0200)]
lavf: update muxing doxy
Describe the new AVCodecParameters API.
Luca Barbato [Tue, 19 Apr 2016 04:35:53 +0000 (06:35 +0200)]
mp3: Make the extrasize explicit
Initialize the bit buffer with the correct size (amount of bits that will
be read) instead of relying on the bitstream reader overreading the
correct values.
Signed-off-by: Luca Barbato <lu_zero@gentoo.org>
Signed-off-by: Diego Biurrun <diego@biurrun.de>
Diego Biurrun [Sat, 21 May 2016 11:31:24 +0000 (13:31 +0200)]
get_bits: Drop some TRACE-level debug code
It will not be provided by the new bit reader anyway.
Diego Biurrun [Sat, 21 May 2016 11:41:19 +0000 (13:41 +0200)]
dump: Drop unused variable
Diego Biurrun [Sat, 21 May 2016 11:49:46 +0000 (13:49 +0200)]
avconv: Use more precise deprecation ifdefs
This fixes compilation with the libavcodec version bumped to 58.
Anton Khirnov [Sat, 21 May 2016 09:37:33 +0000 (11:37 +0200)]
avconv: stop using AVStream.codec
It is now only used by the av_parser_change() call during streamcopy, so
allocate a special AVCodecContext instance for this case. This instance
should go away when the new parser API is finished.
Signed-off-by: Diego Biurrun <diego@biurrun.de>
Anton Khirnov [Sat, 14 May 2016 14:47:55 +0000 (16:47 +0200)]
nvenc: allow setting the number of slices
Based on a patch by Agatha Hu <ahu@nvidia.com>
Philip Langdale [Wed, 28 Jan 2015 17:05:53 +0000 (09:05 -0800)]
nvenc: De-compensate aspect ratio compensation of DVD-like content.
For reasons we are not privy to, nvidia decided that the nvenc encoder
should apply aspect ratio compensation to 'DVD like' content, assuming that
the content is not BT.601 compliant, but needs to be BT.601 compliant. In
this context, that means that they make the following, questionable,
assumptions:
1) If the input dimensions are 720x480 or 720x576, assume the content has
an active area of 704x480 or 704x576.
2) Assume that whatever the input sample aspect ratio is, it does not account
for the difference between 'physical' and 'active' dimensions.
From these assumptions, they then conclude that they can 'help', by adjusting
the sample aspect ratio by a factor of 45/44. And indeed, if you wanted to
display only the 704 wide active area with the same aspect ratio as the full
720 wide image - this would be the correct adjustment factor, but what if you
don't? And more importantly, what if you're used to lavc not making this kind
of adjustment at encode time - because none of the other encoders do this!
And, what if you had already accounted for BT.601 and your input had the
correct attributes? Well, it's going to apply the compensation anyway!
So, if you take some content, and feed it through nvenc repeatedly, it
will keep scaling the aspect ratio every time, stretching your video out
more and more and more.
So, clearly, regardless of whether you want to apply bt.601 aspect ratio
adjustments or not, this is not the way to do it. With any other lavc
encoder, you would do it as part of defining your input parameters or do
the adjustment at playback time, and there's no reason by nvenc should
be any different.
This change adds some logic to undo the compensation that nvenc would
otherwise do.
nvidia engineers have told us that they will work to make this
compensation mechanism optional in a future release of the nvenc
SDK. At that point, we can adapt accordingly.
Signed-off-by: Philip Langdale <philipl@overt.org>
Reviewed-by: Timo Rothenpieler <timo@rothenpieler.org>
Signed-off-by: Anton Khirnov <anton@khirnov.net>
Anton Khirnov [Fri, 13 May 2016 07:43:51 +0000 (09:43 +0200)]
nvenc: list the major contributors in the copyright header
Timo Rothenpieler [Sat, 23 Apr 2016 16:55:51 +0000 (18:55 +0200)]
configure: Don't require nonfree for nvenc
As the nvEncodeApi.h header is now MIT licensed, this can be dropped.
The loaded CUDA and NVENC libraries are part of the nvidia driver, and
thus count as system libraries.
Signed-off-by: Anton Khirnov <anton@khirnov.net>
Anton Khirnov [Fri, 13 May 2016 07:13:47 +0000 (09:13 +0200)]
nvenc: drop the hard dependency on CUDA
The code needs only a few definitions from cuda.h, so define them
directly when CUDA is not enabled. CUDA is still required for accepting
HW frames as input.
Based on the code by Timo Rothenpieler <timo@rothenpieler.org>.
Anton Khirnov [Fri, 13 May 2016 07:05:25 +0000 (09:05 +0200)]
nvenc: only support HW frames when CUDA is enabled
hwcontext_cuda.h includes cuda.h, so this will allow building nvenc
without depending on cuda.h
Anton Khirnov [Thu, 12 May 2016 07:22:29 +0000 (09:22 +0200)]
nvenc: write the VUI signal properties for HEVC
Bump the API version requirement to 6.
Based on a patch by Agatha Hu <ahu@nvidia.com>.
Anton Khirnov [Thu, 12 May 2016 07:20:19 +0000 (09:20 +0200)]
nvenc: only write the VUI signal type fields if they are set
Based on a patch by Agatha Hu <ahu@nvidia.com>.
Timo Rothenpieler [Wed, 11 May 2016 08:34:31 +0000 (10:34 +0200)]
nvenc: Generate bufferingPeriod/pictureTiming SEI
For some unknown reason enabling these causes proper CBR padding,
so as there are no known downsides just always enable them in CBR mode.
Signed-off-by: Anton Khirnov <anton@khirnov.net>
Timo Rothenpieler [Sat, 25 Jul 2015 21:20:28 +0000 (23:20 +0200)]
nvenc: Delay frame output to increase encoding speed
Signed-off-by: Anton Khirnov <anton@khirnov.net>
Anton Khirnov [Wed, 11 May 2016 13:38:35 +0000 (15:38 +0200)]
nvenc: add support for lossless encoding
Based on a patch by Philip Langdale <philipl@overt.org>
Timo Rothenpieler [Wed, 30 Mar 2016 10:03:59 +0000 (12:03 +0200)]
nvenc: Generate AUD NAL units for better compatiblity
Signed-off-by: Anton Khirnov <anton@khirnov.net>
Anton Khirnov [Thu, 12 May 2016 06:23:06 +0000 (08:23 +0200)]
nvenc: fix the rc option definitions
Anton Khirnov [Mon, 16 May 2016 13:52:37 +0000 (15:52 +0200)]
Add release notes for 12.
Derek Buitenhuis [Mon, 9 May 2016 12:59:51 +0000 (13:59 +0100)]
mjpegdec: Properly fail on malloc failure
Signed-off-by: Derek Buitenhuis <derek.buitenhuis@gmail.com>
Signed-off-by: Anton Khirnov <anton@khirnov.net>
Anton Khirnov [Tue, 3 May 2016 06:06:15 +0000 (08:06 +0200)]
configure: move the hardware accel libs' entries in the configure output
Print them as a subsection of the external library section, in line with
what is done for the help text in the previous commit.
Anton Khirnov [Tue, 3 May 2016 05:55:38 +0000 (07:55 +0200)]
configure: move the hardware accel libs' entries in the help text
Group them in a subsection of the external library section. That should
make them easier to find and understand how they fit in the scheme of
things.
Also, rewrite the description text in a similar way as in the previous
commit.
Anton Khirnov [Tue, 3 May 2016 04:38:22 +0000 (06:38 +0200)]
configure: improve the help text for external libraries
Add a more accurate description of what the switches actually do (i.e.
allow using the given library, not enabling the corresponding
codecs etc.).
Replace the library descriptions, in many cases boilerplate text without
useful information, with a short summary of what the library does.
Anton Khirnov [Mon, 2 May 2016 17:39:14 +0000 (19:39 +0200)]
lavc: revert the Makefile part of 330177b
There is no real advantage to listing some codecs or subsystems
separately simply because they are somehow "hw-accelerated", on the
contrary it makes them harder to find than in a plain alphabetically
ordered list.
Diego Biurrun [Tue, 17 May 2016 13:16:53 +0000 (15:16 +0200)]
xtea-test: Use struct allocation functions from the API
Diego Biurrun [Wed, 11 May 2016 10:47:55 +0000 (12:47 +0200)]
blowfish-test: Use struct allocation functions from the API
Diego Biurrun [Tue, 17 May 2016 18:44:04 +0000 (20:44 +0200)]
blowfish-test: Return different values for different errors
Martin Storsjö [Wed, 18 May 2016 10:54:11 +0000 (13:54 +0300)]
movenc: Write 'loci' geotag metadata for 3gp and mp4
Signed-off-by: Martin Storsjö <martin@martin.st>
Martin Storsjö [Wed, 18 May 2016 10:18:32 +0000 (13:18 +0300)]
movenc: Factorize a function for finding a metadata entry and the associated language
Signed-off-by: Martin Storsjö <martin@martin.st>
Michael Niedermayer [Sat, 30 May 2015 13:32:40 +0000 (15:32 +0200)]
movenc: Write ?xyz geotag metadata for mov files
Signed-off-by: Martin Storsjö <martin@martin.st>
Michael Niedermayer [Sat, 30 May 2015 13:28:31 +0000 (15:28 +0200)]
mov: Also export loci altitude
Signed-off-by: Martin Storsjö <martin@martin.st>
Michael Niedermayer [Sat, 30 May 2015 13:23:19 +0000 (15:23 +0200)]
mov: Append place name instead of overwriting for loci
Signed-off-by: Martin Storsjö <martin@martin.st>
Michael Niedermayer [Sat, 16 May 2015 11:51:18 +0000 (13:51 +0200)]
mov: Fix parsing short loci
Previously, we required the minimum number of bytes required for
the full box. Don't strictly require the astronomical body and additional
notes fields, but do require an altitude field (which currently isn't
parsed). This matches the initial length check at the start of the function
(which doesn't know about the variable length place field).
Signed-off-by: Martin Storsjö <martin@martin.st>
Michael Niedermayer [Sat, 16 May 2015 11:50:38 +0000 (13:50 +0200)]
mov: Print reason of loci parsing failure
Signed-off-by: Martin Storsjö <martin@martin.st>
Martin Storsjö [Wed, 18 May 2016 10:33:55 +0000 (13:33 +0300)]
mov: Add a comment referring to the standard that defines the loci box
Signed-off-by: Martin Storsjö <martin@martin.st>
Martin Storsjö [Wed, 18 May 2016 10:49:57 +0000 (13:49 +0300)]
movenc: Add a missed const
This was missed in
e1eb0fc9601, when ff_interleaved_peek was
changed to include const during the evolution of the patch.
Signed-off-by: Martin Storsjö <martin@martin.st>
Martin Storsjö [Mon, 9 May 2016 10:48:58 +0000 (13:48 +0300)]
movenc: Add a test for VFR with b-frames, with a duration change at a fragment end
Signed-off-by: Martin Storsjö <martin@martin.st>
Martin Storsjö [Wed, 20 Apr 2016 20:10:37 +0000 (23:10 +0300)]
movenc: Use packets in interleaving queues for the duration at the end of fragments
As long as caller only writes packets using av_interleaved_write_frame
with no manual flushing, this should allow us to always have accurate
durations at the end of fragments, since there should be at least
one queued packet in each stream (except for the stream where the
current packet is being written, but if the muxer itself does the
cutting of fragments, it also has info about the next packet for that
stream).
Signed-off-by: Martin Storsjö <martin@martin.st>
Martin Storsjö [Wed, 4 May 2016 19:44:35 +0000 (22:44 +0300)]
movenc-test: Test write_data_type
Signed-off-by: Martin Storsjö <martin@martin.st>