20 May '13 - 02:22 *
Welcome, Guest. Please login or register.
Did you miss your activation email?

Login with username, password and session length
 
   Home   Help Search Login Register  
Pages: [1]
  Reply  |  Print  
Author Topic: Updating Windows 7 the aac decoder has a problem!  (Read 1199 times)
shuttle
Posts: 70


« on: 23 Mar '12 - 18:26 »
Reply with quoteQuote

Anyone has this problem?
Logged
Ionut Cristea
Posts: 1372


« Reply #1 on: 23 Mar '12 - 18:33 »
Reply with quoteQuote

 Yes i have it. a MFPLAT.dll error appears sometime
Logged
shuttle
Posts: 70


« Reply #2 on: 23 Mar '12 - 18:41 »
Reply with quoteQuote

I don't have any message.
Only my application sometimes crash, sometimes the sound is not continuos!
Logged
shuttle
Posts: 70


« Reply #3 on: 24 Mar '12 - 00:09 »
Reply with quoteQuote

If I use the old version of Bass.dll (last modified 18 december 2009 - 97Kb) the problem is solved.

The latest version of Bass.dll in XP work good.

Ian, what about?
Logged
Ian @ un4seen
Administrator
Posts: 15244


« Reply #4 on: 26 Mar '12 - 16:37 »
Reply with quoteQuote

To get some clues, please tell Windows to generate dump files (in your user "AppData\Local\CrashDumps" folder) by adding this "localdumps-full" registry entry...

   www.un4seen.com/stuff/localdumps.zip

And then reproduce the crash and upload the generated dump file (ZIP it first) to have a look at here...

   ftp.un4seen.com/incoming/

Please use the latest stuff when doing that...

   www.un4seen.com/stuff/bass.dll

If the problem is happening with a particular file, please upload that file too.
Logged
shuttle
Posts: 70


« Reply #5 on: 26 Mar '12 - 19:12 »
Reply with quoteQuote

The problem is in Windows 7 with "BASS_AAC_StreamCreateFileUser" and bass.dll new version.



Logged
Ian @ un4seen
Administrator
Posts: 15244


« Reply #6 on: 27 Mar '12 - 17:02 »
Reply with quoteQuote

BASS_AAC_StreamCreateFileUser will use BASS_AAC's built-in AAC decoder rather than Windows 7's AAC decoder. Did you mean to say BASS_StreamCreateFileUser? Also, which file system (NOBUFFER/BUFFER/BUFFERPUSH) are you specifying in the call?
Logged
shuttle
Posts: 70


« Reply #7 on: 29 Mar '12 - 18:54 »
Reply with quoteQuote

My application never had problems until bass.dll version 2.4.7.

With 2.4.8 version in windows 7, after calling "g_Stream1 = BASS_AAC_StreamCreateFileUser(STREAMFILE_BUFFERPUSH, BASS_STREAM_BLOCK, VarPtr(g_Fileprocs1), 0)" I have error 45.

In windows XP it works good.

I applied also your suggest about CrashDumps but I don't find any file!

Logged
Ian @ un4seen
Administrator
Posts: 15244


« Reply #8 on: 30 Mar '12 - 12:36 »
Reply with quoteQuote

Please clarify what "error 45" is and where it's coming from, eg. is that a BASS error code? Perhaps a screenshot would help. A dump file would only be generated if the process actually crashes, not if a call just fails.
Logged
shuttle
Posts: 70


« Reply #9 on: 30 Mar '12 - 17:46 »
Reply with quoteQuote

The error number 45 is a Bass_errorgetcode.
Logged
Ian @ un4seen
Administrator
Posts: 15244


« Reply #10 on: 30 Mar '12 - 18:07 »
Reply with quoteQuote

Are you sure that is from a BASS_AAC_StreamCreateFileUser call? Error code 45 is BASS_ERROR_ENDED, which I don't think BASS_AAC_StreamCreateFileUser will ever produce. Is the call failing, ie. is your "g_Stream1" variable receiving 0?
Logged
shuttle
Posts: 70


« Reply #11 on: 31 Mar '12 - 12:13 »
Reply with quoteQuote

Sorry, I was wrong!

The bass error 45 comes from BASS_StreamPutFileData.

The BASS_AAC_StreamCreateFileUser call is successful, but not as fast as with the previous Bass.dll (2.4.7) version.
Logged
Ian @ un4seen
Administrator
Posts: 15244


« Reply #12 on: 2 Apr '12 - 15:19 »
Reply with quoteQuote

OK. BASS_StreamPutFileData will result in BASS_ERROR_ENDED if the file has been ended, eg. if the BASS_FILEDATA_END flag was used in a previous call. Please try logging what "length" parameter you are using in each BASS_StreamPutFileData call to confirm what is happening with that.
Logged
shuttle
Posts: 70


« Reply #13 on: 17 Apr '12 - 16:33 »
Reply with quoteQuote

Hi Ian, sorry i was very busy!

This is my VB6 code in a Winsock data arrival:
    Winsock.GetData DatiRX(), vbByte, bytesTotal
    If Stream = 0 Then
        i = UBound(DatiApp)
        If i = 0 Then i = -1
        ReDim Preserve DatiApp(i + bytesTotal)
        For j = 0 To bytesTotal - 1
            DatiApp(j + i + 1) = DatiRX(j)
        Next j
        Progress = 0
        BASS_SetConfig BASS_CONFIG_NET_BUFFER, Val(lblBufferRX)
        CreateFileProcs
        If UBound(DatiApp) < 4095 Then Exit Sub
        Stream = BASS_StreamCreateFileUser(STREAMFILE_BUFFERPUSH, BASS_STREAM_BLOCK, VarPtr(Fileprocs), 0)
    End if
    If Stream <> 0 Then
         If (BASS_StreamPutFileData(Stream, DatiApp(Progress), UBound(DatiApp) - Progress) = -1) Then
             BASS_StreamFree Stream
             Stream = 0
             Exit Sub
         End If
    Else
         BASS_StreamPutFileData(Stream, DatiRX(0), bytesTotal)
    End if


and this is in a module:
    Public Sub CreateFileProcs()
        With g_Fileprocs
            .close = getaddressof(AddressOf FILECLOSEPROC)
            .length = getaddressof(AddressOf FILELENPROC)
            .read = getaddressof(AddressOf FILEREADPROC)
            .seek = 0
        End With
    End Sub

    Public Function getaddressof(ByVal func As Long) As Long
        getaddressof = func
    End Function

    Public Function FILECLOSEPROC(ByVal user As Long) As Long
        FILECLOSEPROC = 0
    End Function

    Public Function FILELENPROC(ByVal user As Long) As Long
        FILELENPROC = 0
    End Function

    Public Function FILEREADPROC(ByVal buffer As Long, ByVal length As Long, ByVal user As Long) As Long
        If length > UBound(DatiApp) - Progress Then length = UBound(DatiApp) - Progress
        CopyMemory ByVal buffer, DatiApp(Progress), length
        Progress = Progress + length
        FILEREADPROC = length
    End Function

This work good with bass.dll 2.4.7.

Logged
Ian @ un4seen
Administrator
Posts: 15244


« Reply #14 on: 17 Apr '12 - 17:05 »
Reply with quoteQuote

Is the problem still that you are getting a BASS_ERROR_ENDED error from the BASS_StreamPutFileData call? If so, please try logging (eg. to a file) the parameters that you are using in that call.
Logged
Pages: [1]
  Reply  |  Print  
 
Jump to:  

Powered by SMF 1.1.18 | SMF © 2013, Simple Machines