Log in

View Full Version : LAV Filters - DirectShow Media Splitter and Decoders


Pages : 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143 144 145 146 147 148 149 150 151 152 153 154 155 156 157 158 159 160 161 162 163 164 165 166 167 168 169 170 171 172 173 174 175 176 177 178 179 180 181 182 183 184 185 186 187 188 189 [190] 191 192 193 194 195 196 197 198 199 200 201 202 203 204 205 206 207 208 209 210 211 212 213 214 215 216 217 218 219 220 221 222 223 224 225 226 227 228 229 230 231 232 233 234 235 236 237 238 239 240 241 242 243 244 245 246 247 248 249 250 251 252 253 254 255 256 257 258 259 260 261 262 263 264 265 266 267 268 269 270 271 272 273 274 275 276 277 278 279 280 281 282 283 284 285 286 287 288 289 290 291 292 293 294 295 296 297 298 299 300 301 302 303 304 305 306 307 308 309 310 311 312 313 314 315 316 317 318 319 320 321 322 323 324 325 326 327 328 329 330 331 332 333 334 335 336 337 338 339 340 341 342 343 344 345 346 347 348 349 350 351 352 353 354 355 356 357 358 359 360 361 362 363 364 365 366 367 368 369 370 371 372 373 374 375 376 377 378 379 380 381 382 383 384 385 386 387 388 389 390 391 392 393 394 395 396 397 398 399 400 401 402 403 404 405 406 407 408 409 410 411 412 413 414 415 416 417 418 419 420 421 422 423 424 425 426 427 428 429 430 431 432 433 434 435 436 437 438 439 440 441 442 443 444 445 446 447 448 449 450 451 452 453 454 455 456 457 458 459 460 461 462 463 464 465 466 467 468 469 470 471 472 473 474 475 476 477 478 479 480 481 482 483 484 485 486 487 488 489 490 491 492 493 494 495 496 497 498 499 500 501 502 503 504 505 506 507 508 509 510 511

