Useful TagLib audio attributes.

I've created a spreadsheet of all the audio types supported by TagLib and the more common audio attributes:

https://docs.google.com/spreadsheets/d/1ll69YCtzHIhbgci9DpL7sQKgdJtV7k3D...

Grey cell means the attribute isn't supported for that type. White cell means it's supported, but it's not clear yet whether it's useful or not. Green means useful, red means not. I'll be updating the spreadsheet based on your comments. Keep in mind that I'd only like to index attributes if they're truly useful. Every added attribute means more memory used for your own shares, browsed shares and search results. Once we have a clear picture, I'll modify SoulseekQt accordingly.

Thanks, Nir

Comments

2.20 running fine so far.

Something else I've noticed about the rescans. I did some housekeeping last night on a handful of folders, where the name was wrong. No files removed, but some of the ID3 tags updated. The result of the rescan just shows 212 files removed, which would probably equal the number of files under the renamed folders.

No problem scanning your entire share with the release build?

No - no issues for a while, just the info that is returned

Excellent! And no large portions of your share appear to be missing audio attributes? I looked into the files removed count when you rescan, there's definitely a bug there which I fixed. Will be part of the next build.

sittingbitch's picture

for some reason which i can not figure out all my transfers disappeared along with my user list, wish list searches and even my listening port was changed to something that does not work. also my shared folders disappeared. i need help to fix this but have no clue where to start or how to start.

HELP! I really love Soulseek, and it's been working really well until very recently. Now every download I try aborts immediately. There are no viruses on my laptop. Can you give me an idea what the problem is here? I even created a new account and restarted client, uninstalled and reinstalled, but no difference. Please help.

MELERIX's picture

maybe the user from where you are downloading is having troubles with his client, try to send a PM and tell him to update his client.

I see plenty of these from the other end, and the odd time its happened to me. Does debug version trap any of this data, or could it? Might be very handy to help diagnose the problem

Which build are you using?

The 2015-2-22 build crashed on me when I made it rescan my files. I had the scanning diagnostics window open and was watching all the files go by, so I know about where it was when it crashed. However, maybe the problem is just that I had that window open!

Here's the Dr. Mingw info, probably not much help:

SoulseekQt.exe caused an Access Violation at location 75799D8C in module msvcrt.dll Reading from location 197B9000.

Registers:
eax=00000082 ebx=19520900 ecx=3ff59e40 edx=00000001 esi=197b8ffe edi=197b8f3c
eip=75799d8c esp=0728d5c0 ebp=0728d5c8 iopl=0 nv up ei pl nz na pe nc
cs=0023 ss=002b ds=002b es=002b fs=0053 gs=002b efl=00010202

AddrPC Params
75799D8C 1952083E 19520900 FFFFFFFF msvcrt.dll!malloc

