INTERACT FORUM

Please login or register.

Login with username, password and session length
Advanced search  
Pages: [1]   Go Down

Author Topic: External Encoder Stalls @ 50%  (Read 4160 times)

winterminute

  • Junior Woodchuck
  • **
  • Posts: 61
External Encoder Stalls @ 50%
« on: January 25, 2010, 12:08:15 am »

I've setup an external encoder but it MC eventually stalls on procesing one or more files @ 50%.  This happened in MC12 and I've downloaded the trial in the hopes that it was fixed in the latest version, but it doesn't appear so.  At this point, if I look in the MC temp files I only see the 4 WAV files for the 4 songs that are stalled.  There is no WMA file.  If I close MC and restart and then resync, it stalls on the same 4 files.

Here are the details of the external encoder:
"C:\Program Files (x86)\Illustrate\dBpoweramp\CoreConverter.exe"
-infile=%IN -outfile=%OUT -convert_to="Windows Media Audio 10" -codec="Windows Media Audio 10 Professional" -settings="VBR Quality 90, 44 kHz, 2 channel 24 bit VBR" -vbr -errorfile="C:\Tmp\DBPAError.log"

There is no information in the dbpoweramp log and if I manually run the cmdline, CoreConverter works just fine.

To be upfront, I'm only considering this upgrade to solve this bug.  It is a crucial piece of my music workflow so it is worth it, but only if the bug is fixed.
Logged

JimH

  • Administrator
  • Citizen of the Universe
  • *****
  • Posts: 72543
  • Where did I put my teeth?
Re: External Encoder Stalls @ 50%
« Reply #1 on: January 25, 2010, 06:40:43 am »

That sounds like you're not getting the file to the encoder.  A typo?  Or maybe the command string isn't right? 

Try it without any commnand string.

And why would you want to do that conversion anyway?  WMA high quality?  Why not use MC and set the encoder to high quality?

Most people can't hear anything different past about 12 bits.
Logged

Alex B

  • MC Beta Team
  • Citizen of the Universe
  • *****
  • Posts: 10121
  • The Cosmic Bird
Re: External Encoder Stalls @ 50%
« Reply #2 on: January 25, 2010, 11:03:34 am »

Hmm... it works for me.

Here is the command line I used:

-infile=%IN -outfile=%OUT -convert_to="Windows Media Audio 10" -codec="Windows Media Audio 10 Professional" -settings="VBR Quality 90, 44 kHz, 2 channel 24 bit VBR" -vbr