pankov
26th February 2012, 20:39
necairiel,
I'm trying to make Zoom Player play HTTP streams but I have issues. To be able to show to problem to the author I decided to build the graph in Graph Studio Next and show it to him but I'm not able to do it there too - I'm able to build the graph by selecting a "file", not URL for LAV Splitter Source but the graph doesn't play. At the same time everything works just fine when I use MPC-HC and just select "open file" and paste the URL (for example http://10.11.12.14:7522/upnp/channelstream/54.ts - this will play channel number 54 of my DVB Viewer's Recording Service). It does work with SD and HD channels both in MPEG2 and H264.
Do I have to do something special to be able to reproduce the same in Graph Studio (Next)?

nevcairiel
26th February 2012, 20:42
Usually you would just add LAV Splitter Source as a new filter, and give it the URL as file path. Note sure what the URL option does differently, never used it.

Note that this won't work on the release version, but only on the special http builds i posted earlier.

pankov
26th February 2012, 20:46
Thanks,
that's exactly what I'm doing and I do use the "....http2" version you posted yesterday. It works perfectly in MPC-HC but not in Graph Studio / Zoom Player.
it does show a "active movie window" with the correct resolution (1920x1080 for HD channels) and sometimes a few frames but it simply doesn't continue to play
:(

SamuriHL
26th February 2012, 20:47
nev, what are your current settings in madVR for your 450? I'm having a hard time getting it to work properly with the latest lav filters from source and 0.81.

nevcairiel
26th February 2012, 20:50
Thanks,
that's exactly what I'm doing and I do use the "....http2" version you posted yesterday. It works perfectly in MPC-HC but not in Graph Studio / Zoom Player.
it does show a "active movie window" with the correct resolution (1920x1080 for HD channels) and sometimes a few frames but it simply doesn't continue to play
:(

I just tried in GraphStudioNext, and it worked fine too.
Just created a new LAV Splitter Source, fed it with a URL, and then right clicked on both pins and selected "Render"

For the record, i tried with these URLs:
http://files.1f0.de/samples/20100812_1635_-_TVNorge_HD_-_Gossip_Girl.ts
http://files.1f0.de/samples/Test_clip_avc.1080i59.94.ac3.5.1.mkv


nev, what are your current settings in madVR for your 450? I'm having a hard time getting it to work properly with the latest lav filters from source and 0.81.
My 450 died some time ago (together with the systems SSD), i think some power spike did it. Got some cheapo AMD card in there right now for testing stuff.

SamuriHL
26th February 2012, 20:54
My 450 died some time ago (together with the systems SSD), i think some power spike did it. Got some cheapo AMD card in there right now for testing stuff.

Oh hell that sucks! Ok, I'll have to see if anyone in the madVR thread replies. Not sure what's happening but with CUVID I'm getting dropped frames randomly and the presentation glitches are all over the place. The queues aren't staying filled and sometimes drop so low that it's causing the issues. Very odd.

nevcairiel
26th February 2012, 20:55
The most important setting for me always was flushing, just no/no/no/flush&sleep would usually do away with most problems.

SamuriHL
26th February 2012, 20:56
I'll give that a shot. Thanks!

pankov
26th February 2012, 21:00
well,
these play ... sort of, because in the beginning it's all smooth but after a couple of seconds it changes to slideshow without sound ... but I guess this could be explained by slow connection which is very strange since when I download the file with my browser (Firefox) I get around 1MB/s (total download time 118 seconds for the Gossip Girl sample).
With my local stream though I have a gigabit connection (tops around 30MB/s) and everything plays smoothly in MPC or in DVBViewer itself. So I'm 100% sure that with my local test the bandwidth is not the issue.
Is there something I can do to find where is the problem? Any debug logging ... or something like this?

nevcairiel
26th February 2012, 21:02
(total download time 118 seconds for the Gossip Girl sample).

The file is only 64 seconds long, so it wouldn't run smooth. :p
If everything works fine in MPC-HC, and you only see LAV Splitter Source and not the File Source (URL) in there, then i don't know what to tell you. LAV works fine.

BTW, its right now only designed to work with seekable sources, so if whatever you're trying to run there is not a file but some kind of live stream, it may not work. I haven't tested it, and i really have no idea how to test it. :)

pankov
26th February 2012, 21:12
Yes,
I saw that too just after I posted my reply (sorry)
I'm happy that it works in MPC-HC - I just wanted to make it work in Graph Studio too so I can point both examples to bLight (the author of Zoom Player).
I guess I'll have to convince him only with MPC
;)
Thanks for your great work!

Mercury_22
26th February 2012, 21:36
That's interesting :), can you also test this vid with DXVA(native) and tell me gpu(shader clock, mem. clock) frequencies for both DXVA(native) and DXVA(C/B). Also if you're running any kind of benchmarking tools e.g. graph studio, dxvaChecker, please close it before testing.

Nothing else it's running (except a defrag :) ) http://imageshack.us/photo/my-images/844/dxvanative.png/

EDIT this is with my TV set at 60 Hz, with TV set at 59 HZ it's even "smoother" :)

P.S. one thing, which I didn't believe in until I bump into many times (when I was helping my friends set their HTPCs), is that the quality of the cables (HDMI, DVI, DP) does matter ! But I'm NOT talking about that "Gold Plated" marketing "gimmick"

Pat357
27th February 2012, 00:58
I have an issue with the "http-streaming" :
- In MPC-HC : <ctrl> + O -> enter
"http://files.1f0.de/samples/2010 ..Gossip_Girl.ts",
I always have "File Source" + LAV-splitter, not LAV-splitter-Source.

I have imported the reg-file with the http key to LAV-Splitter-source.. What is the magic to get rid of the File Source ??

In GraphStudio, I get a playing file using Lav-splitter-source, works very nice indeed !

Never mind : after re-importing the reg and do a reboot, everything works as it should.
Thanks!

Pat357
27th February 2012, 01:30
The most important setting for me always was flushing, just no/no/no/flush&sleep would usually do away with most problems.
I have this setting too for my GTX-570 when Madvr is in FSE.
Seems to work well.
Nev, did you also use this for windowed mode with your GTX-570 ?

Pat357
27th February 2012, 01:56
Nev,

A quick question about the buffers used in LAV :
In some files I have, MPC shows like 3 buffers (?) :
[0] 1000/xxxxx kB [1] 1000/yyyyy kB [2] 0/zzzzz

As I understood xxxxx is the buffer from compressed frames (input decoder), right ? Is yyyy the buffer for audio or so ? (values are much smaller, like 1000/1050 kB..
Following this reasoning, could zzzz be for subs or another audio stream ? (=wild guess:D)

Does LAV also have buffers on the output of the decoder(s) ?
I mean buffering decoded content to allow a more fluent flow to the rendering process in case of heavy bandwidth fluctuations ?
If so, about how much decoded frames are buffered ?
I'm just curious...:p

nevcairiel
27th February 2012, 08:16
I have this setting too for my GTX-570 when Madvr is in FSE.
Seems to work well.
Nev, did you also use this for windowed mode with your GTX-570 ?

I don't watch movies on the PC with my 570, so i never really did any extensive testing regarding playback stability.


A quick question about the buffers used in LAV :
In some files I have, MPC shows like 3 buffers (?) :
[0] 1000/xxxxx kB [1] 1000/yyyyy kB [2] 0/zzzzz

Those are the queues in LAV Splitter for the three output pins. The first number (1000) is the number of frames in the queue, the second number is the size of the queue in kB. Its somewhat unusual that both numbers would be 1000 exactly, though, because of different frame durations between audio and video.

As you guessed, first is video, second is audio and third is subtitles. Subtitles will usually always be empty because the subtitle renderers usually accept data as soon as its available and don't require me to queue it.


Does LAV also have buffers on the output of the decoder(s) ?
I mean buffering decoded content to allow a more fluent flow to the rendering process in case of heavy bandwidth fluctuations ?


The decoders do not perform any extra buffering, except if its required for the decoding process itself.

DragonQ
27th February 2012, 11:30
Video of DXVA2 Native mode not working with a BBC One HD stream using a GT 430. (http://www.youtube.com/watch?v=7Q96rwFuyjw&feature=youtu.be&hd=1) It only seems to affect BBC One HD and BBC HD, but not ITV1 HD or Channel 4 HD. This implies to me that it's something to do with MBAFF encoding (which I *think* is only used on the BBC's HD channels).

mylle
27th February 2012, 11:33
Hi Nev,

First of all. Thanks for the amazing job you are doing on the LAV splitter/decoder.

I am thinking about buying a new motherboard and cpu for my mediacenter. I am currently on an old core2duo and a gt430. I am running mediaportal and watching both h264mkvs, full blu-ray rips, TV in both sd and 720p and 1080i.

Would a SB motherboard and CPU be enough for me? An I3 just using quicksync?

What would you recommend?

Regards
Jacob

nevcairiel
27th February 2012, 17:28
This file plays very choppy in both DXVA and DXVA CB, but plays smooth with MPC build in DXVA.
In all 3 cases the LAV-spitter is used, so it's not a splitter issue.
I also tried the MPC build in MPEG-spliiter and got the same result.

http://www.mediafire.com/?3z15d95b7j0j3jm

http://aleksoid.tosei.ru/Test/Sample/Blind_Fury.m2ts - Also play very bad in software and DXVA with LAV. I think - it's a ffmpeg issue. Some times ago you fix ffmpeg to normal playback MBAFF H264.
Video of DXVA2 Native mode not working with a BBC One HD stream using a GT 430. (http://www.youtube.com/watch?v=7Q96rwFuyjw&feature=youtu.be&hd=1) It only seems to affect BBC One HD and BBC HD, but not ITV1 HD or Channel 4 HD. This implies to me that it's something to do with MBAFF encoding (which I *think* is only used on the BBC's HD channels).

I just fixed a MBAFF related problem, please try with this version. The two files above are fixed for me, good chance it also fixes your TV playback.

http://files.1f0.de/lavf/LAVFilters-0.48-9-g75f2110.zip

chros
27th February 2012, 19:23
I was just curious and tried this file: http://aleksoid.tosei.ru/Test/Sample/Blind_Fury.m2ts , but I can't get 16:9 ratio, I get 4:3 ...
Setup: MPC-HC + Lav source splitter + Lav Video decoder (CUVID, 'Use stream aspect ratio' is checked) + MadVR or EVR Custom Presenter .

DragonQ
27th February 2012, 19:38
I just fixed a MBAFF related problem, please try with this version. The two files above are fixed for me, good chance it also fixes your TV playback.

http://files.1f0.de/lavf/LAVFilters-0.48-9-g75f2110.zip
Thanks Nev, this fixes the problem shown in the YouTube video I linked to. :D

The only issue I have with DXVA2 in MediaPortal now is the piss-poor deinterlacing. It's not as bad as weave but it's clearly not the highest quality adaptive mode since there are combing artefacts a few times a minute (I NEVER see combing with CUVID). It's also being output at 25p instead of 50p.

I know you said it's up to the renderer and it isn't an issue you can fix but you know much more about this than I do so I must ask: can the MediaPortal devs change something in their EVR implementation to fix this?

nevcairiel
27th February 2012, 19:53
I was just curious and tried this file: http://aleksoid.tosei.ru/Test/Sample/Blind_Fury.m2ts , but I can't get 16:9 ratio, I get 4:3 ...
Setup: MPC-HC + Lav source splitter + Lav Video decoder (CUVID, 'Use stream aspect ratio' is checked) + MadVR or EVR Custom Presenter .

Must be something off at your end, the file contains proper aspect ratio information and works fine here.

Reino
27th February 2012, 20:45
I don't know if this has been asked before (search returned nothing), but is subtitle support for the decoder on your to-do-list, nevcairiel?

red5goahead
27th February 2012, 20:49
Do you know if is it avaiable a Delphi interface for the lav codecs?

aufkrawall
27th February 2012, 20:51
@nev

Could you please make it possible to set merit of HW accelerate settings?

e.g.,
use DXVA2(native) whenever possible,
else if decoding by DXVA2 is still possible, but renderer is not EVR, or some other filters pin between LAV Video and EVR, switch to DXVA2(copy back),
otherwise(video cannot be decoded via DXVA2 at all), switch to software decoder.
This is really a great idea.
It would make it possible to e.g. use CUDA for MPEG-4 and DXVA copy back for WMV3 while using madVR -> full potential of VPU utilized. :)

husmoaschta
27th February 2012, 20:59
Thanks Nev, this fixes the problem shown in the YouTube video I linked to. :D

The only issue I have with DXVA2 in MediaPortal now is the piss-poor deinterlacing. It's not as bad as weave but it's clearly not the highest quality adaptive mode since there are combing artefacts a few times a minute (I NEVER see combing with CUVID). It's also being output at 25p instead of 50p.

I know you said it's up to the renderer and it isn't an issue you can fix but you know much more about this than I do so I must ask: can the MediaPortal devs change something in their EVR implementation to fix this?

I get perfect deinterlacing in MP with DXVA2 native.
Be sure to disable YADIF and set output to NV12.

nevcairiel
27th February 2012, 21:14
I get perfect deinterlacing in MP with DXVA2 native.
Be sure to disable YADIF and set output to NV12.

Those settings make no difference for DXVA2 native decoding.

VipZ
27th February 2012, 21:20
Nev, HTTP streaming is working great for SHOUTcast streams and samples posted earlier in x86 but x64 doesn't seem to work.

I am assuming HKEY_CLASSES_ROOT\http is valid for both x86 and x64 applications.

husmoaschta
27th February 2012, 21:23
Those settings make no difference for DXVA2 native decoding.

But HW-deinterlacing is only available with NV12, isn't it?
And when I activate YADIF, I get that 25Hz-Output too, instead of 50Hz ...

nevcairiel
27th February 2012, 21:29
Nev, HTTP streaming is working great for SHOUTcast streams and samples posted earlier in x86 but x64 doesn't seem to work.

I am assuming HKEY_CLASSES_ROOT\http is valid for both x86 and x64 applications.

I forgot to add the protocols to the x64 compile script, corrected now.

And yes, those values should apply to both x86 and x64.

But HW-deinterlacing is only available with NV12, isn't it?
And when I activate YADIF, I get that 25Hz-Output too, instead of 50Hz ...

DXVA2 in "native" mode will always output NV12, and never use YADIF, there is no way around it. :)

I'll test what happens with YADIF active, maybe there is some bug that sets the interlaced flags wrong in that case.

Edit:
Found the problem, if YADIF was activate it was claiming to the renderer that it wasn't interlaced anymore - of course for DXVA2 native that wasn't true.

VipZ
27th February 2012, 21:35
Thanks

DragonQ
27th February 2012, 21:53
This is really a great idea.
It would make it possible to e.g. use CUDA for MPEG-4 and DXVA copy back for WMV3 while using madVR -> full potential of VPU utilized. :)

It'd also be great for setting DXVA2 Native as the main mode but falling back to CUVID (rather than software decoding) for files that DXVA2 cannot handle!

DXVA2 in "native" mode will always output NV12, and never use YADIF, there is no way around it. :)

