Log in

View Full Version : DirectShowSource -Audio mistiming


alexVS
22nd May 2010, 20:42
Hi, All
I'm trying to make 720p@50fps from 1080i@25fps source. The purpose is reducing bitrate and get rid of interlace.

The source is recorded hockey game.
Parameters:

Complete name : D:\HDSport\1.ts
Format : MPEG-TS
File size : 2.01 GiB
Duration : 38mn 36s
Overall bit rate : 7 455 Kbps

Video
ID : 322 (0x142)
Menu ID : 12102 (0x2F46)
Format : AVC
Format/Info : Advanced Video Codec
Format profile : Main@L4.0
Format settings, CABAC : Yes
Format settings, ReFrames : 4 frames
Duration : 38mn 37s
Bit rate : 6 490 Kbps
Width : 1 920 pixels
Height : 1 080 pixels
Display aspect ratio : 16:9
Frame rate : 25.000 fps
Standard : Component
Resolution : 24 bits
Colorimetry : 4:2:0
Scan type : Interlaced
Scan order : Top Field First
Bits/(Pixel*Frame) : 0.125
Stream size : 1.75 GiB (87%)
colour_primaries : BT.709-5, BT.1361, IEC 61966-2-4, SMPTE RP177
transfer_characteristics : BT.709-5, BT.1361
matrix_coefficients : BT.709-5, BT.1361, IEC 61966-2-4 709, SMPTE RP177

Audio
ID : 402 (0x192)
Menu ID : 12102 (0x2F46)
Format : AC-3
Format/Info : Audio Coding 3
Duration : 38mn 36s
Bit rate mode : Constant
Bit rate : 448 Kbps
Channel(s) : 6 channels
Channel positions : Front: L C R, Surround: L R, LFE
Sampling rate : 48.0 KHz
Video delay : -982ms
Stream size : 124 MiB (6%)
Language : Russian
Language, more info : Clean effects


Avisynth script is simple:
DirectShowSource("1.ts",FPS=25,audio=true)
assumefieldbased()
Yadif(1,1)
LanczosResize(1280,720)

ffdshow audio filter is AC3 filter, output is downmixed stereo, and it's what I want.

The problem is there is a HUGE audio delay (about 3-4 seconds and video goes ahead) when I play AVS or view it in virtualdub. I want to find EXACT synchronisation of audio and video, not relying on cut and try method.
In every software video player synchronisation of the source video/audio is fine.

What can be wrong? Why this delay is happen and how to fix it? :thanks:

PS Avisynth version is 2.5.8

Guest
22nd May 2010, 20:50
The problem is there is a HUGE audio delay
...What can be wrong? DirectShowSource() is likely the culprit. Use a frame accurate source filter.

Gser
22nd May 2010, 21:25
directshowsource() is likely the culprit. Use a frame accurate source filter.

dss2?

alexVS
22nd May 2010, 21:33
DirectShowSource() is likely the culprit. Use a frame accurate source filter.
I tried to use DGAVCIndex. I know it must be better then DirectShowSource. But strangely I receive so much artifacts with DGAVCIndex and 1080i (squares, distorted picture), that I have to use DirectShowSource()

Guest
22nd May 2010, 21:36
I tried to use DGAVCIndex. I know it must be better then DirectShowSource. But strangely I receive so much artifacts with DGAVCIndex and 1080i (squares, distorted picture), that I have to use DirectShowSource() DGAVCIndex has known problems with some PAFF streams.

Try DGDecNV or DSS2().

alexVS
22nd May 2010, 22:08
DSS2() works fine. Thanks!
But there is no sound.
DSS2("1.ts",FPS=25) works
DSS2("1.ts",FPS=25, audio=true) doesn't work

Guest
22nd May 2010, 22:20
Use DSS2() for the video and DirectShowSource for the audio(). Then AudioDub() them together.