Log in

View Full Version : Software based quality control software for H.264 + E-AC3 TS


Blue_MiSfit
13th March 2010, 07:59
Hi folks,

I'm interested in software that can run a "quality control test" on a TS containing H.264 video (High @ 4.1), and E-AC3 audio.

I'm mostly interested on detecting audio video and drop-outs, excessively high QPs, and (ideally) VBV accuracy for CBR. Some form of robust batch support is ESSENTIAL.

I have experimented with Inlet Semaphore, but am not satisfied with its metrics, performance, or batch capabilities. It has the ability to detect most of what I want, but its filters don't offer much adjustment.

Speed wise, it's hardcoded to use most of Mainconcept's filters - particularly their TS splitter, which is quite slow. Even when tweaked to use CoreAVC, I can't saturate a quad-core, even with 9mbps 1080p.

Also Semaphore doesn't run well on 64 bit Windows, particularly Vista SP2. Furthermore, it's missing any capability to decode E-AC3 audio. I can't seem to force it to use ffdshow, or any other DirectShow decoder in place of Mainconcept.

Does anyone have experience with other QC software? I need to inspect hundreds (if not thousands) of Transport Streams every week. I have lots of hardware to throw at it (20 Core 2 Quad CPUs), but need something more capable than Semaphore. Another $$$ "Pro" software is definitely acceptable if it gets the job done, though I'm always a huge fan of freeware / open-source - naturally!

Any thoughts or suggestions would be more than appreciated.

Thanks,
~MiSfit

madshi
16th March 2010, 18:08
I've no idea what "QPs" and "VBV accuracy for CBR" are. But I'm checking my own HDTV broadcast recordings with "eac3to movie.ts -check". I've never ever had a glitch during playback with a recording eac3to finds no problems with. So it seems to work reliably for finding broadcasting glitches. During a "check" run eac3to does not decode audio or video, but it does check the CRC of AC3 and E-AC3 tracks. So if there are any audio CRC errors, they are reported. There are no extensive video checks being done, though. Wouldn't know what to look for there, cause video isn't CRC protected...

Not thourough enough for your needs, I guess?

Blue_MiSfit
17th March 2010, 22:33
That's helpful, madshi! Thanks!

I may very well integrate this into our audio encoding workflow (since we use eac3to to transcode PCM / AC3 to 384k AC3, thanks).

I do need something that can check for excessive black frames, low audio levels / dropouts, or excessively high quantization. Since I encode CBR, I need some kind of VBV analysis as well.

~MiSfit

Dark Shikari
17th March 2010, 22:36
For QP detection, just add some printfs to libavcodec.

Blue_MiSfit
18th March 2010, 00:43
Interesting idea, Dark_Shikari.

One of the biggest problems with software QC is its inability to detect audio sync issues. Sure, I can check to see if the audio and video durations are close, but this often isn't enough.

I'm assuming there haven't been any wonderful advances in this field, have there? :)

~MiSfit

LoRd_MuldeR
18th March 2010, 01:01
How do you want to check for a/v sync in an automated/objective way, when deciding it subjectively isn't easy already? I think this is almost impossible to do. First of all, audio and video data are of different nature. Secondly you would need to detect some kind of meaningful "sync points" in both, the video and audio stream. That alone is a though task. But then you would need to map each sync point from the audio stream to the corresponding sync point in the video stream (or vice versa), before you can decide whether they are "in sync" or not. That mapping would be an extremely complex thing, probably more related to AI than audio/video processing. And there a very different scenarios to consider, such as "conversation scene" -vs- "action scene" -vs- "silent scene". Of course you can simply check for bistream errors and timestamp consistency, but that can't tell you anything about the synchronicity of the actual content. If the content wasn't synced properly, the bistream/transmission can be perfect and it's still out of sync...

Blue_MiSfit
20th March 2010, 02:45
Precisely.

So, I've decided to put sync to the pasture, and just detect the other problems.

I'll be looking at dropouts, (potentially) poor quality in the form of high average QPs, possibly VBV accuracy as well, though I trust x264 as a rule.

I'll be looking at Rhozet's up and coming QC product next week. I think it will do what we need.

~MiSfit