I copy-pasted it directly from my encoder settings (and before that directly from the dbpa section of Windows registry). It looks identical to yours (except that I didn't include the error logging part).

I tested a standard conversion and also syncing a virtual handheld.

Here are a few screenshots of the latter operation:

The encoder settings:



The cmd window while CoreConverter works:



The result:


Click to enlarge.



I wonder if you are actually using a 64-bit OS? Your path includes "(x86)" and that is normally used only on a 64-bit OS. I mean, just in case you copied the string from somewhere and happen to have a 32-bit OS.
Logged
The Cosmic Bird - a triple merger of galaxies: http://eso.org/public/news/eso0755

winterminute

  • Junior Woodchuck
  • **
  • Posts: 61
Re: External Encoder Stalls @ 50%
« Reply #3 on: January 25, 2010, 11:46:16 am »

To JimH:

What do you mean when you say try it without any command string?

MC is my main library, but I also have a MediaCenter library, a Zune library, and an Xbox library.  Since none of those support FLAC, I use MC to copy a subset of my library to a separate folder plus smartlist generation and then point all those applications at that folder.  Basically, those applications are all "dumb" apps and I do all my management in MC.  I'm using WMA Pro because that's the best compression/quality for my ZuneHD (in theory) and since my MCE/XBox support WMA it seems like a good default choice.

Can MC convert to WMAPro?   I didn't think it could.  I just installed MC14 so maybe it was added.

Regarding 12bit, I didn't know where other people's tolerance for quality is so I figured if I was duplicating my library for all these other applications I may as well error on the side of quality.  Although, I would like to fit more on my ZuneHD, I suppose dropping down from 24bit would give me smaller file sizes.

To AlexB:
The conversion work for most of the files I try to sync and I end up with a whole folder of WMA files, but when it gets to a couple of files it stall.  So I sure my commad line is correct.  The weird thing is that CoreConvert can covert those exact files just fine so it feels like CoreConvert never gets called.  My settings looks identical to yours below except that i don't have "Use Source File As-Is" which is a new MC14 setting.  Yes, I'm using a x64 OS, think that makes a different?
Logged

Alex B

  • MC Beta Team
  • Citizen of the Universe
  • *****
  • Posts: 10121
  • The Cosmic Bird
Re: External Encoder Stalls @ 50%
« Reply #4 on: January 25, 2010, 12:53:12 pm »

Can MC convert to WMAPro?   I didn't think it could.  I just installed MC14 so maybe it was added.

No. I think JRiver could easily add WMA Pro because it would be just a few additional strings in the configuration file and an extra option in the encoder settings. Obviously they have wanted to keep the WMA settings simple, but perhaps they could consider making the WMA options more "professional". It wouldn't cost anything.

Quote
Regarding 12bit, I didn't know where other people's tolerance for quality is so I figured if I was duplicating my library for all these other applications I may as well error on the side of quality.  Although, I would like to fit more on my ZuneHD, I suppose dropping down from 24bit would give me smaller file sizes.

Lossy files don't actually have any bit depth. The data is stored in a floating point format. The bit depth value in the WMA encoder settings only defines the default decoding format.

Quote
The conversion work for most of the files I try to sync and I end up with a whole folder of WMA files, but when it gets to a couple of files it stall.  So I sure my commad line is correct.  The weird thing is that CoreConvert can covert those exact files just fine so it feels like CoreConvert never gets called.  My settings looks identical to yours below except that i don't have "Use Source File As-Is" which is a new MC14 setting.  Yes, I'm using a x64 OS, think that makes a different?

I think we both somehow bypassed that bit of information and assumed that you couldn't convert at all.

Could you provide more information about the problematic files? Filenames, location, source format, etc.
Logged
The Cosmic Bird - a triple merger of galaxies: http://eso.org/public/news/eso0755

winterminute

  • Junior Woodchuck
  • **
  • Posts: 61
Re: External Encoder Stalls @ 50%
« Reply #5 on: January 25, 2010, 11:23:21 pm »

Quote
No. I think JRiver could easily add WMA Pro because it would be just a few additional strings in the configuration file and an extra option in the encoder settings. Obviously they have wanted to keep the WMA settings simple, but perhaps they could consider making the WMA options more "professional". It wouldn't cost anything.
What do we/I need to do to make this happen?  When you say config file, is this something I can enable on my local box?

Quote
Lossy files don't actually have any bit depth. The data is stored in a floating point format. The bit depth value in the WMA encoder settings only defines the default decoding format.
How would changing this value in the encode string affect quality (real or perceived) and file size?

Quote
Could you provide more information about the problematic files? Filenames, location, source format, etc.
The first two time I tried to repro the problem MC crashes when it gets to the problem files.  Let me know if you want more info on the crash.  Here are the four files that get stalled, if I remove these from the sync then it will process some but eventually stall on another 4.

Source Format:    Flac
Temp File:   C:\Users\<username>\AppData\Roaming\J River\Media Center 14\Temp\Something Wrong - Papa Vegas (temp).wav
Source File:   C:\Users\Public\Music\Music Library\Lossless\Papa Vegas\Hello Vertigo\Something Wrong - Papa Vegas.flac



Logged

Alex B

  • MC Beta Team
  • Citizen of the Universe
  • *****
  • Posts: 10121
  • The Cosmic Bird
Re: External Encoder Stalls @ 50%
« Reply #6 on: January 26, 2010, 05:41:21 am »

Hmm... (again)

The filename looks fine (unless MC is programmed to stop when it sees the string "something wrong". :) )

I am starting to think that it might be a more generic problem with the external encoder that occasionally shows up on your specific SW & HW installation. Possibly it has nothing to do with the WMA Pro file format.