I'll test what happens with YADIF active, maybe there is some bug that sets the interlaced flags wrong in that case.

Edit:
Found the problem, if YADIF was activate it was claiming to the renderer that it wasn't interlaced anymore - of course for DXVA2 native that wasn't true.

Aha, so that may be why the deinterlacing is cruddy - I had YADIF still ticked. Haven't got a chance to test it until tomorrow though! Will this be fixed in LAV 0.49? :D

I was just curious and tried this file: http://aleksoid.tosei.ru/Test/Sample/Blind_Fury.m2ts , but I can't get 16:9 ratio, I get 4:3 ...
Setup: MPC-HC + Lav source splitter + Lav Video decoder (CUVID, 'Use stream aspect ratio' is checked) + MadVR or EVR Custom Presenter .
Do you have "Use stream aspect ratio" ticked in LAV? Some HD programming appeared as 4:3 for me until I ticked this option (although admittedly it was 1440x1080i so probably not related to this problem).

glorp
27th February 2012, 21:59
DXVA2 in "native" mode will always output NV12, and never use YADIF, there is no way around it. :)
What do you consider the "proper" choice of options then for DXVA2 decoding with LAVVid? I can get NV12, RGB32 and UYVY to show up as the "mixer output" format in MPC-HC's OSD display depending on what color space options I enable when I'm playing 4:2:0 content. I;ve always been a little confused about which color space options matter in which case(s).
ED: It' an ATi card in case it matters.

