Opened 11 years ago

Closed 11 years ago

#5220 closed defect (fixed)

Any corruption in mpeg transport streams cases loud chirps in ac3 audio

Reported by: Tom Dexter <digitalaudiorock@…> Owned by: Anduin Withers
Priority: minor Milestone: unknown
Component: mythtv Version: 0.21-fixes
Severity: medium Keywords:
Cc: Ticket locked: no

Description

The version of ffmpeg used in 0.21 allows serious full-scale pops and chirps in ac3 audio if there's any corruption in the mpeg ts file (from OTA interference for example).

It appears that in newer versions of ffmpeg libavcodec/ac3dec.c does a crc checksum and drops any bad ac3.

Other details have been posted here:

http://www.gossamer-threads.com/lists/mythtv/dev/330167

I'm attaching a patch I'm using to address this.

Attachments (1)

mythtv-0.21-ffmpeg_ac3_crc.patch (657 bytes) - added by Tom Dexter <digitalaudiorock@…> 11 years ago.

Download all attachments as: .zip

Change History (4)

Changed 11 years ago by Tom Dexter <digitalaudiorock@…>

comment:1 Changed 11 years ago by Anduin Withers

Owner: changed from Isaac Richards to Anduin Withers
Status: newaccepted

comment:2 Changed 11 years ago by Anduin Withers

(In [17083]) References #4862, #5220

This imports a modified version of the AC3 CRC check introduced in ffmpeg's revision 11379.

This should eliminate chirp/pop issues when the AC3 data is corrupt.

Thanks to Tom Dexter for this patch. My modifications were only to make it as close to the current ffmpeg code as possible (without importing the new CRC table stuff).

comment:3 Changed 11 years ago by Anduin Withers

Resolution: fixed
Status: acceptedclosed

(In [17100]) Closes #5220

Merges [17083] from trunk.

Original commit message:

This imports a modified version of the AC3 CRC check introduced in ffmpeg's revision 11379.

This should eliminate chirp/pop issues when the AC3 data is corrupt.

Thanks to Tom Dexter for this patch. My modifications were only to make it as close to the current ffmpeg code as possible (without importing the new CRC table stuff).

Note: See TracTickets for help on using tickets.