Quote
What do we/I need to do to make this happen?

You could ask nicely. Perhaps bribe the developers. Send a cake or something.

Seriously speaking, this should be easy for them. Adding it would not cause any problems with other features (decoding & tagging WMA Pro is already fine). Even if only a few users would actually use it, "WMA Professional" would look good in the specs (and naturally those few users would be happier).

Quote
When you say config file, is this something I can enable on my local box?

The WMA profiles are stored in [MC14 program location]\Plugins\WMAProfiles\ in xml format. Each file represents an available setting in the WMA encoding options. I once succesfully added a newer "unsupported" WMA lossless format to MC11 by simply replacing one of the profiles with a profile from MC12.

If you can find out the correct code strings you can select one of the profiles and change it to use your preferred settings. Inside MC you would then select the old format knowing that the parameters have been altered.

This link might help: http://msdn.microsoft.com/en-us/library/ee663260(VS.85).aspx

Quote
How would changing this value in the encode string affect quality (real or perceived) and file size?

You can't change it. MS has created the predefined combinations and I don't think you can partially modify them.

When the format is lossy the bit depth part in a setting string is just a part of a name that has been chosen by the MS developers. As I said, all typical lossy encoders store data in a stepless floating point format. It is normally converted back to an integer format on decoding.
Logged
The Cosmic Bird - a triple merger of galaxies: http://eso.org/public/news/eso0755

winterminute

  • Junior Woodchuck
  • **
  • Posts: 61
Re: External Encoder Stalls @ 50%
« Reply #7 on: January 26, 2010, 08:50:20 pm »

Quote
I am starting to think that it might be a more generic problem with the external encoder that occasionally shows up on your specific SW & HW installation. Possibly it has nothing to do with the WMA Pro file format.
I'm not getting anything in the coreconvert log file so I'm not sure it is ever getting called.  Still could be an issue with CoreConverted, but since the file can be converted directly and there are no errors in the log file, I feel that this points to MC.  Is there anyway I can turn on deep logging within MC so I see more about what's going on under the covers?

Quote
You could ask nicely. Perhaps bribe the developers. Send a cake or something.
  What's the correct way to make feature requests?
Logged

winterminute

  • Junior Woodchuck
  • **
  • Posts: 61
Re: External Encoder Stalls @ 50%
« Reply #8 on: January 29, 2010, 12:43:44 am »

What's the correct way to make feature requests?

and

Is it possible to turn on advanced tracing/logging to see what MC is doing?
Logged

winterminute

  • Junior Woodchuck
  • **
  • Posts: 61
Re: External Encoder Stalls @ 50%
« Reply #9 on: January 30, 2010, 12:37:44 am »

I thought maybe I was overlooking the obvious benefit of just going with a bulit-in encoder so I switch the same virtual device from External to WMA to compare the resulting files.  However, when I switched back MC immediately gets stuck on the first 4 files that require encoding.  Usually, it got through a few conversion before stalling.  So now I don't know what's happening with MC.

I really think there is a bug in the external codec handler.  I'm willing to help you guys track this down, but so far you don't seem real interested.  I hope this is fixed before my MC14 trial runs out so I have a reason to upgrade.
Logged

JimH

  • Administrator
  • Citizen of the Universe
  • *****
  • Posts: 72543
  • Where did I put my teeth?
Re: External Encoder Stalls @ 50%
« Reply #10 on: January 30, 2010, 07:28:21 am »

I really think there is a bug in the external codec handler.  I'm willing to help you guys track this down, but so far you don't seem real interested.  I hope this is fixed before my MC14 trial runs out so I have a reason to upgrade.
Sorry if we seem uninterested, but when one person has a problem, it's often not ours.  When several people have a problem, we start to look.

Disk full?  Temp directory on a different drive?

Can anyone else duplicate this?

Logged

winterminute

  • Junior Woodchuck
  • **
  • Posts: 61
Re: External Encoder Stalls @ 50%
« Reply #11 on: January 31, 2010, 12:19:21 am »

