View Issue Details

IDProjectCategoryView StatusLast Update
0008577MMW v4DLNA/UPnPpublic2012-02-05 22:33
Reporterrusty Assigned To 
PriorityurgentSeverityminorReproducibilityalways
Status closedResolutionfixed 
Product Version4.0 
Target Version4.0Fixed in Version4.0 
Summary0008577: Some m4a files can play in MM, but not via MM DLNA renderer
DescriptionAs described here: http://www.mediamonkey.com/forum/viewtopic.php?f=6&t=61382 , some m4a files won't play via the MM renderer even when they play in MM (file available via the forum post).

Steps To Reproduce1 Set up the UPnP / DLNA Server to share the file in question
2 Enable both the DLNA server and renderer
3 Use a DLNA controller to play the file and render it via the MM renderer

--> Playback doesn't start
TagsNo tags attached.
Attached Files
MediaMonkey_8577.elf (84,392 bytes)
Fixed in build1453

Relationships

related to 0008455 closedmichal OGG streams Crashes MM 
related to 0008595 closedLudek On each restart another MediaMonkey renderer device is generated 
related to 0008772 closedmichal M4A/M4B with AAC audio not playable in Win7 by in_mfaudio.dll plugin - regression 

Activities

Ludek

2011-10-27 22:55

developer   ~0028494

The file works fine for me over DLNA, both directly by browsing the server in MM interface and also by using a media controller (PlugPlayer in my case) and MM as renderer.

rusty

2011-10-27 23:01

administrator   ~0028495

Last edited: 2011-10-27 23:01

Try on a machine using Quicktime as the m4a decoder. If that doesn't work, I'll generate a debug log.

Ludek

2011-10-27 23:21

developer   ~0028497

You are right, using Quicktime as the m4a decoder it doesn't work, but I guess it has never worked with any m4a stream.

Ludek

2011-10-28 00:08

developer   ~0028498

Last edited: 2011-10-28 00:15

But the user on the forum indicates that it fails also with the MediaMonkey_AAC_Plug-in_1_0_6 for him.

There is also one regression, playback of FLAC files that are going to be auto-converted from M4A (or another format) fails, will be fixed in build 1450.

rusty

2011-10-28 02:02

administrator   ~0028499

I tested on a machine with Quicktime + MM Codec Pack 2.1.4 and it still fails. Could it be that MM's DLNA renderer preferentially tries to use Quicktime instead of the codec pack to decode the stream?

I'm not confident of that hypothesis, though, because other .m4a files play just fine over DLNA in this manner--the problem is specific to the file provided by the user.

michal

2011-10-28 06:02

developer   ~0028501

This file is ALAC, maybe this is the reason?

Ludek

2011-10-28 20:03

developer   ~0028509

@Rusty, the user on the forum indicated that after re-installing MM_Codec_Pack_Trial_2.0.0.14.mmip the file is playable for him (same as for me).

So try to re-install it and if it doesn't help then generate debug log please.

@Michal, is the file playable for you?

michal

2011-10-28 20:27

developer   ~0028513

It is playable. But with autoconversion to MP3 it throws memory error, log sent.

Ludek

2011-10-28 23:00

developer   ~0028518

Note that the memory error was reproducable only from the Delphi environment (otherwise it cannot cause any trouble), but thanks to this I found issue 0008587 that is fixed in 1451.

rusty

2011-10-31 15:16

administrator   ~0028536

Last edited: 2011-10-31 15:17

Attached is an dbgview log and elog of:
This log shows:
1 User plays 3 files in MM, 1 MP3, 2M4a
2 User sets up DLNA server in MM
--> 2 renderers become active on one instance of MM!
3 User activates MM Renderer 1 and MM Server, and verifies that it works with MP3
--> MP3 Plays successfully
4 User activates MM Renderer 2 and MM Server, and verifies that it works with MP3
--> MP3 Plays successfully
5 User Plays M4A file 1 successfully
6 User Plays M4A file 2
--> playback fails to initiate
--> AV occurs (attached)
--> MM freezes and must be forced closed

