Welcome to Doom9's Forum, THE in-place to be for everyone interested in DVD conversion. Before you start posting please read the forum rules. By posting to this forum you agree to abide by the rules. |
22nd August 2010, 19:39 | #121 | Link |
Registered User
Join Date: Oct 2004
Location: France
Posts: 567
|
Right click during playback, then go into Filters submenu and find the lastest entry, click on Properties, if it starts by "Filter : lavf dshow source filter" then it is really LAVFSplitter which is used.
|
22nd August 2010, 20:42 | #122 | Link |
Registered Developer
Join Date: Mar 2010
Location: Hamburg/Germany
Posts: 10,340
|
LAVFSplitter 0.6
- Added support for E-AC3 - Fixed MPEG2 Media Types - Added support for RealVideo in MKV - Set proper aspect ratio in media type - Fixed memory leaks in packet handling code - Unicode support for stream names - Threading changes for more fluid playback at startup - Changed Flushing behaviour that solves a conflict with the MS DTV-DVD Decoder - Better support for Vorbis audio - Registers for the OGG Container Format Download: 32-bit & 64-bit Note: The filename of the filter has changed, so you'll need to re-register it. This will also register it for the OGG format, which seems to work pretty good so far. Please test! The stuttering on startup should be much better now, and hopefully some of the crash issues fixed. Additionally i patched MPC-HC to properly forward Media Type changes on subtitles to downstream filters, this will require at least MPC-HC rev. 2298 to work properly if you use ffdshow for subtitles. ffdshow was also updated to properly handle UTF-8 subtitles send by LAVFSplitter, this is in ffdshow rev. 3537. Please make sure to have both these components updated to at least these revisions before reporting subtitle related issues, thanks! |
22nd August 2010, 20:43 | #123 | Link |
Registered User
Join Date: Oct 2004
Location: France
Posts: 567
|
Thanks !
I have been playing with the code today and I wonder why you choose to use avg_frame_rate rather than r_frame_rate ? I have few samples (TS File mostly) whose frame rate was incorrectly detected by LAVFSplitter but not by VLC and mplayer. I saw that r_frame_rate was correct so I had a look to VLC and mplayer source code and they do use r_frame_rate rather than avg_frame_rate. I modified a bit the code to do more testing and so far all the samples I have tested have worked. Also I have been tracking down a bug with incorrect aspect ratio with some TS file but it is highly strange, ffprobe does detect the AR correctly but using a debug build of LAVFSplitter I see that the aspect ratio is not detected. I use ffprobe compiled at the same time than the libs used by the splitter and looking at ffprobe code I can't see why it does not work. Last edited by Underground78; 22nd August 2010 at 20:48. |
22nd August 2010, 20:50 | #124 | Link |
Registered Developer
Join Date: Mar 2010
Location: Hamburg/Germany
Posts: 10,340
|
r_frame_rate was set to 24.000 fps on some 23.976 movies, which seemed a bit weird, and avg_frame_rate contained the proper rates.
I can change it back if avg_frame_rate is broken in many cases. |
22nd August 2010, 21:21 | #125 | Link | |
Registered User
Join Date: Oct 2004
Location: France
Posts: 567
|
Quote:
About the aspect ratio problem, looking at VLC and mplayer, it seems something like this could make sense : Code:
diff --git a/src/Demuxers/LAVFGuidHelper.cpp b/src/Demuxers/LAVFGuidHelper.cpp index 06dae3d..ddfa505 100644 --- a/src/Demuxers/LAVFGuidHelper.cpp +++ b/src/Demuxers/LAVFGuidHelper.cpp @@ -311,11 +311,17 @@ VIDEOINFOHEADER2 *CLAVFGuidHelper::CreateVIH2(const AVStream* avstream, ULONG *s // Calculate aspect ratio AVRational r = avstream->sample_aspect_ratio; + AVRational rc = avstream->codec->sample_aspect_ratio; if (r.den > 0 && r.num > 0 && (r.den > 1 || r.num > 1)) { int num = 0, den = 0; av_reduce(&num, &den, (int64_t)r.num * vih->bmiHeader.biWidth, (int64_t)r.den * vih->bmiHeader.biHeight, 255); vih2->dwPictAspectRatioX = num; vih2->dwPictAspectRatioY = den; + } else if (rc.den > 0 && rc.num > 0 && (rc.den > 1 || rc.num > 1)) { + int num = 0, den = 0; + av_reduce(&num, &den, (int64_t)rc.num * vih->bmiHeader.biWidth, (int64_t)rc.den * vih->bmiHeader.biHeight, 255); + vih2->dwPictAspectRatioX = num; + vih2->dwPictAspectRatioY = den; } else { vih2->dwPictAspectRatioX = vih->bmiHeader.biWidth; vih2->dwPictAspectRatioY = vih->bmiHeader.biHeight; |
|
22nd August 2010, 21:49 | #127 | Link |
Registered User
Join Date: Mar 2006
Posts: 1,538
|
MPC-HC_r2300
ffdshow_rev3540 LAVFSplitter 0.6 madVR 0.27 If I right click and select filters it shows: Default DirectSound Device madVR Renderer ffdshow Audio Decoder Audio - AC3, 5.1, 48000 Hz (libavcodec)ffdshow Video Decoder English (ac3, 48000 Hz, 5.1, s16, 640 kb/s)Any idea why the Video Decoder is being listed as such? |
22nd August 2010, 21:50 | #128 | Link |
Registered Developer
Join Date: Mar 2010
Location: Hamburg/Germany
Posts: 10,340
|
Thats ffdshow being funny. Don't ask me why they show it there, but well, they just do.
I never understood why, and last time i asked i just got yelled at, go try your luck As a quick note, don't use the ffdshow menu to change streams, it somehow makes everything break with the splitter. |
22nd August 2010, 21:50 | #129 | Link |
4:2:0 hater
Join Date: Apr 2008
Posts: 1,302
|
Some limited testing with 0.6:
- MKVs with TrueHD tracks freeze, but the timer goes on. - MKVs with subs start like before in the No subs option. However, if you turn them on, they'll be displayed ~5-15 secs, or even more, after they should. Seeking fixes the delay. You can see it with the Avatar sample I posted earlier, but it's a bit short. - E-AC3 works fine. - Stuttering at startup seems fixed |
23rd August 2010, 12:58 | #133 | Link |
Registered User
Join Date: Nov 2008
Posts: 454
|
Looks like 0.6 fixed a lot of issues, good work!
This time i tested some simple audio formats - *.MP3, *.FLAC, *.DTS, *.OGG, and various audio in MKV kontainer (*.MKA). All formats create correct graph, but if i hit play, Graphstudio crash (all formats).
__________________
Working machine: Win10x64 + Intel Skull Canyon My HTPC. How to start with Bitcoin Last edited by hoborg; 23rd August 2010 at 13:02. |
23rd August 2010, 13:00 | #134 | Link |
Registered Developer
Join Date: Mar 2010
Location: Hamburg/Germany
Posts: 10,340
|
Files without video?
I'm not sure i fixed playing files without a video stream yet, i'll put it on the list, thanks for testing =)
__________________
LAV Filters - open source ffmpeg based media splitter and decoders |
23rd August 2010, 13:01 | #135 | Link |
Registered User
Join Date: Nov 2008
Posts: 454
|
__________________
Working machine: Win10x64 + Intel Skull Canyon My HTPC. How to start with Bitcoin |
23rd August 2010, 13:06 | #136 | Link |
Registered Developer
Join Date: Mar 2010
Location: Hamburg/Germany
Posts: 10,340
|
I suppose i can add their media types as well when i fixed that, eh.
__________________
LAV Filters - open source ffmpeg based media splitter and decoders |
23rd August 2010, 16:41 | #139 | Link |
Registered Developer
Join Date: Mar 2010
Location: Hamburg/Germany
Posts: 10,340
|
Yeah, i see that TrueHD issue. Not sure whats up with that. The other splitters i looked at just treat it as normal AC3 and it works just fine. I'll debug more.
__________________
LAV Filters - open source ffmpeg based media splitter and decoders |
23rd August 2010, 17:17 | #140 | Link |
Registered Developer
Join Date: Mar 2010
Location: Hamburg/Germany
Posts: 10,340
|
I fixed a bug that caused my TrueHD sample to not play at all (and probably some other streams as well), but turns out the bitstream must be broken somehow, when decoded its full of artifacts.
Mine was from a retail bluray, so it could just be the TS demuxer being broken again. I should remux a short sample into mkv or find one to test with.
__________________
LAV Filters - open source ffmpeg based media splitter and decoders |
Tags |
decoders, directshow, filters, splitter |
Thread Tools | Search this Thread |
Display Modes | |
|
|