Quote
Sorry if we seem uninterested, but when one person has a problem, it's often not ours.  When several people have a problem, we start to look.
Normally I'd agree, but I wonder how many people are using external encoders.  From what I can tell, this is a niche feature to begin with.  Disk full is fine, temp directory is on the system drive which has plenty of space.  In fact, when MC stalls it leaves the decoded WAV file lying around and creates a copy when I try again so I know there isn't a space issue.  How many people use the "Sync to folder" feature and how many of those people are using external encoders?  I suspect a very small percentage of your users, but that's just a guess.  

Also, while trying to resync using the built-in WMA encoder MC14 crashed which has happened a couple of times so far.

I did find the option to enable logging, I think I've included the relevant logging options, here's the output.  The repro is setup so that I'm dedicating 1 thread and I know that the only file left to sync requires calling the external converter.  Does this give you an clue as to what's going on?

Code: [Select]
Media Center; Version: 14.0.130; Types: 545
0909876: 6904: General: Starting logging: Date: 1/30/2010 10:53 PM
0909876: 6904: General: Log Reset: Logging reset
0001436: 6904: General: CMCResourceHelper::GetIsModalPopupShowing: Main window disabled
0002871: 6904: Handheld: CHHManager::Upload: Start
0002871: 6904: Handheld: CHHManager::Upload: Finish (0 ms)
0002871: 6904: Handheld: CHHManager::Upload: Start
0002871: 6904: Handheld: CHHUploadHelper::UploadFiles: Start
0002871: 6904: Handheld: CHHUploadHelper::UploadFiles: Finish (0 ms)
0002871: 6904: Handheld: CHHManager::Upload: Finish (0 ms)
0002886: 6904: General: CMainUIWnd::Resize: Start
0002902: 6904: General: CMainUIWnd::Resize: Finish (16 ms)
0002918: 6904: General: CMainUIWnd::Resize: Start
0002933: 6904: General: CMainUIWnd::Resize: Finish (15 ms)
0002949: 6904: General: CMCHandheldViewInfo::GetFiles: Start
0002949: 6904: Handheld: CHHManager::GetFilesFromDevice: Start
0002949: 6904: Handheld: CHHManager::GetFilesFromDevice: Finish (0 ms)
0002949: 6904: General: CMCHandheldViewInfo::GetFiles: Finish (0 ms)
0002964: 6904: General: CPanesWnd::UpdatePanes: Start
0002996: 6904: General: CPanesWnd::UpdatePanes: Finish (32 ms)
0002996: 6904: General: CMJFileListCtrl::StartFileInsertion: Start
0002996: 6904: General: CMJFileListCtrl::StartFileInsertion: Finish (0 ms)
0002996: 6904: General: CMJFileListCtrl::FinishFileInsertion: Start
0002996: 6904: General: CMJFileListCtrl::FinishFileInsertion: Finish (0 ms)
0003011: 6904: General: CHandheldViewHeaderWnd::InternalUpdateUI: Start
0003011: 6904: General: CHandheldViewHeaderWnd::InternalUpdateUI: Finish (0 ms)
0003027: 6904: Handheld: CHHUploadWorker::NotifyWaitForStatusFinished: Start
0003027: 6904: Handheld: CHHUploadHelper::InternalVerifyTransferContinue: Start
0003058: 6904: Handheld: CHHUploadHelper::InternalVerifyTransferContinue: FinalSubmit returned ok, bRetVal=1, nFiles=22, nErrFiles=0, bListContainsServiceFiles=0
0003058: 6904: Handheld: CHHUploadHelper::InternalVerifyTransferContinue: Finish (31 ms)
0003058: 6904: Handheld: CHHManager::GetConversionEncoderPlugin: Start
0003058: 6904: Handheld: CHHManager::GetConversionEncoderPlugin: Creating encoder plugin: 'External Encoder'(Handheld\{72766FCE-2EDB-4800-9165-E0A1A42DAAA2})...
0003058: 6904: Handheld: CHHManager::GetConversionEncoderPlugin: Finish (0 ms)
0003058: 6904: Handheld: CHHUploadWorker::NotifyWaitForStatusFinished: Finish (31 ms)
0003074: 7216: Handheld: CHHPluginThread::ProcessCommand: Start
0003074: 284: Handheld: CHHPluginThread::Thread Message Processing: Start
0003089: 284: Handheld: CHHPluginThread::Thread Message Processing: Type: 0, Function: 2
0003089: 284: Handheld: CHHPluginThread::Thread Message Processing: Command = 1027
0003089: 284: Handheld: CHHPluginThread::Thread Message Processing: Finish (15 ms)
0003136: 7216: Handheld: CHHPluginThread::ProcessCommand: Finish (62 ms)
0003136: 7216: Handheld: CHHPluginThread::ProcessCommand: Start
0003136: 284: Handheld: CHHPluginThread::Thread Message Processing: Start
0003136: 284: Handheld: CHHPluginThread::Thread Message Processing: Type: 0, Function: 2
0003136: 284: Handheld: CHHPluginThread::Thread Message Processing: Command = 1032
0003136: 284: Handheld: CHHPluginThread::Thread Message Processing: Finish (0 ms)
0003198: 7216: Handheld: CHHPluginThread::ProcessCommand: Finish (62 ms)
0003198: 6904: Handheld: CHHUploadWorker::NotifyStartFinished: Start
0003198: 6904: Handheld: CHHUploadWorker::StartNextDownload: Start
0003198: 6904: Handheld: CHHUploadWorker::StartNextDownload: Finish (0 ms)
0003198: 6904: Handheld: CHHUploadWorker::StartNextDownload: Start
0003198: 6904: Handheld: CHHUploadWorker::StartNextDownload: Finish (0 ms)
0003198: 6904: Handheld: CHHUploadWorker::StartNextDownload: Start
0003198: 6904: Handheld: CHHUploadWorker::StartNextDownload: Finish (0 ms)
0003198: 6904: Handheld: CHHUploadWorker::StartNextConversion: Start
0003214: 6904: Handheld: CHHUploadWorker::StartNextConversion: Converting file 0
0003214: 6904: Handheld: CHHUploadWorker::StartNextConversion: Finish (16 ms)
0003214: 6904: Handheld: CHHUploadWorker::StartNextUpload: Start
0003214: 6904: Handheld: CHHUploadWorker::StartNextUpload: Finish (0 ms)
0003214: 6904: Handheld: CHHUploadWorker::NotifyStartFinished: Finish (16 ms)
0004790: 6904: General: CMCResourceHelper::GetIsModalPopupShowing: Menu showing
0005850: 6904: General: CMCResourceHelper::GetIsModalPopupShowing: Menu showing
0007223: 6904: General: CMCResourceHelper::GetIsModalPopupShowing: Main window disabled

