Opened 6 years ago
Closed 6 years ago
#9005 closed defect (fixed)
decklink: v210 FourCC has wrong case
| Reported by: | carbenium | Owned by: | |
|---|---|---|---|
| Priority: | normal | Component: | avdevice |
| Version: | git-master | Keywords: | decklink |
| Cc: | Blocked By: | ||
| Blocking: | Reproduced by developer: | no | |
| Analyzed by developer: | no |
Description
Summary of the bug:
Capturing video as v210 using the decklink module results in video files with the FourCC "V210" (note upper case). VLC refuses to play this file since it expects "v210". Lower-case seems also to be the accepted casing in other parts of FFmpeg (see https://github.com/FFmpeg/FFmpeg/blob/f7fd205f11d5299d6a16b0ff0ae85fddb32772f2/libavformat/isom.c#L107)
How to reproduce:
% ffmpeg -raw_format yuv422p10 -f decklink -i 'DeckLink Mini Recorder 4K' -c:v copy -c:a copy out.mkv ffmpeg version 4.3.1
Change History (3)
comment:1 by , 6 years ago
| Keywords: | decklink added |
|---|---|
| Version: | unspecified → git-master |
comment:3 by , 6 years ago
| Resolution: | → fixed |
|---|---|
| Status: | new → closed |
A different fix was applied as b0a882cc93eb659d3e564b07f4c1f3eb87684bda, thank you for the report and the test!
Note:
See TracTickets
for help on using tickets.



Does this inlined patch fix the issue for you?
diff --git a/libavdevice/decklink_dec.cpp b/libavdevice/decklink_dec.cpp index 6517b9df13..dd8c3b7d95 100644 --- a/libavdevice/decklink_dec.cpp +++ b/libavdevice/decklink_dec.cpp @@ -1286,7 +1286,7 @@ av_cold int ff_decklink_read_header(AVFormatContext *avctx) break; case bmdFormat10BitYUV: st->codecpar->codec_id = AV_CODEC_ID_V210; - st->codecpar->codec_tag = MKTAG('V','2','1','0'); + st->codecpar->codec_tag = MKTAG('v','2','1','0'); st->codecpar->bit_rate = av_rescale(ctx->bmd_width * ctx->bmd_height * 64, st->time_base.den, st->time_base.num * 3); st->codecpar->bits_per_coded_sample = 10; break;