View Full Version : AC3 bsid error. offset=0
burninsnikers
25th May 2017, 02:40
Hi guys!
Hope someone can help me with this: I'm trying to remux a Blu-ray. One of the files has AC3 audio that I can't add to my Scenarist BD project, I constantly got the same error:
Error : bsid error. offset=0
I suppose the source file was incorrectly encoded and someway incompatible with Blu-ray specs yet I got it from licensed Blu-ray. I tried to correct it using different tools like Ac3_tools, ac3fix etc. but no luck. Of course there is a way of reencode but I want to keep it intact just correcting the header, metadata or something that is the source of this error.
Here is the file (very small but annoying). (https://mega.nz/#!IRRnUZRA!rdfo3IeFb7Nkz9W7c95doN77MOSaACOOy0Ap-_X8D9A)
Just to note: I tried to demux it from source Blu-ray using different tools like eac3to and BDReauthor but result is the same, I constantly got this error adding it to my custom disc project.
Thanks in advance.
tebasuna51
25th May 2017, 10:48
Yep, your AC3 stream show bsid = 4, and some soft only accept bsid 8 (standard) or 6 (alternate sintax).
I don't know if changing only the header can produce problems when decode, and I don't know a tool to do so (must change the bsid field and recalculate CRC values).
For me the best option is recode.
burninsnikers
25th May 2017, 13:19
Yep, your AC3 stream show bsid = 4, and some soft only accept bsid 8 (standard) or 6 (alternate sintax).
I see, thanks. But how did you checked it's bsid=4. What software shows this parameter?
tebasuna51
26th May 2017, 09:43
A little tool I make: http://forum.doom9.org/showthread.php?p=1522330#post1522330
Show:
==========================================================
File ........: D:\tmp\t05_v001c001_80.ac3
Size ........: 6134784 bytes
----------------------------------------- First Frame Info
SampleRate ..................: 0 (48000 KHz)
BitRate .....................: 10 (192 Kb/s)
Version (bsid) ..............: 4 (Subset of standard version)
Bit Stream mode (bsmod) .....: 0 (main audio service: complete main, CM)
Audio coding mode (acmod) ...: 2 (2/0 - L, R)
Dolby Surround Mode .........: 0 (not indicated)
Low frequency effects channel: 0 (Not present)
Dialogue normalization ......: - 31 dB
RF atenuattion ..............:-0,28 dB Frame: 1
Languaje ....................: 0 (Not present)
Audio Production Info .......: 0 (Not present)
CopyRight bit ...............: 0
Original bit ................: 1
Timecode1 ...................: 0 (Not present)
Timecode2 ...................: 0 (Not present)
Additional Bsi ..............: 0 (Not present)
Block switch flags ..........: 0
Dither flags ................: 3
Dynamic Range Info ..........: 0 (Not present)
--------------------------------------------- Revised Info
RF Ov. Pr. min/max : -0,28 /-0,28 dB
Total Frames ......: 7988
Duration ..........: 255,616 seconds. ( 0 h. 4 m. 15,616 s.)
------------------------------------------------- End Info
burninsnikers
29th May 2017, 21:59
A little tool I make: http://forum.doom9.org/showthread.php?p=1522330#post1522330
Thank you. At least I can say - it's doable to edit the headers to change bsid to correct value. A friend of mine did it using hex editor and then corrected checksums with DelayCut. I hope he'll come here to describe the process in details.
------------------
OK, I'll try to describe the process by myself. Actually everything is on the picture:
http://i95.fastpic.ru/thumb/2017/0530/c5/159e71871c3621d49c98edb20d3b2ec5.jpeg (http://fastpic.ru/view/95/2017/0530/159e71871c3621d49c98edb20d3b2ec5.png.html)
1. We need to know how many frames are in the source file. Open source file in DelayCut and check the value of "Num of frames". It's 7988 in example file. This is the number of corrections we need to do.
2. Open source file in any hex editor you have and set to display data as "hex". Actually my friend used UltraEdit (that is a text editor :o) but I made the same thing with Hex Editor Neo.
3. Locate the data of bsid value. It is 14 20 here but we need to select a bit larger data of the header to find and replace to avoid unnecessary changes in audio itself.
4. In this case we'd select 14 20 43 ff f1 and replace it to 14 40 43 ff f1 to correct bsid value from 4 to 8. There should be 7988 occurrences replaced (the number of frames in the file). Save the file as new one.
5. Open edited file in DelayCut and check "Fix" to CRC Errors, then "Process". Wait for it to finish and check the log, it should be Number of written frames = 7988, Number of Errors= 7988.
Done!
Lyris
31st May 2017, 05:59
Out of curiosity, which BD was this from?
tebasuna51
31st May 2017, 09:58
Is a correct method if you check the number of changes.
Work here because:
...
RF atenuattion ..............:-0,28 dB Frame: 1
...
--------------------------------------------- Revised Info
RF Ov. Pr. min/max : -0,28 /-0,28 dB
Total Frames ......: 7988
Seems than all frames have the same value in this field, but this is not always true, and the bytes FF F1 can change from frame to frame. Only 14 20 43 must be the same always (work here also).
Other generic method, maybe not so easy, can be:
The FrameSize must be constant, and here is:
6134784 bytes / 7988 frames = 768
You need change the byte 5 from 0x20 to 0x40
And repeat at n *768 + 5 : 773, 1541, 2309, ...
tebasuna51
31st May 2017, 12:46
More easy with:
ModByte copied.ac3 64 5 768
Work with a copy of input file, 64 = 0x40, 5 (offset, 0 = first byte), 768 (FrameSize, 0 for only 1 change).
And after use DelayCut to set CRC's.
EDIT:
New version and sintax to support more than 1 byte, until 8:
ModBytes <filename> <Offset> <Repeat_each> <New_byte1>...<New_byte8>
Here now:
ModBytes copied.ac3 5 768 64
burninsnikers
31st May 2017, 20:11
Out of curiosity, which BD was this from?
From US edition of Horus Prince of the Sun. Actually example file is from DVD of the same film but Blu-ray edition has the same problems with bsid. I think it's because Discotek took the interviews from old French DVD and inserted into their own DVD and Blu-ray projects created with NetBlender (that do not strictly follow BD standards like Scenatist).
vBulletin® v3.8.11, Copyright ©2000-2026, vBulletin Solutions Inc.