Logged

JimH

  • Administrator
  • Citizen of the Universe
  • *****
  • Posts: 72543
  • Where did I put my teeth?
Re: External Encoder Stalls @ 50%
« Reply #12 on: January 31, 2010, 07:34:19 am »

"Sync to folder"?
Logged

winterminute

  • Junior Woodchuck
  • **
  • Posts: 61
Re: External Encoder Stalls @ 50%
« Reply #13 on: January 31, 2010, 12:35:45 pm »

I'm not sure what you call the feature that allows you to treat a folder as a device so you can Sync music/playlists to it.
Logged

schmoose

  • Junior Woodchuck
  • **
  • Posts: 52
Re: External Encoder Stalls @ 50%
« Reply #14 on: March 06, 2010, 05:10:37 pm »

same problem here

Filename:
C:\Program Files (x86)\Illustrate\dBpoweramp\CoreConverter.exe

Parameters:
-infile=%IN -outfile=%OUT -convert_to="m4a Nero (AAC)" -cli_encoder="C:\Program Files (x86)\foobar2000\qtaacenc.exe" -cli_cmd="--tvbr 127 --highest - {qt}[outfile]{qt}"

it's not a problem with the files. seems like a random error.

if i try to convert say 10 files in a batch, it may freeze on the tenth. when i start MC again and try to only convert that tenth file, it will work....

btw: i know i've specificed "m4a Nero (AAC)" and then used qtaacence.exe. it should work fine this way.
Logged
Pages: [1]   Go Up