(that's it.)

Is it reproducible?

Yes.

Attempt #2. Started it up again, and after running for a few minutes, it crashed. I hadn't even gone to the Diagnostics tab so I don't know where it was in the scan.
SoulseekQt.exe caused an Access Violation at location 00E55115 in module SoulseekQt.exe Reading from location 00000020.

Registers:
eax=00000000 ebx=0001feff ecx=0028fd80 edx=00000000 esi=03dfded0 edi=0028fd80
eip=00e55115 esp=03dfde70 ebp=03dfdeb8 iopl=0 nv up ei pl zr na po nc
cs=0023 ss=002b ds=002b es=002b fs=0053 gs=002b efl=00010246

AddrPC Params
00E55115 0001FEFF 03DFDED0 FFFFFFEB SoulseekQt.exe
00F3D629 00000027 FFFFFFEB 03DFDF24 SoulseekQt.exe
00F3D903 755880A9 00030000 755862FA SoulseekQt.exe
755862FA 00F3D680 000E0B92 00000113 USER32.dll!gapfnScSendMessage
75586D3A 00000000 00F3D680 000E0B92 USER32.dll!GetThreadDesktop
755877C4 00F3D680 00000000 03DFFE48 USER32.dll!CharPrevW
7558788A 03DFE108 03DFE108 00000000 USER32.dll!DispatchMessageW
00F3D197 03DFFEE8 0385CE28 00000024 SoulseekQt.exe
00F0D918 00000000 0385BAB8 0384E410 SoulseekQt.exe
00EC89AA 00000001 0385BAB8 0384E188 SoulseekQt.exe
00EC956E 00000000 00000000 7579A5D6 SoulseekQt.exe
757A1287 03DFFF94 7585338A 0384E188 msvcrt.dll!_itow_s
757A1328 0384E188 03DFFFD4 77729F72 msvcrt.dll!_endthreadex
7585338A 0384E188 7DAFCD44 00000000 kernel32.dll!BaseThreadInitThunk
77729F72 757A12E5 0384E188 00000000 ntdll.dll!RtlInitializeExceptionChain
77729F45 757A12E5 0384E188 00000000 ntdll.dll!RtlInitializeExceptionChain

SoulseekQt.exe caused an Access Violation at location 75799D8C in module msvcrt.dll Reading from location 08AFC000.

Registers:
eax=000000cc ebx=08a72f68 ecx=3ffddbda edx=00000001 esi=08afbffe edi=08afbf3c
eip=75799d8c esp=0717d5c0 ebp=0717d5c8 iopl=0 nv up ei pl nz na pe nc
cs=0023 ss=002b ds=002b es=002b fs=0053 gs=002b efl=00010202

AddrPC Params
75799D8C 08A72EA6 08A72F68 FFFFFFFF msvcrt.dll!malloc

Attempt #3. I went to the diagnostics and watched the files scroll by in the scanning tab. It crashed almost in the same place as the original crash! It was maybe 1 or 2 folders away.
SoulseekQt.exe caused an Access Violation at location 7771E41B in module ntdll.dll Writing to location CF48036B.

Registers:
eax=cf48036b ebx=c686012d ecx=000202d7 edx=00000002 esi=17954098 edi=c6860000
eip=7771e41b esp=0028c840 ebp=0028c874 iopl=0 nv up ei pl nz na po nc
cs=0023 ss=002b ds=002b es=002b fs=0053 gs=002b efl=00010206

AddrPC Params
7771E41B 175A4AA8 09565C90 093A692C ntdll.dll!RtlInitUnicodeString
7771E023 01AC0000 00000000 175A4AA8 ntdll.dll!RtlFreeHeap
757998CD 175A4AA8 0028C94C 0028CA00 msvcrt.dll!free
00B6ADC3 0028C920 0028CA00 00000000 SoulseekQt.exe
0062D5C3 093A692C 0028CA00 0000006F SoulseekQt.exe
0063DF03 093A692C 0028CA8C 0028CAE0 SoulseekQt.exe
0063ED8B 093A692C 046C698C 00000001 SoulseekQt.exe
0063DFB0 175A4B88 09565C90 093A692C SoulseekQt.exe
7771E023 093A692C 046E9B4C 00000002 ntdll.dll!RtlFreeHeap

Attempt #4. I went to the diagnostics tab but as soon as the file scanning sub-tab appeared, it crashed, so I couldn't see where it was.
SoulseekQt.exe caused an Access Violation at location 75799B60 in module msvcrt.dll Reading from location 39C033BC.

Registers:
eax=3dc03510 ebx=04000154 ecx=01000055 edx=00000000 esi=39c033bc edi=19e50030
eip=75799b60 esp=0028d6c0 ebp=0028d6c8 iopl=0 nv up ei pl nz ac po nc
cs=0023 ss=002b ds=002b es=002b fs=0053 gs=002b efl=00010216

AddrPC Params
75799B60 19E50030 39C033BC 04000154 msvcrt.dll!memcpy
00E1E1F9 0028D8C0 00000000 00000140 SoulseekQt.exe
0057AAF8 047C5BE8 00000000 0000000C SoulseekQt.exe
00E5B599 17118370 17118370 15CEC250 SoulseekQt.exe
0064C57A 047C5BE8 17118370 019F017C SoulseekQt.exe
006514C7 1205F0A8 00000003 00000000 SoulseekQt.exe

Attempt #5. Same result, no time to click on the file scanning tab.
SoulseekQt.exe caused an Access Violation at location 75799D8C in module msvcrt.dll Writing to location 19DEB000.

Registers:
eax=0000006c ebx=18444cf8 ecx=3f996785 edx=00000001 esi=19deaee2 edi=19deb000
eip=75799d8c esp=053fd5c0 ebp=053fd5c8 iopl=0 nv up ei pl nz na pe nc
cs=0023 ss=002b ds=002b es=002b fs=0053 gs=002b efl=00010202

AddrPC Params
75799D8C 18444E16 18444CF8 FFFFFFFF msvcrt.dll!malloc

Every time, it's a different stack trace!

Well, hopefully it'll keep crashing in debug mode. These are the usual instructions with a link to the updated debug build if you can spare the time:

https://docs.google.com/document/d/1WxE8ZQmTH8UqdM8WaxDfKf6N128ukm_lINMS...

Thanks, Nir

Thanks for the new debug build. It didn't crash in debug mode when I ran it via gdb. It scanned all my files and people were able to download. No file attributes missing from the newly scanned files.

Before running it via gdb, though, I tried running it standalone, and just like the 2-22 non-debug build, it did crash during file scanning... although the Dr. Mingw output suggests maybe it was something else(?):

SoulseekQt.exe caused an Access Violation at location 00EC9FE8 in module SoulseekQt.exe Reading from location E0A100AA.

Registers:
eax=006d0077 ebx=213a4ae0 ecx=0065004e edx=002d0020 esi=e0a10026 edi=0020006b
eip=00ec9fe8 esp=0027d7e0 ebp=0027d848 iopl=0 nv up ei pl nz na pe nc
cs=0023 ss=002b ds=002b es=002b fs=0053 gs=002b efl=00010202

AddrPC Params
00EC9FE8 07EF0000 00000000 00000010 SoulseekQt.exe
00ECB94A 0F015FC0 00000000 00000000 SoulseekQt.exe
004B9C4D 09E173D0 762C7103 00000000 SoulseekQt.exe!DownloadTask::finalize() [C:\git\build-SoulseekQT-5_4_1_static-Release/../SoulseekQt/TransferQueueManager.cpp @ 1818]
0057C309 0F015FC0 00000003 00000000 SoulseekQt.exe!DownloadTask::qt_static_metacall(QObject*, QMetaObject::Call, int, void**) [C:\git\build-SoulseekQT-5_4_1_static-Release/release/moc_TransferQueueManager.cpp @ 622]

Good call using Dr. MingW! The crash appears to be related to the new file transfer code. Is this the entire report?

Also, are you using the very latest Dr. MingW?

https://github.com/jrfonseca/drmingw/releases/download/0.6.4/drmingw-0.6...

I tried generating an intentional crash with this one and it gave me a very detailed report with the actual lines of code where the crash occurred.

That was a complete report from Dr. MingW 0.6.2. I went ahead and installed 0.6.4 and launched the 2015-3-2 debug build. No crashes at first, maybe because nothing needed to be scanned. So I initiated a rescan, and got a crash with what is hopefully a much better report: http://pastebin.com/raw.php?i=UZ6innWn

Unfortunately there's no actual information in that report about where in the code the crash happens... not sure why. Did you install Dr. MingW from an admin command prompt? It looks like there are three crashes listed in there, and they all involve malloc which is where memory gets allocated. Can you monitor SoulseekQt's memory consumption in task manager during a rescan and see if it goes wild?

The other crash you posted is related to downloads, so it might happen again if you leave the client alone for long enough.

Thanks, Nir

Yes, Dr. MingW was installed from an Administrator command shell.

I don't know why it showed 3 crashes in one report. I only ran Soulseek once.

I tried running Soulseek again today without touching anything. It was only using 268 MB private bytes and crashed as soon as the file transfers started. But this time, nothing happened after the crash...the window just disappeared and the process followed soon after.

So I tried running it again. Immediate crash when file transfers started, 306 MB private bytes in use, and I did get a report: http://pastebin.com/raw.php?i=Kk2jSctr

So I tried a third time, but now under gdb. No crashes after 30 minutes. File transfers started fine, and memory usage climbed to around 380–400 MB, which is where it usually hovers for me. After a few minutes, I went to the Diagnostics tab and saw that file scanning was in progress and apparently completed while I was looking at it. (Maybe have it write a message when it's done?) I hate running under gdb because the app is slower than molasses in winter. Whenever I click on something, I never know if it's going to respond immediately or take two minutes.

This log doesn't make any sense... either Dr. MingW isn't producing a proper report for this particular crash, or there's something more sinister going on with the client. Let's try a build that doesn't use TagLib at all, just to see if it's causing the crashes or whether it's something else like the new file transfer code:

https://www.dropbox.com/s/v4vy2463aruvs3w/SoulseekQt-no-taglib-debug.7z?...

If this eliminates the crashes, I'm also working on a build that compiles TagLib as part of the project instead of using it as an external library.

Running it now, without gdb. No crashes so far, and it automatically rescanned all my mp3s, no other formats, which I guess is what's expected without TagLib. The scan ran at a much lower speed than in TagLib builds. 351 MB memory use. I'll let it run for a while.

I didn't get a chance to try the 2015-3-5 debug build. The report above is for the 2015-3-2 debug build.

This is the TagLib in source build if you want to try it out next: https://www.dropbox.com/s/10mo32cmhd1shn6/SoulseekQt-taglib-in-source-de...

https://www.dropbox.com/s/fagn1z5nn550tcf/soulseek%20crash.txt?dl=0

This is from doing a rescan with the taglib build

I'm going to run fora few hours then do a rescan and see what happens, just to be sure that its the rescan that forces the crash

That definitely looks like TagLib is crashing trying to scan a FLAC file. I chanced upon the TagLib git repository, and there's a fair number of fixes in there related to FLAC files that didn't make it into the last official release. This one's built against the very latest TagLib sources:

https://www.dropbox.com/s/suias5w8y93vt5u/SoulseekQt-2015-3-7-debug.7z?dl=0

Who knows, maybe one of those fixes will address our issue. If not, I'll see if I can't get some help posting to the TagLib mailing list.

Amazing... this one scanned all my files and did not crash. It is using a bit more memory, though.

I noticed that .mp4 video files are being scanned. Traditionally, files with the .mp4 extension are MP4 files with video in them, and files with .m4a are MP4 files with no video, just audio.

I guess it doesn't hurt to know about the audio part of a .mp4, but unless you're planning on doing that for all types of video files, it's probably better to save space and just turn off scanning of files with the .mp4 extension; i.e. only scan .m4a.

Update: ugh... it did that thing again where it acted like I had changed the number of upload slots to infinity. This time I was doing stuff in another window/program entirely! I shut it down and next time I run it I am going to disable the immediate upload of small files.

Excellent! I think ent is having good luck with this build as well. Surprising that there hasn't been an official TagLib release since November of last year, considering how much more stable it is now. You raise a good point regarding extensions. Right now I'm indexing any extensions that TagLib can handle, which is probably overkill. The important ones that I know of are mp3, flac, m4a, and ogg. What other extensions should be in that list?

Well there's the standard containers:

.wav
.aiff or .aif

These are generic containers for lossless or lossy formats, but almost always nowadays are going to contain lossless linear PCM format.

These are all much less common, but should be supported because they're out there:

.ape (Monkey's Audio, lossless)
.wv (WavePack, lossless)
.wma (Windows Media Audio, can be lossless but I only ever see lossy)
.mp2 (MPEG-1 Layer II, lossy)
.aac (headerless AAC, lossy)

As you know, for lossy we want to know duration & bit rate. For lossless: duration, bit depth & sample rate.

[Edit:] Oh, one more format I don't personally run across but that I have read is still in use by live concert traders:
.shn (Shorten, lossless)

Yeah, I still have some shn stuff from the Tangerine Tree/Leaves days. I tend to convert it to flac when I come across it. Don't think I've ever seen it anywhere else.

Excellent, thank you! I updated the nighty builds. I'm currently indexing extensions mp3, flac, m4a, ogg, wav, aiif, aif, ape, wv, wma, mp2 and aac. Extracting sample rate/bits per sample for flacs, wavs, wavpacks and apes.

Cheers, Nir

psynaturecybine's picture

working nice, thanks man
(.wv shows kbps before important data)

EDIT:
excluded filename extensions are not respected once again

It's running OK so far for me. No crashes, even when rescanning all files.

When I sort by attributes, the order of things is a little weird, though.

Yeah, I need to adjust the attribute sorting code to account for the new attributes. I'll do it as soon as I get the time. Glad to hear it's working well otherwise!

That's weird. I left it running, a few hours back, and its silently crashed but no debug dump this time.
Doing a rescan of the shares doesn't cause crashes, but the on-start scan does, during FLAC reads.

SoulseekQt.exe caused an Access Violation at location 77902D94 in module ntdll.dll Writing to location 00000000.

Registers:
eax=00000000 ebx=657c0000 ecx=01110239 edx=00000111 esi=0fa44fb0 edi=657c0000
eip=77902d94 esp=0a1afc9c ebp=0a1afcd0 iopl=0 nv up ei pl nz na po nc
cs=001b ss=0023 ds=0023 es=0023 fs=003b gs=0000 efl=00010206

AddrPC Params
77902D94 11C32BE8 09451370 7FFDA000 ntdll.dll!RtlpLowFragHeapFree
77902CE8 003E0000 00000000 11C32BE8 ntdll.dll!RtlFreeHeap
771398CD 11C32BE8 409B4CE3 0846EDC4 msvcrt.dll!free
7713A941 11C32BE8 7FFDB000 0846EDB8 msvcrt.dll!_freefls
7790D700 0846EDB8 6C9656ED 08457D90 ntdll.dll!RtlProcessFlsData
778DF684 00000002 00000000 0A1AFF88 ntdll.dll!LdrShutdownThread
778DF632 00000000 6C965779 00000000 ntdll.dll!RtlExitUserThread
778DF9B5 08457D90 0A1AFFD4 779137EB ntdll.dll!TppWorkerThread
7728EE1C 08457D90 6C965725 00000000 kernel32.dll!BaseThreadInitThunk
779137EB 778E03E9 08457D90 00000000 ntdll.dll!__RtlUserThreadStart
779137BE 778E03E9 08457D90 00000000 ntdll.dll!_RtlUserThreadStart

SoulseekQt.exe caused an Access Violation at location 77139D8C in module msvcrt.dll Reading from location 10395000.

Registers:
eax=00000043 ebx=0c516918 ecx=3f060646 edx=00000001 esi=10394ffe edi=10394f1c
eip=77139d8c esp=0af7d5c0 ebp=0af7d5c8 iopl=0 nv up ei pl nz na pe nc
cs=001b ss=0023 ds=0023 es=0023 fs=003b gs=0000 efl=00010202

AddrPC Params
77139D8C 0C516836 0C516918 FFFFFFFF msvcrt.dll!memcpy
005B3E20 11F8E848 00000000 11EBB948 SoulseekQt.exe!replace [C:\git\build-SoulseekQT-5_4_1_static-Release/../SoulseekQt/taglib/tbytevector.cpp @ 563]
005B2A0D 0AF7D640 0AF7D648 11EBB308 SoulseekQt.exe! ?? ?? [C:/Qt/Tools/mingw491_32/i686-w64-mingw32/include/c++/bits/stl_vector.h @ 1302]
...
std::__uninitialized_fill_n_a(this->_M_impl._M_start, __n, __value,
_M_get_Tp_allocator());
> this->_M_impl._M_finish = this->_M_impl._M_end_of_storage;
}

...

0058F6E4 0AF7D6B0 0AF7D6E8 00000067 SoulseekQt.exe!decode [C:\git\build-SoulseekQT-5_4_1_static-Release/../SoulseekQt/taglib/id3v2synchdata.cpp @ 83]
0058E7F2 0AF7D748 0C56726C FFFFFFFF SoulseekQt.exe!createFrame [C:\git\build-SoulseekQT-5_4_1_static-Release/../SoulseekQt/taglib/id3v2framefactory.cpp @ 132]
00591A5E 0AF7D788 000011F1 0C567288 SoulseekQt.exe!parse [C:\git\build-SoulseekQT-5_4_1_static-Release/../SoulseekQt/taglib/id3v2tag.cpp @ 700]
00591CEB 0000001C 0C1EFA38 0AF7D818 SoulseekQt.exe!read [C:\git\build-SoulseekQT-5_4_1_static-Release/../SoulseekQt/taglib/id3v2tag.cpp @ 647]
00591DD5 00000001 00000001 00000000 SoulseekQt.exe! ?? ?? [C:\git\build-SoulseekQT-5_4_1_static-Release/../SoulseekQt/taglib/id3v2tag.cpp @ 121]
0058787A 0AF7D8F8 00000001 00000001 SoulseekQt.exe! ?? ?? [C:\git\build-SoulseekQT-5_4_1_static-Release/../SoulseekQt/taglib/flacfile.cpp @ 113]
005846EF 0AF7DA68 00000001 00000001 SoulseekQt.exe!create [C:/Qt/Tools/mingw491_32/i686-w64-mingw32/include/c++/bits/basic_string.h @ 293]
...
_CharT*
_M_data() const _GLIBCXX_NOEXCEPT
> { return _M_dataplus._M_p; }

_CharT*
...

0058563F 0AF7DB6C 0AF7DBA4 7761629B SoulseekQt.exe! ?? ?? [C:\git\build-SoulseekQT-5_4_1_static-Release/../SoulseekQt/taglib/fileref.cpp @ 83]
005CF7AA 0A1E946C 00000000 00000000 SoulseekQt.exe!qt_static_metacall [C:\git\build-SoulseekQT-5_4_1_static-Release/../../Qt/Static/5.4.1/include/QtCore/qstring.h @ 992]
00E31909 126ED7F0 126ED7F0 00000003 SoulseekQt.exe!0xa31909
0061D85A 0A1E946C 126ED7F0 003E0178 SoulseekQt.exe!0x21d85a
006227A7 0CCD09E0 0C268948 09427C78 SoulseekQt.exe!0x2227a7
775BEB7F 085B4698 00000000 0AF7E024 USER32.dll!VerNtUserCreateWindowEx
775BAC1E 00000000 0142A3E0 00000001 USER32.dll!CallNextHookEx
00F10BAC 00000401 0AF7E014 775CC4E7 SoulseekQt.exe!0xb10bac
775CC4E7 00F13DC0 000A0ACE 00000401 USER32.dll!InternalCallWinProc
775CC5E7 00000000 00F13DC0 000A0ACE USER32.dll!UserCallWinProcCheckWow
775CCC19 00F13DC0 00000000 0AF7FE48 USER32.dll!DispatchMessageWorker
775CCC70 0AF7E108 0AF7E108 00000000 USER32.dll!DispatchMessageW
00F138D7 0AF7FEE8 09501D20 00000024 SoulseekQt.exe!0xb138d7
00EE4058 00000000 0A203B08 0A2237F0 SoulseekQt.exe!0xae4058
00E9F06A 00000001 0A203B08 0A2121E0 SoulseekQt.exe!0xa9f06a
00E9FC2E 00000000 00000000 7713A5D6 SoulseekQt.exe!0xa9fc2e
77141287 0AF7FF94 7728EE1C 0A2121E0 msvcrt.dll!_endthreadex
77141328 0A2121E0 0AF7FFD4 779137EB msvcrt.dll!_endthreadex
7728EE1C 0A2121E0 6C7B5725 00000000 kernel32.dll!BaseThreadInitThunk
779137EB 771412E5 0A2121E0 00000000 ntdll.dll!__RtlUserThreadStart
779137BE 771412E5 0A2121E0 00000000 ntdll.dll!_RtlUserThreadStart

this is from leaving it for a couple of hours, so its done the startup scan.

Hey ent, is this with the 3-7 build from last night?

No - I've just downloaded it now. Hold on....

ok so far. Scanning finished ok. Uploads seem to be running fine

I went from 2-22 to 3-2 and it's crashing within moments.

Program received signal SIGSEGV, Segmentation fault.
std::_Hashtable, std::allocator >, std::__detail::_Select1st, std::equal_to, std::hash, std::__detail::_Mod_range_hashing, std::__detail::_Default_ranged_hash, std::__detail::_Prime_rehash_policy, std::__detail::_Hashtable_traits >::find (this=0xc1,
__k="upload_task")
at C:/Qt/Tools/mingw491_32/i686-w64-mingw32/include/c++/bits/hashtable.h:1303
1303 std::size_t __n = _M_bucket_index(__k, __code);
#0 std::_Hashtable, std::allocator >, std::__detail::_Select1st, std::equal_to, std::hash, std::__detail::_Mod_range_hashing, std::__detail::_Default_ranged_hash, std::__detail::_Prime_rehash_policy, std::__detail::_Hashtable_traits >::find (this=0xc1,
__k="upload_task")
at C:/Qt/Tools/mingw491_32/i686-w64-mingw32/include/c++/bits/hashtable.h:1303
#1 0x00429187 in find (__x="upload_task", this=)
at C:/Qt/Tools/mingw491_32/i686-w64-mingw32/include/c++/bits/unordered_map.h:574
#2 Data::type (this=, i_name="upload_task")
at ..\SoulseekQt\Data.cpp:147
#3 0x004295d2 in ItemBody::hasItem (this=0x1de9a380,
ip_typeName=ip_typeName@entry=0x12331c0 <_ZStL19piecewise_construct+1604> "upload_task") at ..\SoulseekQt\Data.cpp:1095
#4 0x0042972c in Item::hasItem (this=this@entry=0x28a4a4,
ip_typeName=ip_typeName@entry=0x12331c0 <_ZStL19piecewise_construct+1604> "upload_task") at ..\SoulseekQt\Data.cpp:1288
#5 0x004b91df in operator[] (
ip_type=0x12331c0 <_ZStL19piecewise_construct+1604> "upload_task",
this=0x28a4a4) at ../SoulseekQt/Data.h:167
#6 TransferQueueManager::removeUpload (this=0x9f58b48, i_upload=...)
at ..\SoulseekQt\TransferQueueManager.cpp:1961
#7 0x00564f41 in UploadMenuOptions::OnRemoveUploads (this=0x28d0d0)
at ..\SoulseekQt\UploadMenuOptions.cpp:40
#8 0x00e62c31 in QMetaObject::activate(QObject*, int, int, void**) ()
#9 0x006a6a9c in QAction::activate(QAction::ActionEvent) ()
#10 0x006d2920 in QMenuPrivate::activateCausedStack(QList > const&, QAction*, QAction::ActionEvent, bool) ()
#11 0x006d7faa in QMenuPrivate::activateAction(QAction*, QAction::ActionEvent, bool) ()
#12 0x006dcd5d in QMenu::mouseReleaseEvent(QMouseEvent*) ()
#13 0x00644c8e in QWidget::event(QEvent*) ()
#14 0x006dd55a in QMenu::event(QEvent*) ()
#15 0x0064cdda in QApplicationPrivate::notify_helper(QObject*, QEvent*) ()
#16 0x00652991 in QApplication::notify(QObject*, QEvent*) ()
#17 0x00e5aa1b in QCoreApplication::notifyInternal(QObject*, QEvent*) ()
#18 0x006511c3 in QApplicationPrivate::sendMouseEvent(QWidget*, QMouseEvent*, QWidget*, QWidget*, QWidget**, QPointer&, bool) ()
#19 0x007425ed in QWidgetWindow::handleMouseEvent(QMouseEvent*) ()
#20 0x0074498a in QWidgetWindow::event(QEvent*) ()
#21 0x0064cdda in QApplicationPrivate::notify_helper(QObject*, QEvent*) ()
#22 0x00651d27 in QApplication::notify(QObject*, QEvent*) ()
#23 0x00e5aa1b in QCoreApplication::notifyInternal(QObject*, QEvent*) ()
#24 0x00b0c20d in QGuiApplicationPrivate::processMouseEvent(QWindowSystemInterfacePrivate::MouseEvent*) ()
#25 0x00b0dcf8 in QGuiApplicationPrivate::processWindowSystemEvent(QWindowSystemInterfacePrivate::WindowSystemEvent*) ()
#26 0x00c04a27 in QWindowSystemInterface::sendWindowSystemEvents(QFlags) ()
#27 0x0099c415 in QWindowsGuiEventDispatcher::sendPostedEvents() ()
#28 0x00f4359a in qt_internal_proc(HWND__*, unsigned int, unsigned int, long)@16 ()
#29 0x770a8e71 in USER32!CallNextHookEx () from C:\WINDOWS\SYSTEM32\user32.dll
#30 0x770a90d1 in USER32!CallNextHookEx () from C:\WINDOWS\SYSTEM32\user32.dll
#31 0x770aa66f in USER32!GetMessageW () from C:\WINDOWS\SYSTEM32\user32.dll
#32 0x770aa6e0 in USER32!DispatchMessageW ()
from C:\WINDOWS\SYSTEM32\user32.dll
#33 0x00f42e57 in QEventDispatcherWin32::processEvents(QFlags) ()
#34 0x0099c490 in QWindowsGuiEventDispatcher::processEvents(QFlags) ()
#35 0x00f135d8 in QEventLoop::exec(QFlags) ()
#36 0x006db786 in QMenu::exec(QPoint const&, QAction*) ()
#37 0x004dd3db in TransfersForm::OnUploadsContextMenuRequested (
this=this@entry=0x98e1170, i_point=...)
at ..\SoulseekQt\TransfersForm.cpp:1283
#38 0x0057d6c7 in TransfersForm::qt_static_metacall (_o=0x98e1170,
_c=QMetaObject::InvokeMetaMethod, _id=13, _a=0x28d270)
at release\moc_TransfersForm.cpp:191
#39 0x00e62c31 in QMetaObject::activate(QObject*, int, int, void**) ()
#40 0x00645a17 in QWidget::event(QEvent*) ()
#41 0x00737b6c in QFrame::event(QEvent*) ()
#42 0x0070cb0a in QAbstractItemView::viewportEvent(QEvent*) ()
#43 0x006cc707 in QTreeView::viewportEvent(QEvent*) ()
#44 0x010abe02 in QAbstractScrollAreaFilter::eventFilter(QObject*, QEvent*) ()
#45 0x00e5abe6 in QCoreApplicationPrivate::sendThroughObjectEventFilters(QObject*, QEvent*) ()
#46 0x0064cdb0 in QApplicationPrivate::notify_helper(QObject*, QEvent*) ()
#47 0x0065379a in QApplication::notify(QObject*, QEvent*) ()
#48 0x00e5aa1b in QCoreApplication::notifyInternal(QObject*, QEvent*) ()
#49 0x00742956 in QWidgetWindow::handleMouseEvent(QMouseEvent*) ()
#50 0x0074498a in QWidgetWindow::event(QEvent*) ()
#51 0x0064cdda in QApplicationPrivate::notify_helper(QObject*, QEvent*) ()
#52 0x00651d27 in QApplication::notify(QObject*, QEvent*) ()
#53 0x00e5aa1b in QCoreApplication::notifyInternal(QObject*, QEvent*) ()
#54 0x00b0c20d in QGuiApplicationPrivate::processMouseEvent(QWindowSystemInterfacePrivate::MouseEvent*) ()
#55 0x00b0dcf8 in QGuiApplicationPrivate::processWindowSystemEvent(QWindowSystemInterfacePrivate::WindowSystemEvent*) ()
#56 0x00c04a27 in QWindowSystemInterface::sendWindowSystemEvents(QFlags) ()
#57 0x0099c415 in QWindowsGuiEventDispatcher::sendPostedEvents() ()
#58 0x00f4359a in qt_internal_proc(HWND__*, unsigned int, unsigned int, long)@16 ()
#59 0x770a8e71 in USER32!CallNextHookEx () from C:\WINDOWS\SYSTEM32\user32.dll
#60 0x770a90d1 in USER32!CallNextHookEx () from C:\WINDOWS\SYSTEM32\user32.dll
#61 0x770aa66f in USER32!GetMessageW () from C:\WINDOWS\SYSTEM32\user32.dll
#62 0x770aa6e0 in USER32!DispatchMessageW ()
from C:\WINDOWS\SYSTEM32\user32.dll
#63 0x00f42e57 in QEventDispatcherWin32::processEvents(QFlags) ()
#64 0x0099c490 in QWindowsGuiEventDispatcher::processEvents(QFlags) ()
#65 0x00f135d8 in QEventLoop::exec(QFlags) ()
#66 0x00e5fc42 in QCoreApplication::exec() ()
#67 0x004019a9 in qMain (argc=1, argv=0x3c41f0) at ..\SoulseekQt\main.cpp:69
#68 0x00587a1b in WinMain@16 ()
#69 0x011c573d in main ()