nevcairiel
27th February 2012, 22:02
It'd also be great for setting DXVA2 Native as the main mode but falling back to CUVID (rather than software decoding) for files that DXVA2 cannot handle!

CUVID cannot handle anything that DXVA2 cannot handle, its the same hardware doing the decoding. There is right now only MPEG4-ASP which is just not implemented in DXVA2 yet.


Aha, so that may be why the deinterlacing is cruddy - I had YADIF still ticked. Haven't got a chance to test it until tomorrow though! Will this be fixed in LAV 0.49? :D

Already fixed. Stupid logic mistake. :)

What do you consider the "proper" choice of options then for DXVA2 decoding with LAVVid? I can get NV12, RGB32 and UYVY to show up as the "mixer output" format in MPC-HC's OSD display depending on what color space options I enable when I'm playing 4:2:0 content. I;ve always been a little confused about which color space options matter in which case(s).
ED: It' an ATi card in case it matters.

With DXVA2 "native" you really have no choice. It'll always output NV12 because thats just the format it decodes to, and the image never leaves the GPU, so it cannot be changed.

With DXVA2 "copy back" its really no different to software decoding. NV12 output is the "untouched" variant, which is probably good for most people.

RGB32 can be a good alternative to avoid bad chroma upsampling in the renderer, but usually disables renderer deinterlacing.