Note: the problem of MM generating 2 renderers for one instance of MM is a separate bug--it just happens to have occurred while testing this issue. It's not entered anywhere else because I can't replicate it. If the log gives enough information about the problem, please enter a separate bug.

Note also: the MM Codec Pack was installed.

rusty

2011-10-31 18:16

administrator   ~0028541

Note also: streaming the file with MM DLNA Client from MM DLNA Server works correctly as well (even when client and server are running on same machine).

Ludek

2011-10-31 18:38

developer   ~0028542

Last edited: 2011-10-31 18:44

The file that failed to render is an ALAC, and it freezed in a DLL that is part of Media Foundation, because (on Windows 7) the M4A streams are played by MF preferrably. On XP we plays them ourselves by using f_aac_codec.dll.

There would be valuable to find:
1. Does it always freeze on the ALAC file ( http://192.168.0.118:45874/%25/12713.m4a )?
According to http://msdn.microsoft.com/en-us/library/windows/desktop/dd742784%28v=vs.85%29.aspx It seems that MF cannot render ALACs, but it should fail gracefully and not freeze.

2. I guess that removing in_mfaudio.dll solves the problem?

3. Is the stream http://192.168.0.118:45874/%25/12713.m4a playable by WMP?

Ludek

2011-10-31 18:54

developer   ~0028543

The "two renderers" issue is tracked here: 0008595

Ludek

2011-10-31 20:24

developer   ~0028548

Last edited: 2011-10-31 20:25

Note that I have just tested this on Windows 7 and in my case the in_mfaudio.dll isn't able to play the ALAC stream at all there is an AV as can be seen from these lines:

[2272] in_mfaudio: Error opening input file: http://192.168.2.2:4000/%25/11286.m4a
[2272] , hr = 0xC00D001A
[2272] BQ: Added new task. Currently 1 tasks in queue.
[2272] PlayFile failed: Access violation at address 65A804ED in module 'in_mfaudio.dll'. Read of address CCCCCCCC

Ludek

2011-10-31 20:30

developer   ~0028549

Last edited: 2011-10-31 20:40

I've just found that the AV in in_mfaudio.dll was there, because the file itself has been somehow deleted from the disk (not sure why). When I re-added the file then it failed to play it with following lines:

[2272] in_mfaudio: ConfigureAudioStream:SetCurrentMediaType failed, trying 44100Hz, hr = 0xC00D5212
[2272] in_mfaudio: ConfigureAudioStream: SetCurrentMediaType failed, hr = 0xC00D5212
[2272] TWAInputPlugin.Play finishing

i.e. It doesn't play the ALAC stream (as expected), but doesn't freeze as in the Rusty's case.

Ludek

2011-10-31 20:42

developer   ~0028550

Last edited: 2011-10-31 20:59

It really seems that MF cannot play ALAC files at all. Also WMP fails to play the file completelly (both as stream and as a local file).

Assigning back to Rusty to answer questions from note #28542 , it seems that the file was played by our codec pack (after MF failed). Hard to say why MF frozen on the Rusty's machine.

rusty

2011-10-31 21:51

administrator   ~0028553

1. MM does _not_ freeze on attempting to play this Alac file. It just doesn't play it (http://192.168.0.118:4000/%25/12713.m4a)
2. On a machine with the codec pack 2.0.1.4 installed, if the in_mfaudio.dll is removed, the Alac file in question plays.
3. Windows Media Player generates an error (it shows an 'x' next to the file), but doesn't crash/freeze.

Ludek

2011-10-31 22:16

developer   ~0028554

Last edited: 2011-10-31 23:45

Although I cannot reproduce it, Rusty indicated that in case in_mfaudio.dll isn't removed then MM _always_ freezes on his machine (see attached ELF).

Michal, the solution seems to be to detect the ALAC file by ourself in the in_mfaudio.dll and fail gracefully (without the freeze) so that another plugin could play it.

michal

2011-11-01 10:30

developer   ~0028562

Fixed in build 1453. I've reproduced the freeze when playing over http, resolved by manual ALAC detection.

peke

2011-11-03 17:20

developer   ~0028620

Verified 1453