This happened while you were removing uploads from the context menu? Are you using tree style or table style transfers?

Yes, it happened pretty quickly. I use tree style transfers.

I think I know what's causing it. There was also a problem related to incomplete uploads not being cleaned up properly, this should fix both these issues:

https://www.dropbox.com/s/yl4sqq8o5joalh4/SoulseekQt-2015-3-5-debug.7z?dl=0

Thanks, Nir

I'm assuming this is some error within the mp3 file or the tag...

Searching for a particular version of 'Tales from Topographic Oceans', where all the tracks are around 20 mins, I keep seeing times of 40 mins @ 160kbps. That would equate to 20 mins at 320, which in turn matches the size of the files.

Might be coming from the original Soulseek NS, that one had an MP3 scanning library that had a lot of problems with newer MP3s. And as you say it could just be wrong information in the header put there by the encoder... hard to say with these things.

Usually, almost all appliers have comparable GPA and GRE ratings. Creating a great record of intent is the one possiblity to talk directly to your graduate student admissions panel and provide a compelling case to hold your current room within the subsequent year's short directory admitted individuals. grabmyessay.com is best one and really awesome custom essay writing service providers.

Hi i am using a virtual private network to be precise it's called torguard just wondering if in the future soulseek will be able to access through torguard as at the moment it does not so i have to go through my isp to be able to use it ...
Kindest regards regus55

rattbirdzxr's picture

hi allz being ignored here cannt login 10 sec timout, checked diff usernames too.. majorly bummed im missing my soulseek girl private message me

https://soundcloud.com/blak-bird-zeja

Hi friends...
I download the 2015.05.26 built but in the upper left corner when open slsk I have 0.0.0 [myuser]
is it right or the version have some problem ? when I search something it don't stay in the search string...
tahnks

Are you *sure* you're using 2015.05.26 and not 2015.05.25?

LucidDream's picture

Hey Nir,

Is it possible to display the frames additionally to the time ?
IMHO the time reference is incomplete without frames ATM.
Adding frames will help to i.e. identify a particular audiofile.

Thanks

Pages