glorp
27th February 2012, 22:08
With DXVA2 "native" you really have no choice. It'll always output NV12 because thats just the format it decodes to, and the image never leaves the GPU, so it cannot be changed.

So why does MPC say I'm getting RGB32 if I turn off all the c-s options except RGB32? Is there an extra conversion ocurring somewhere? That's what confuses me. I can see that the card only does DXVA2 in NV12 from DVXChecker. I get that, just not what happens after and what options to set or whether they matter.

nevcairiel
27th February 2012, 22:13
So why does MPC say I'm getting RGB32 if I turn off all the c-s options except RGB32? Is there an extra conversion ocurring somewhere? That's what confuses me. I can see that the card only does DXVA2 in NV12 from DVXChecker. I get that, just not what happens after and what options to set or whether they matter.

Says NV12 for me when i do that.
http://images.gammatester.com/pics/25799f1d88d317516bcc3cd57607cdc3.png

DXVA2 "native" is active, everything but RGB unchecked - and it still outputs NV12.

aufkrawall
27th February 2012, 22:17
CUVID cannot handle anything that DXVA2 cannot handle, its the same hardware doing the decoding. There is right now only MPEG4-ASP which is just not implemented in DXVA2 yet.

It'd be really cool though if you made single codecs allocatable to single hardware decoders, maybe somewhen before next christmas. :D

