Any updates on this adventure? The last post here sounds like it is getting as close as possible to what I want to do: extract the raw Dolby/DTS bitstream from HDMI, in any format (Atmos, TrueHD, whatever) it happens to be in. I'm looking to capture the raw bitstream from HDMI, to be remuxed back into a video stream later (using something like MKVToolNix). I don't need anything decoded, turned into PCM, etc. I just want the raw bitstream.
It sounds like @nogginvid is able to do this, it just takes a couple runs through ffmpeg to get the proper format? Which Blackmagic device are you using @nogginvid? You mentioned "Blackmagic Thunderbolt Capture" but didn't say which one. Would the UltraStudio 4K Mini work? https://www.bhphotovideo.com/c/product/1500555-REG/blackmagic_design_bdlkulsdmini4k_ul....html/overview
It looks like this can record to an SD card directly. So, if you have something like that EZCOO box in front of the Blackmagic, and it's telling the source via EDID that it's Dolby Atmos compatible, would the Blackmagic then just magically record the video and bitstream to the SD card (not sure what file format) and be good to go? Or do you always need to convert the audio stream to AC3 before it will be recognized as a valid Dolby bitstream? And doesn't AC3 only support up to 5.1? You need E-ACf3 to get 7.1 or higher I think?
When converting, does truncating 24-bit to 16-bit really not cause any issues?? I'd think on an encoded digital signal, ANY change would render the encoding invalid?
+ Reply to Thread
Results 91 to 120 of 122
-
-
No real update - but I should stress this only works for me for Dolby Digital. Dolby Digital Plus didn't work. I haven't tried DTS. I very much doubt it will work for DTS HD MA/Dolby True HD. It requires that the compressed audio is SPDIF format over HDMI (so carried within a PCM 2.0 feed) - as I'm using the ffmpeg SPDIF filter (Which is designed to extract compressed DD audio over a SPDIF connection I believe)
True HD and DTS HD MA use a different form of carriage over HDMI - and the SPDIF filter isn't designed to cope with them. I believe that they also require 192kHz PCM 5.1 capabilities for the sink device (even though the source isn't using PCM 192kHz to carry the audio - it requires that level of bandwidth). The Black Magic capture solutions I have will only capture at max 48KHz - so I doubt they'd ever work for HD Audio.
It sounds like @nogginvid is able to do this, it just takes a couple runs through ffmpeg to get the proper format? Which Blackmagic device are you using @nogginvid? You mentioned "Blackmagic Thunderbolt Capture" but didn't say which one. Would the UltraStudio 4K Mini work? https://www.bhphotovideo.com/c/product/1500555-REG/blackmagic_design_bdlkulsdmini4k_ul....html/overview
It looks like this can record to an SD card directly. So, if you have something like that EZCOO box in front of the Blackmagic, and it's telling the source via EDID that it's Dolby Atmos compatible, would the Blackmagic then just magically record the video and bitstream to the SD card (not sure what file format) and be good to go? Or do you always need to convert the audio stream to AC3 before it will be recognized as a valid Dolby bitstream? And doesn't AC3 only support up to 5.1? You need E-ACf3 to get 7.1 or higher I think?
You are correct - AC3/DD is only 5.1 max. I'm using this to archive content from a Sky Q box (216p60 HLG HDR or 1080i25 SDR + 5.1 AC3)
I have checked and E-AC3/DD+ with Atmos doesn't survive this route - I've not checked DTS.
When converting, does truncating 24-bit to 16-bit really not cause any issues?? I'd think on an encoded digital signal, ANY change would render the encoding invalid? -
Thanks so much for the update! Disappointing to hear about DD+/Atmos...
I have an Atomos Ninja V which will record 4k/60 HDR and up to 8 channels of audio via HDMI. Once my EZCOO comes tomorrow (I got this one, which has a handy button for setting different EDIDs: https://www.amazon.com/gp/product/B09B7B7BM8 ) I'm going to put that in my HDMI chain and see what kind of recording I can get. I figured I could tell the EZCOO to send the "all audio supported" EDID and was hoping to get the PCM bitstream on channels 1 & 2, but it sounds like that'll only be for DD 5.1 and below.
But, what if I have my device do the decoding and send 5.1 or 7.1 PCM over HDMI? Then I (should) get all 8 channels into the Ninja V. Not sure how that works with Atmos though. I haven't found a good layman's description of how it works, it sounds like it's just metadata, but would that be encoded into the 7.1 stream somehow, and would be reflected in an 8-channel recording? But even if that metadata was there, I'm guessing that on playback it won't trigger the receiver to decode it properly, it just thinks its getting PCM and so just sends that straight to the speakers. -
Yes - if you have a device that decodes to PCM 5.1/7.1 and a device that captures HDMI with 6 or 8 tracks of embedded audio then that's very straightforward - and will capture 48kHz / 24 bit audio (though not Atmos extensions and you won't get the metadata - as it will have been used to drive the PCM decode). You probably wouldn't need the EZCOO for that if your capture solution outputs an EDID that tells the source it supports PCM 5.1/7.1 audio. (The EZCOO is required for DD capture as the BlackMagic devices don't flag Dolby Digital support in their EDID)
You may find that the HDMI track layout isn't quite the same as the standard Post Production track layout (from memory the C and LFE channels are swapped between the broadcast and HDMI standards)
My problem was that my satellite receiver wouldn't output Dolby Digital decoded to PCM 5.1 - it was purely PCM 2.0 mixed down to stereo or a DD or DD+ bitstream - there was no decoded option. Other devices I have (Blu-ray players, PS4 etc.) will output PCM 5.1/7.1 and that is trivial to capture on any decent card with >2 channel audio support in HDMI. (But you are capturing a decode - not the original bitstream - so whilst the audio decode is potentially lossless for 48k/24 tracks - you don't have the accompanying metadata - that is useful for playback on other devices. You won't get the DialNorm, mix down gains, LoRo vs LtRt etc. stuff. If you capture the original bitstream then you get that metadata for playback on other devices. For most people this won't be an issue.)Last edited by nogginvid; 20th Nov 2021 at 07:09.
-
Did some tests with my Ninja V tonight and got some various combinations of settings to work! I'm using an Apple TV as my output device, and I was able to get the Ninja V to record in both SDR and HDR which was great. For audio, I was able to get 6-channel PCM, and it looked like LFE was channel 3 and Center was channel 4. I think I remember Center supposed to be channel 3. Any idea if there is any software out there that lets you transpose them?
If I tell the Apple TV that I want it to turn all audio into Dolby Digital then I saw channels 1/2 with a pretty high, relatively constant signal, which I assume was the bitstream, but I forgot to record a clip in that format. I'll try that next, and then use your technique above for turning into AC-3.
For purely research purposes, I've noticed that there are tons of files via Bittorrent which claim to have an Atmos track. How are people capturing that bitstream I wonder? -
Very easy to remap with an ffmpeg command line. Worth learning about ffmpeg for this stuff.
If I tell the Apple TV that I want it to turn all audio into Dolby Digital then I saw channels 1/2 with a pretty high, relatively constant signal, which I assume was the bitstream, but I forgot to record a clip in that format. I'll try that next, and then use your technique above for turning into AC-3.
For purely research purposes, I've noticed that there are tons of files via Bittorrent which claim to have an Atmos track. How are people capturing that bitstream I wonder? -
ffmpeg doesn't like me specifying the input format for some reason. The 24bit -> 16bit conversion worked fine, but when I try to convert to AC3 I'm getting:
% ffmpeg -f spdif -i "T007_audio.wav" -c copy -f ac3 "T007_audio.ac3"
ffmpeg version 4.4 Copyright (c) 2000-2021 the FFmpeg developers
built with Apple clang version 12.0.5 (clang-1205.0.22.9)
configuration: --prefix=/usr/local/Cellar/ffmpeg/4.4_2 --enable-shared --enable-pthreads --enable-version3 --cc=clang --host-cflags= --host-ldflags= --enable-ffplay --enable-gnutls --enable-gpl --enable-libaom --enable-libbluray --enable-libdav1d --enable-libmp3lame --enable-libopus --enable-librav1e --enable-librubberband --enable-libsnappy --enable-libsrt --enable-libtesseract --enable-libtheora --enable-libvidstab --enable-libvorbis --enable-libvpx --enable-libwebp --enable-libx264 --enable-libx265 --enable-libxml2 --enable-libxvid --enable-lzma --enable-libfontconfig --enable-libfreetype --enable-frei0r --enable-libass --enable-libopencore-amrnb --enable-libopencore-amrwb --enable-libopenjpeg --enable-libspeex --enable-libsoxr --enable-libzmq --enable-libzimg --disable-libjack --disable-indev=jack --enable-avresample --enable-videotoolbox
libavutil 56. 70.100 / 56. 70.100
libavcodec 58.134.100 / 58.134.100
libavformat 58. 76.100 / 58. 76.100
libavdevice 58. 13.100 / 58. 13.100
libavfilter 7.110.100 / 7.110.100
libavresample 4. 0. 0 / 4. 0. 0
libswscale 5. 9.100 / 5. 9.100
libswresample 3. 9.100 / 3. 9.100
libpostproc 55. 9.100 / 55. 9.100
Input #0, spdif, from 'T007_audio.wav':
Duration: N/A, bitrate: N/A
Output #0, ac3, to 'T007_audio.ac3':
Output file #0 does not contain any stream
% ffmpeg -i "T007_audio.wav" -c copy -f ac3 "T007_audio.ac3"
ffmpeg version 4.4 Copyright (c) 2000-2021 the FFmpeg developers
built with Apple clang version 12.0.5 (clang-1205.0.22.9)
configuration: --prefix=/usr/local/Cellar/ffmpeg/4.4_2 --enable-shared --enable-pthreads --enable-version3 --cc=clang --host-cflags= --host-ldflags= --enable-ffplay --enable-gnutls --enable-gpl --enable-libaom --enable-libbluray --enable-libdav1d --enable-libmp3lame --enable-libopus --enable-librav1e --enable-librubberband --enable-libsnappy --enable-libsrt --enable-libtesseract --enable-libtheora --enable-libvidstab --enable-libvorbis --enable-libvpx --enable-libwebp --enable-libx264 --enable-libx265 --enable-libxml2 --enable-libxvid --enable-lzma --enable-libfontconfig --enable-libfreetype --enable-frei0r --enable-libass --enable-libopencore-amrnb --enable-libopencore-amrwb --enable-libopenjpeg --enable-libspeex --enable-libsoxr --enable-libzmq --enable-libzimg --disable-libjack --disable-indev=jack --enable-avresample --enable-videotoolbox
libavutil 56. 70.100 / 56. 70.100
libavcodec 58.134.100 / 58.134.100
libavformat 58. 76.100 / 58. 76.100
libavdevice 58. 13.100 / 58. 13.100
libavfilter 7.110.100 / 7.110.100
libavresample 4. 0. 0 / 4. 0. 0
libswscale 5. 9.100 / 5. 9.100
libswresample 3. 9.100 / 3. 9.100
libpostproc 55. 9.100 / 55. 9.100
Guessed Channel Layout for Input Stream #0.0 : stereo
Input #0, wav, from 'T007_audio.wav':
Metadata:
encoder : Lavf58.76.100
timecode : 00:00:00:00
Duration: 00:00:43.84, bitrate: 1536 kb/s
Stream #0:0: Audio: pcm_s16le ([1][0][0][0] / 0x0001), 48000 Hz, stereo, s16, 1536 kb/s
Output #0, ac3, to 'T007_audio.ac3':
Metadata:
timecode : 00:00:00:00
encoder : Lavf58.76.100
Stream #0:0: Audio: pcm_s16le ([1][0][0][0] / 0x0001), 48000 Hz, stereo, s16, 1536 kb/s
Stream mapping:
Stream #0:0 -> #0:0 (copy)
Press [q] to stop, [?] for help
size= 8219kB time=00:00:43.81 bitrate=1536.6kbits/s speed=4.18e+03x
video:0kB audio:8219kB subtitle:0kB other streams:0kB global headers:0kB muxing overhead: 0.000000% -
What is the MediaInfo for the original capture, and the 16-bit truncated capture, in detail?
Has your capture been split into stereo pairs or mono tracks? How many tracks have you captured? Do you hear buzzing on the first two tracks, or two channels of one track? (Stereo vs Dual Mono may be a factor here)
Also checking this is straight Dolby Digital-over-HDMI - not Dolby Digital Plus, True HD, DTS or DTS HD MA/HRA (and no Atmos or DTS)?
Last edited by nogginvid; 24th Nov 2021 at 07:54.
-
haha Correct, 2.0 PCM. Yep I hear a constant buzzing while playing. Here's the MediaInfo on the original video file:
Code:General Complete name : /Users/rob/Desktop/NINJAV_S001_S001_T007.MOV Format : MPEG-4 Format profile : QuickTime Codec ID : qt 2005.03 (qt ) File size : 343 MiB Duration : 43 s 835 ms Overall bit rate : 65.7 Mb/s Encoded date : UTC 2021-11-22 20:06:55 Tagged date : UTC 2021-11-22 20:06:55 Writing library : Apple QuickTime com.atomos.hdr.gamut : Bt2020 com.atomos.hdr.gamma : PqSt2084 com.atomos.hdr.camera : Pq com.atomos.hdr.monitormode : Pq com.atomos.hdr.slider : Unknown kind of value! com.apple.proapps.image.{TIFF}.Make : Atomos com.apple.proapps.image.{TIFF}.Model : NinjaV com.apple.proapps.image.{TIFF}.Software : 10.7.3 Video ID : 2 Format : HEVC Format/Info : High Efficiency Video Coding Format profile : Format Range@L5@High Codec ID : hvc1 Codec ID/Info : High Efficiency Video Coding Duration : 43 s 835 ms Bit rate : 63.4 Mb/s Width : 3 840 pixels Height : 2 160 pixels Display aspect ratio : 16:9 Frame rate mode : Constant Frame rate : 23.976 (24000/1001) FPS Color space : YUV Chroma subsampling : 4:2:2 (Type 0) Bit depth : 10 bits Scan type : Progressive Bits/(Pixel*Frame) : 0.319 Stream size : 331 MiB (96%) Language : English Encoded date : UTC 2021-11-22 20:06:55 Tagged date : UTC 2021-11-22 20:06:55 Color range : Full Color primaries : BT.2020 Transfer characteristics : PQ Matrix coefficients : BT.2020 non-constant Codec configuration box : hvcC Audio ID : 1 Format : PCM Format settings : Little / Signed Codec ID : in24 Duration : 43 s 835 ms Bit rate mode : Constant Bit rate : 2 304 kb/s Channel(s) : 2 channels Channel layout : L R Sampling rate : 48.0 kHz Bit depth : 24 bits Stream size : 6.02 MiB (2%) Language : English Encoded date : UTC 2021-11-22 20:06:55 Tagged date : UTC 2021-11-22 20:06:55 Other ID : 3 Type : Time code Format : QuickTime TC Duration : 43 s 835 ms Frame rate : 23.976 (24000/1001) FPS Time code of first frame : 00:00:00:00 Time code, striped : Yes Language : English Encoded date : UTC 2021-11-22 20:06:55 Tagged date : UTC 2021-11-22 20:06:55
Code:General Complete name : /Users/rob/Desktop/t007_audio.wav Format : Wave File size : 8.03 MiB Duration : 43 s 835 ms Overall bit rate mode : Constant Overall bit rate : 1 536 kb/s Writing application : Lavf58.76.100 Audio Format : PCM Format settings : Little / Signed Codec ID : 1 Duration : 43 s 835 ms Bit rate mode : Constant Bit rate : 1 536 kb/s Channel(s) : 2 channels Sampling rate : 48.0 kHz Bit depth : 16 bits Stream size : 8.03 MiB (100%)
Maybe the Ninja V pads the 16bits differently than the BlackMagic, and so the 24 -> 16 truncation is ruining the format? I'm on a Mac, don't know if that matters.
Thanks for the help! -
Yep - could be the Ninja dithers rather than pads? I'm on a Mac too - so it's unlikely to be that. Checking your WAV in my MediaInfo install it doesn't detect any AC3.
My guess is that the Ninja either isn't 'bit perfect' in capturing this stuff and may be dithering or padding in a different way than just adding an LSB of all 0s to pad from 16 to 24 bit?
Media Info recognises the AC3 present in my PCM 2.0 prior to me running it through the SPDIF process in ffmpeg - but in your files it doesn't? That suggests something somewhere is corrupting the AC3-in-PCM 2.0 data.
Here's my 16bit WAV truncation from my Sky Q box fed into MediaInfo :
Format : Wave
File size : 196 MiB
Duration : 17 min 51 s
Overall bit rate mode : Constant
Overall bit rate : 1 536 kb/s
Writing application : Lavf58.76.100
Audio
Format : AC-3
Format/Info : Audio Coding 3
Commercial name : Dolby Digital
Format settings : Little
Muxing mode : SMPTE ST 337
Codec ID : 1
Duration : 17 min 51 s
Bit rate mode : Constant
Bit rate : 384 kb/s
Channel(s) : 6 channels
Channel layout : L R C LFE Ls Rs
Sampling rate : 48.0 kHz
Frame rate : 31.250 FPS (1536 SPF)
Bit depth : 16 bits
Compression mode : Lossy
Stream size : 49.0 MiB (25%)
Service kind : Complete Main
You can see although it's a WAV file Media Info recognises the AC3 content within it.
As it also does with the Quicktime ProRes HQ capture as well. This is what Media Info reports from the straight Black Magic Capture of the 2160p50 + AC3 capture (again before any ffmpeg processing to make the AC3 actually usable) Media Info seems very good at drilling down into stuff to detect what's in it (it does the same with PCM 2.0 audio channels containing Dolby E) :
Format : MPEG-4
Format profile : QuickTime
Codec ID : qt 2005.03 (qt )
File size : 64.3 GiB
Duration : 17 min 51 s
Overall bit rate mode : Variable
Overall bit rate : 516 Mb/s
Encoded date : UTC 2021-07-14 15:43:02
Tagged date : UTC 2021-07-14 15:43:02
Writing library : Apple QuickTime
TIM : 00:00:00:00
TSC : 50000
TSZ : 1000
Video
ID : 1
Format : ProRes
Format version : Version 0
Format profile : 422
HDR format : SMPTE ST 2086, HDR10 compatible
Codec ID : apcn
Duration : 17 min 51 s
Duration_LastFrame : 2 ms
Bit rate mode : Variable
Bit rate : 513 Mb/s
Width : 3 840 pixels
Height : 2 160 pixels
Display aspect ratio : 16:9
Frame rate mode : Constant
Frame rate : 50.000 FPS
Color space : YUV
Chroma subsampling : 4:2:2
Scan type : Progressive
Bits/(Pixel*Frame) : 1.237
Stream size : 64.0 GiB (99%)
Writing library : Apple
Language : English
Encoded date : UTC 2021-07-14 15:43:02
Tagged date : UTC 2021-07-14 15:43:02
Color primaries : BT.2020
colour_primaries_Original : BT.709
Transfer characteristics : PQ
transfer_characteristics_Original : BT.709
Matrix coefficients : BT.2020 non-constant
matrix_coefficients_Original : BT.709
Mastering display color primaries : Display P3
Mastering display luminance : min: 0.0050 cd/m2, max: 4000 cd/m2
Maximum Content Light Level : 1000 cd/m2
Maximum Frame-Average Light Level : 400 cd/m2
Audio
ID : 2
Format : AC-3
Format/Info : Audio Coding 3
Commercial name : Dolby Digital
Format settings : Little
Muxing mode : SMPTE ST 337
Codec ID : in24
Duration : 17 min 51 s
Bit rate mode : Constant
Bit rate : 384 kb/s
Channel(s) : 6 channels
Channel layout : L R C LFE Ls Rs
Sampling rate : 48.0 kHz
Frame rate : 31.250 FPS (1536 SPF)
Bit depth : 16 bits
Compression mode : Lossy
Stream size : 49.0 MiB (0%)
Language : English
Service kind : Complete Main
Encoded date : UTC 2021-07-14 15:43:02
Tagged date : UTC 2021-07-14 15:43:02
Other
ID : 3
Type : Time code
Format : QuickTime TC
Duration : 17 min 51 s
Frame rate : 50.000 FPS
Time code of first frame : 00:00:00:00
Time code, striped : Yes
Title : 001
Language : English
Encoded date : UTC 2021-07-14 15:43:02
Tagged date : UTC 2021-07-14 15:43:02
Just to confirm that the audio is actually 24-bit not 16-bit PCM - here's the ffmpeg report from the same Quicktime file :
Input #0, mov,mp4,m4a,3gp,3g2,mj2, from 'FILE.mov':
Metadata:
major_brand : qt
minor_version : 537199360
compatible_brands: qt
creation_time : 2021-07-14T15:43:02.000000Z
Duration: 00:17:51.18, start: 0.000000, bitrate: 515557 kb/s
Stream #0:0(eng): Video: prores (Standard) (apcn / 0x6E637061), yuv422p10le(tv, bt709, progressive), 3840x2160, 512916 kb/s, SAR 1:1 DAR 16:9, 50 fps, 50 tbr, 50k tbn, 50k tbc (default)
Metadata:
creation_time : 2021-07-14T15:43:02.000000Z
handler_name : ?Apple Video Media Handler
vendor_id : appl
encoder : Apple ProRes 422
timecode : 00:00:00:00
Side data:
Mastering Display Metadata, has_primaries:1 has_luminance:1 r(0.2650,0.6900) g(0.1500,0.0600) b(0.6800 0.3200) wp(0.3127, 0.3290) min_luminance=0.005000, max_luminance=4000.000000
Content Light Level Metadata, MaxCLL=1000, MaxFALL=400
Stream #0:1(eng): Audio: pcm_s24le (in24 / 0x34326E69), 48000 Hz, stereo, s32 (24 bit), 2304 kb/s (default)
Metadata:
creation_time : 2021-07-14T15:43:02.000000Z
handler_name : ?Apple Sound Media Handler
vendor_id : [0][0][0][0]
timecode : 00:00:00:00
Stream #0:2(eng): Data: none (tmcd / 0x64636D74) (default)
Metadata:
creation_time : 2021-07-14T15:43:02.000000Z
handler_name : Time Code Media Handler
reel_name : 001
timecode : 00:00:00:00Last edited by nogginvid; 25th Nov 2021 at 05:37.
-
Thanks for the help troubleshooting! At this point I think I'm going to either just leave it as 6-channel PCM (after transposing the center and LFE channel, which I found the ffmpeg command for), or I could re-package into AC3 or EAC3 (for higher bitrate). I'm a little worried about a loss of quality, but I wonder if going to 768kbps EAC3 will even be noticeable. From my sample clip, the WAV is 24MB but the EAC3 version at 768kbps is only 4MB! I'm not worried about disc space, but that's quite an improvement. But, going from compressed -> wav -> compressed again is giving me anxiety! 😅
-
You could transcode to FLAC which will reduce the file size a bit but remain lossless?
-
Nice, with FLAC it went from 24MB to 17MB! I think I'll stick with that! Thanks again for all the help!
-
-
If only audio is of concern, did you consider using something different?
Looking at my own reply, I did that years ago with ESI U24 XL or M-Audio Audiophile USB -
I found this thread after searching for inexpensive USB video capture devices for 5.1 bitstream audio. I'm on a laptop so I'll need a USB solution and since this is just a "would be nice to have" thing I'm uninterested in putting a lot of work into it.
This may be slightly OT, but can someone explain why it's not easy to capture the multi-channel audio bitstream from the HDMI signal? It seems like a really basic stream capture. My sources are not HDCP so it's just a stream capture. I've tested a few of those basic capture dongles with Vdub, VLC and OBS and all want to capture the audio as 2-channel PCM. I'm not clear where that conversion is happening, but I suspect Windows. I remember a tool from years ago called something like displaygraph which could be used to configure codec behavior, is there something for win10/11 which could be used to identify what windows sees coming in from the USB capture device? (or should I start my own thread for this somewhat OT question?) -
1. You have to persuade your source to output 5.1 Dolby Digital not PCM 2.0. HDMI destinations use EDID (a data stream sent from the destination back to the source) to tell their sources what formats they support. If your capture device doesn't tell your source it supports Dolby Digital - your source won't output it. That's why I had to use EDID spoofing to get my route to work (my capture solution didn't flag Dolby Digital support - but I was able to put something in between to override that and tell my source that it DID support Dolby Digital). Without that - your HDMI signal will not have any Dolby Digital audio in it to capture. If you can re-program the EDID data your capture solution sends - you don't need the intermediate spoofing device - but pretty much every capture solution (other than things like the Hauppauge HD PVR 2s) don't flag Dolby in their EDID - they just flag PCM 2.0.
2. You have to have a bit-perfect PCM capture solution - many capture solutions aren't 100% bit perfect (the cheap USB HDMI capture dongles usually massacre audio). If you don't have a 1:1 bit perfect PCM capture - then your spoofed 'Dolby Digital captured as if it's PCM' capture won't be decodable back from the capture flagged as PCM via the ffmpeg SPDID filter to native Dolby Digital as it won't be a valid Dolby Digital signal. -
That makes perfect sense, so the problem is that capture device responds with supported audio as PCM (or no response and the source defaults to PCM). I was aware of this format negotiation with video, but never thought about audio because for formats like DTS the source historically asks the user to confirm that DTS is correctly delivered before fully enabling DTS. Sounds like current HDMI protocols may do a better job with the many audio formats. Thanks for the explanation.
What device did you use to "trick" the source for DD output? -
That's not the actual model I used - this is https://www.amazon.co.uk/HDMI-Splitter-1x2-4K-60Hz/dp/B083JVPXDY
I connected HDMI output 1 in my regular chain, and set the EZCOO EDID to 'Copy 1'. I connected HDMI output 2 to my BlackMagic capture solution. The EDID sent to my source was from my HDMI 1 chain (i.e. my AVR and TV that support Dolby Digital), and it ignored the EDID of the destination (my capture solution) connected to HDMI output 2 - so both HDMI 1 and HDMI 2 outputs contained Dolby Digital audio.
I haven't tested DTS - but DD+ didn't work. -
yes my capture card can capture 4k sdr, 4k hdr, 4k hlg, 1080p in lossless format
-
Any idea what/if needs to be selected for DTS capture?
sebus
edit:
I can load edited bin (with DTS instead of AC3)
Pro Capture HDMI_DTS.7z
Then in VD2 had to select first audio device (not WDM), it allows to chose for capture 44.1 /16 PCM, and what is captured is DTS (according to Mediainfo)Last edited by sebus; 13th Feb 2022 at 11:43.
-
Aha - if DTS-over-HDMI uses 44.1k instead of 48k sampling then my BlackMagic solution using their software won't work I suspect - as I think the software I'm using defaults to 48k audio (not sure if the BMD stuff is easy to get to capture in 44.1 - possibly the SDK allows it?)
-
I think this attempt was totally wrong. DVD captured DTS (as described above, for test only!) is not actually DTS at all (Mediainfo says so, but nothing plays it as such)
Tried as above (44.1/16) and also WDM 48/16
[Attachment 63344 - Click to enlarge]
Depending what version of wav2dts I use I get various errors:
W:\>c:\Wav2dts.exe .\be2.wav
FileSize : 5829224 bytes
Initial invalid bytes : 1912
Header 16le. Use SwapEnd to obtain a standard 16be.
W:\>c:\wav2dts1.exe .\be2.wav
Don't found any valid dts header in first 99998 bytes.
Definitely doing something wrong here... hopefully FLP437 can chip inLast edited by sebus; 13th Feb 2022 at 11:44.
-
-
If I do it with sox using -x I get:
E:\>Wav2dts.exe sou2.wav
FileSize : 5661700 bytes
Initial invalid bytes : 748
Header 16be. Seems is already a standard DTS 16be.
Absolutely spot on observation!
It is direct capture DTS (from DVD, will test LD later)Last edited by sebus; 13th Feb 2022 at 11:02.
-
ffmpeg will happily convert between them. (It defines the byte order for 16 bit audio carried in two bytes I believe)
e.g.
ffmpeg -i "input_big_endian.file" -codec:a pcm_s16le "output_little_endian.file"
or
ffmpeg -i "input_little_endian.file" -codec:a pcm_s16be "output_big_endian.file"
That will take a file in one format and convert it to the other format (the s stands for signed audio i.e. goes +ve and -ve centred on zero - which most audio is) -
OK, so been doing some random test, like nogginvid in post #90. Short, only 1 min each
Used Avermedia Extremecap U3, Windows 10 with Windows 8.1 drivers Win81_x64_V1.0.64.33
Testing using LG Bluray (because it is small and handy to move around, and spare)
To get rid of HDCP I used some cheap like this HDMI Converter (HDMI to HDMI+Audio), one with dip switch for Passthrough, 2.0, 5.1
Set dip switch to 5.1, selected in a DVD menu audio DD 5.1 & captured with AmarecTV, then done the same with DTS
In both cases audio recorded as bitstream
Needed processing (after Save audio in VD2), AC3 as per FLP437 suggestion:
Code:ffmpeg.exe -f spdif -i in_audio_ac3.wav -c copy -f ac3 out_audio_ac3.ac3
Code:sox input.wav -x output.dts.wav
I could not replicate it with my cheapo USB to HDMI UCV dongle (wonder if UCV/A standard prevents it, or just the hardware I used)
edit:
Also tested with Elgato Camlink 4K and the result was identical to the cheapo above, totally messed up audio, so probably it is UCV/UCA issue, I am sure somebody knows better...
edit 2:
Tested same setup with Blackmagic DeckLink Mini Recorder
The result was also positive (both AC3 & DTS recorded correctly)
sebusLast edited by sebus; 4th Mar 2022 at 12:01.
-
In post #90 you actually mention yet another one: https://www.amazon.co.uk/HDMI-Audio-Extractor-60Hz-embed/dp/B07TZRXKYG/
-
Apologies - I did use the HDMI Audio extractor initially - but it doesn't spoof HLG HDR EDID (so it allowed HD SDR and UHD SDR capture but not HLG HDR SDR), so I for most of my captures I used the 4K 2:1 splitter for UHD HLG HDR and 5.1 DD capture (with an HLG EDID source connected to HDMI 1 output, my capture card to HDMI 2, and the splitter set to 'EDID COPY HDMI 1' settings - so flagging both 5.1 DD and HLG HDR). This allows Sky Q capture of UHD HLG with 5.1 DD.
I did email asking EZCOO if they could add HLG EDID to their firmware for the audio extractor but they appeared confused by the request...Last edited by nogginvid; 26th Feb 2022 at 06:36.
Similar Threads
-
What Is The Best Lossless Video Capture Card as of Mid-2017?
By end-user in forum Capturing and VCRReplies: 126Last Post: 11th Aug 2019, 05:35 -
Combining multiple video 8 captures to create one higher quality capture?
By Drunkin Dynasty Dave in forum Capturing and VCRReplies: 1Last Post: 25th Dec 2017, 22:04 -
Debut Video Capture Software freeware captures stream videos/sound in hd
By jimdagys in forum Video Streaming DownloadingReplies: 0Last Post: 13th Dec 2016, 11:05 -
Adding lossless audio to video / replacing audio track
By Jacobson in forum Video ConversionReplies: 72Last Post: 29th Jul 2016, 21:05 -
Video + audio capture card recommendation sought
By three_jeeps in forum Capturing and VCRReplies: 3Last Post: 10th Feb 2016, 15:48