glorp
27th February 2012, 22:25
Says NV12 for me when i do that.
http://images.gammatester.com/pics/25799f1d88d317516bcc3cd57607cdc3.png

DXVA2 "native" is active, everything but RGB unchecked - and it still outputs NV12.

Take a look:
http://www.mediafire.com/i/?k9pxp8g8m38ia10

http://www.mediafire.com/i/?k9pxp8g8m38ia10

nevcairiel
27th February 2012, 22:28
Take a look:
http://www.mediafire.com/i/?k9pxp8g8m38ia10

http://www.mediafire.com/i/?k9pxp8g8m38ia10

Your link doesn't work :(

glorp
27th February 2012, 22:31
Your link doesn't work :(

Stupid mediafire. Try this:
http://glorp.ultraseedbox.com/public/files/Capture1.jpg

nevcairiel
27th February 2012, 22:33
Stupid mediafire. Try this:
http://glorp.ultraseedbox.com/public/files/Capture1.jpg

I see.

I guess its some of your EVR-CP settings, most likely Force 10-bit Input or something. What that line describes it the output from the Mixer, not the output from the decoder, so who knows whats going on in there.
The Mixer will need to do some conversion to give you RGB32, but of course to output the image, it needs to be converted to RGB32 at some point anyway.

glorp
27th February 2012, 22:36
I see.

I guess its some of your EVR-CP settings, most likely Force 10-bit Input or something. What that line describes it the output from the Mixer, not the output from the decoder, so who knows whats going on in there.
The Mixer will need to do some conversion to give you RGB32, but of course to output the image, it needs to be converted to RGB32 at some point anyway.

OK. So best to enable NV12 ? It is the MPC renderer 10-bit input toggle that does that. Disabling it always outputs NV12. Enabling always gets RGB. Thanks nev. Learned something useful :p

Reino
28th February 2012, 00:12
Stupid mediafire.No, you made a typo: http://www.mediafire.com/i/?k9pxp8g8m38ia10 (http://www.mediafire.com/i/?k9pxp8g8m38ia10)

Thanks, I just realised that I was trying to test something that wasn't yet supported (SHOUTcast).
Don't think either of those things ever will be supported.Nev, HTTP streaming is working great for SHOUTcast streams...Did I miss something? :confused: Good news of course! :)
I did some quick tests in GraphStudioNext (MPC-HC's parsing capabilities are really bad. Perhaps you can convince MPC-HC devs to fix it.) and I can say SHOUTcast streams (mp3 and aac) seem to work fine. With Icecast streams (vorbis) on the other hand, LAV Splitter Source initially accepts the stream, connects to LAV Audio Decoder or FFDShow, but when you hit the play-button there's no audio. DC-Bass Source and DC-Bass Source Mod handle these perfectly. 2 quick links you can test:
http://ogg2.as34763.net:80/vc160.ogg
http://stream-sd.radioparadise.com:9000/rp_96.ogg

Btw, is subtitle support for LAV Video Decoder on your to-do-list?
Whereas MPC-HC has an internal subtitle renderer, a lot of other media players do not and you rely on VSFilter or FFDShow.

VipZ
28th February 2012, 00:29
http://ogg2.as34763.net:80/vc160.ogg
http://stream-sd.radioparadise.com:9000/rp_96.ogg


This plays fine for me. Yep since Nev added HTTP steaming support SHOUTcast works great. IMO it has now surpassed MPC and PotPlayers integrated filters, but sadly missing the info, but that's small vs breaking up streams. I did my testing in custom MPC build with all internal filters removed.

Nev, do you know the the state of UDP streaming within ffmpeg?

clsid
28th February 2012, 00:49
It works here with LAV Audio, but with ffdshow I just get silence.

Reino
28th February 2012, 02:02
Exactly! I think the issue I described about ogg-files a week ago (http://forum.doom9.org/showthread.php?p=1560106#post1560106), applies to ogg-streams as well. BUT only with LAV + FFDShow. MPC-HC Ogg Splitter + FFDShow is perfectly fine, as well as LAV Splitter + LAV Audio Decoder.
So either LAV Splitter or FFDShow Audio Decoder is to blame, but I can't tell... Most likely the issue here and that one are related.


I just noticed nevcairiel posting a reg-file (http://forum.doom9.org/showthread.php?p=1561178#post1561178) to force LAV as http source. At last, this seems to be the only way to enable proper SHOUT- and Ice-cast support in MPC-HC. With...
Windows Registry Editor Version 5.00

[HKEY_CLASSES_ROOT\http]
;DC-Bass Source Mod
"Source Filter"="{ABE7B1D9-4B3E-4ACD-A0D1-92611D3A4492}"...this finally lets MPC-HC except DC-Bass Source (Mod) too! (but since the latter can handle audio only, that will get you into trouble in case you stream videos (http://forum.doom9.org/showthread.php?p=1561456#post1561456))
Zoom Player automatically recognizes DC-Bass Source (Mod)'s audio streaming capabilities ("Options", "System Overview"), which it doesn't with LAV Splitter Source, but I believe that's bLight's cup of tea. But with MPC-HC it seems [HKEY_CLASSES_ROOT\http] is the only place it's looking for for, not only SHOUTcast-, but all streaming- DS-filters. First I thought it was the MPC-HC SHOUTcast Source Filter (http://sourceforge.net/apps/trac/mpc-hc/ticket/1562), then MPC-HC's *.m3u and *.pls parsing capabilities, but now I think this could be the reason why streaming has been so miserable for so long.

clsid
28th February 2012, 04:12
That reg tweak is not really a good idea. You should set the source filter for individual file extensions like this:
Windows Registry Editor Version 5.00

[HKEY_CLASSES_ROOT\http\Extensions]
".ogg"="{B98D13E7-55DB-4385-A33D-09FD1BA26338}"

nevcairiel
28th February 2012, 07:37
Did I miss something? :confused: Good news of course! :)


If someone told me that Shoutcast is just a plain HTTP stream, my answer could've been more precise =p


Btw, is subtitle support for LAV Video Decoder on your to-do-list?
Whereas MPC-HC has an internal subtitle renderer, a lot of other media players do not and you rely on VSFilter or FFDShow.
http://code.google.com/p/lavfilters/issues/detail?id=137

Exactly! I think the issue I described about ogg-files a week ago (http://forum.doom9.org/showthread.php?p=1560106#post1560106)

The issue described there with the half second of missing audio was a bug in the vorbis decoder, which has been corrected in ffmpeg/libav now (not in 0.48, but in the test build i posted yesterday). If all you're seeing is a bit of missing audio, then ffdshow still needs to update their ffmpeg/libav. With anything else, i can't comment without knowing whats wrong. :) LAV doesn't do any extra tricks for Vorbis, so i don't see what could be wrong in LAV Splitter - i would vote for a bug in ffdshow or a missing libav update (or maybe its fixed in ffmpeg, and ffdshow uses libav)

That reg tweak is not really a good idea.
I never said it was a good idea, it was just the fastest way to test http streaming =p

Peekstra
28th February 2012, 08:50
Hi Nev, this file produces a crash in lavvideo with both MPC and Zoomplayer. The crash happens at 16:38.

Some info about the file:

Format/Info : Advanced Video Codec
Format profile : Baseline@L1.3
Format settings, CABAC : No
Format settings, ReFrames : 2 frames
Format settings, GOP : M=1, N=24
Codec ID : avc1
Codec ID/Info : Advanced Video Coding

and lavvideo is set to software decoding (the rest is set to defaults as far as I know).

http://www.mediafire.com/?94s0pu9222v50fy

thanks!

EDIT: I just played the sample with the Microsoft decoder (Win7) and it doesn't crash at that point.

Mangix
28th February 2012, 09:44
does LAV audio support ReplayGain for supported formats?