Skip to main content

Notice

Please note that most of the software linked on this forum is likely to be safe to use. If you are unsure, feel free to ask in the relevant topics, or send a private message to an administrator or moderator. To help curb the problems of false positives, or in the event that you do find actual malware, you can contribute through the article linked here.
Topic: foo_onewaysync (Read 118990 times) previous topic - next topic
0 Members and 4 Guests are viewing this topic.

Re: foo_onewaysync

Reply #100
Hi there,
First of all if have to thank the developer for this great plugin.

I'm converting my music files (tak or mp3) with onewaysync which works almost perfect.
The destination files (mp3 from lame) are for my car-hifi which couldn't handle ReplayGain.
So I have to change the converted files to get the same volume afterwards with the following steps manually:
1. Do a "scan per file track gain"
2. use "apply track ReplayGain to file content".

When using the option "process destination files with", the selection "apply track ReplayGain to file content" doesn't appear.
The option "scan per file track gain" ist there.

Is it possible to integrate these two steps into the convertion process ?

That would be perfect.  ;D





Re: foo_onewaysync

Reply #101
Translated as was possible within my limitations this plugin for the Portuguese of Brazil, leave it attached.

Re: foo_onewaysync

Reply #102
When using the option "process destination files with", the selection "apply track ReplayGain to file content" doesn't appear.
The option "scan per file track gain" ist there.

Is it possible to integrate these two steps into the convertion process ?
After the conversion process ows transfers also the replay gain information to the created file. While this is not necessarily perfectly accurate, I have found it to be sufficient for my needs.

When you try with entries in your playlist, e.g. FLAC files, or entire playlist contents you will find that the context menu item "apply track ReplayGain to file content" is missing there as well. It can be called only with certain file types.
The only way to make it appear in the ows preferences dialog is by selecting an appropriate file in the active playlist. However, this is extremely unreliable, because such a file must be selected also when the ows command is executed!

Maybe the best workflow for you would be to create a script which calls the two commands you need, then call this script via foo_run from ows. See also the foobar commandline guide.

Re: foo_onewaysync

Reply #103
Good afternoon, I searched but did not find the option to delete my own posts, would like to remove the post I made earlier, does anyone could direct me how I do it or an administrator erase my previous post this?

 

Re: foo_onewaysync

Reply #104
Hi @zimjo and thanks for this useful component.
In my case, it doesn't seem to handle well large titleformatting strings. Makes foobar crash instantly 100% of the time.
Steps to reproduce :
1. Tasks > TItleformatting Scripts > Paste a large titleformatting string (in my case it's a string that I use for many other purposes so it's tested and it should work)
Code: [Select]
$if(%danse%,'Danse - '$if($strcmp($meta(danse,0),WCS),WCS,$if($strcmp($meta(danse,0),Rock),Rock,$if(%danse%,Autres,ERREUR))),Ecoute)\[$if($and($strstr(%genre%,Comédie),$strcmp($left($meta(album artist),6),Troupe)),%genre%,$if($strstr(%sorting%,'[Coffret]'),$if($strstr(%sorting%,'=='),$left(%sorting%,$sub($strstr(%sorting%,'=='),1)),),$if($and($strstr(%album artist%,Compilation),$not($strstr($left(%sorting%,3),OST))),,[$replace(%sorting%,'==','\')])))\]$if($strstr($left(%sorting%,3),OST),$if($strstr(%sorting%,'=='),'('[$left(%original release date%,4)-]$left(%date%,4)') '$replace($if2('[Single] '$replace(%single%,'?','_'),$replace(%album%,'?','_')[' ['%edition%']'][' ('$if($strcmp($strchr(1234567890,$left(%discnumber%,1)),0),,'CD ')%discnumber%')']),'Remaster',RM,'MFSL Original Master Recording',MFSL),$puts(d,$if2('[Single] '$replace(%single%,'?','_'),$replace(%album%,'?','_')))$puts(e,1)$puts(f,$sub($strstr($get(d), OST),1))$puts(g,$substr($get(d),$get(e),$get(f)))$if($strcmp($left($get(d),2),L''),$ascii($upper($substr($get(d),3,3)))$substr($get(d),4,$get(f))' (L'''')',$if($and($strcmp($left($get(d),2),A ),$or($and($or($strstr(%language%,Anglais),$strstr(%language%,Allemand),$strstr(%language%,Instrumental)),$not($strstr(%genre%,Chanson))),$and($strstr(%language%,Espagnol),$strstr(%genre%,Pop)),$strstr(%genre%,Divers))),$ascii($upper($substr($get(d),3,3)))$substr($get(d),4,$get(f))' (A)',$put(c,$replace($put(b,$cut($get(g),$put(a,$strchr($get(d), )))),The ,,Le ,,Les ,,Des ,,La ,,Las ,,Lo ,,Los ,,An ,,At ,)$substr($get(d),$add($get(a),1),$get(f)))$iflonger($get(g),$len($get(c)),' ('$trim($get(b))')',)))$substr($get(d),$add($get(f),1),999)[' ['$replace(%edition%,Remaster,RM,MFSL Original Master Recording,MFSL)']'][' ('$if($strcmp($strchr(1234567890,$left(%discnumber%,1)),0),,'CD ')%discnumber%')']' ('[$left(%original release date%,4)-]$left(%date%,4)')'),$if($strstr(%album artist%,Compilation),Compilation\$if(%sorting%,$if($strstr(%sorting%,'[Coffret]'),$substr(%sorting%,$add($strstr(%sorting%,']'),2),$len(%sorting%))' ('%totaldiscs% CDs') ('%date%')'\['['%discnumber%'] ']$replace(%album%,'?','_')[' ['%edition%']'],%sorting%\'('[$left(%original release date%,4)-]$left(%date%,4)') '$replace($replace(%album%,'?','_')[' ['%edition%']'][' ('$if($strcmp($strchr(1234567890,$left(%discnumber%,1)),0),,'CD ')%discnumber%')'],'Remaster',RM,'MFSL Original Master Recording',MFSL)),$puts(d,$replace(%album%,'?','_'))$puts(e,1)$puts(f,999)$if($strcmp($left($get(d),2),L''),$ascii($upper($substr($get(d),3,3)))$substr($get(d),4,$get(f))' (L'''')',$if($and($strcmp($left($get(d),2),A ),$or($and($or($strstr(%language%,Anglais),$strstr(%language%,Allemand),$strstr(%language%,Instrumental)),$not($strstr(%genre%,Chanson))),$and($strstr(%language%,Espagnol),$strstr(%genre%,Pop)),$strstr(%genre%,Divers))),$ascii($upper($substr($get(d),3,3)))$substr($get(d),4,$get(f))' (A)',$put(c,$replace($put(b,$cut($get(d),$put(a,$strchr($get(d), )))),The ,,Le ,,Les ,,Des ,,La ,,Las ,,Lo ,,Los ,,An ,,At ,)$substr($get(d),$add($get(a),1),999))$iflonger($get(d),$len($get(c)),' ('$trim($get(b))')',)))[' ['$replace(%edition%,Remaster,RM,MFSL Original Master Recording,MFSL)']'][' ('$if($strcmp($strchr(1234567890,$left(%discnumber%,1)),0),,'CD ')%discnumber%')']' ('[$left(%original release date%,4)-]$left(%date%,4)')'),$if($and($strstr(%genre%,Comédie),$strcmp($left($meta(album artist),6),Troupe)),%subgenre%,$puts(d,$if2($meta_sep(album artist,', ',' & '),$if($strstr(%sorting%,Classique),$replace($meta_sep(composer,', ',' & '),Wolfgang Amadeus,W.A.,Johann Sebastian,J.S.,Ludwig Van,L.V.),$if2(%artist2%,$if2($meta_sep(artist,', ',' & '),$replace($meta_sep(composer,', ',' & '),Wolfgang Amadeus,W.A.,Johann Sebastian,J.S.,Ludwig Van,L.V.))))))$puts(e,1)$puts(f,$if($strstr($get(d),' ('),$sub($strstr($get(d),' ('),1),999))$puts(g,$substr($get(d),$get(e),$get(f)))$if($strcmp($left($get(d),2),L''),$ascii($upper($substr($get(d),3,3)))$substr($get(d),4,$get(f))' (L'''')',$if($and($strcmp($left($get(d),2),A ),$or($and($or($strstr(%language%,Anglais),$strstr(%language%,Allemand),$strstr(%language%,Instrumental)),$not($strstr(%genre%,Chanson))),$and($strstr(%language%,Espagnol),$strstr(%genre%,Pop)),$strstr(%genre%,Divers))),$ascii($upper($substr($get(d),3,3)))$substr($get(d),4,$get(f))' (A)',$put(c,$replace($put(b,$cut($get(g),$put(a,$strchr($get(d), )))),The ,,Le ,,Les ,,Des ,,La ,,Las ,,Lo ,,Los ,,An ,,At ,)$substr($get(d),$add($get(a),1),$get(f)))$iflonger($get(g),$len($get(c)),' ('$trim($get(b))')',))))\$if($strstr(%sorting%,'[Coffret]'),'('%date%') '$substr(%sorting%,$add($strstr(%sorting%,']'),2),$len(%sorting%))' ('%totaldiscs% CDs')'\['['%discnumber%'] ']$replace(%album%,'?','_')[' ['%edition%']'],'('[$left(%original release date%,4)-]$left(%date%,4)') '$replace($if2('[Single] '$replace(%single%,'?','_'),$replace(%album%,'?','_')[' ['%edition%']'][' ('$if($strcmp($strchr(1234567890,$left(%discnumber%,1)),0),,'CD ')%discnumber%')']),'Remaster',RM,'MFSL Original Master Recording',MFSL))))\%tracknumber% - $if($strcmp($len($meta(works)),0),,$if($strstr(%works%,'[]'),$puts(v,$replace(%works%,'[]',))$puts(w,$substr($get(v),$if($strstr(%works%,'=='),$add($strstr($get(v),'=='),2),0),999))$if($strstr(%works%,'[]'),['['$get(w)'] '],[$get(w)' - ']),))$replace(%title%,'?','_')$puts(a,$replace(%version%,'Alternate, ',,'Demo, ',,'Original, ',,'Remix, ',,'Reprise, ',,', Alternate',,', Demo',,', Original',,', Remix',,', Reprise',,Alternate,,Demo,,Original,,Remix,,Reprise,))$puts(b,%subversion%)$if($strcmp($get(a),'?'),$puts(a,))$if($strcmp($get(b),'?'),$puts(b,))$if($get(a),' ['$get(a)[', '$get(b)]']',[' ['$get(b)']'])[' - '%subtitle%][' ('$if($and($not($strcmp($len($meta(album artist)),0)),$not($strcmp($if2($meta(album artist2),$meta(album artist)),$if2(%artist2%,$meta(artist)))),$not($strcmp($meta(artist),$meta(performer)))),$puts(n,$if($or($strstr(%sorting%,Classique),$strstr(%genre%,Classique)),$if($strcmp($meta(album artist),Compilation),,performer),artist))$puts(m,$if2(%artist2%,$meta($get(n),0)))$if($and($strchr($get(m),'('),$strcmp($strchr($get(m),')'),$len($get(m)))),$puts(a,$left($get(m),$sub($strchr($get(m),'('),2))),$puts(a,$get(m)))$puts(m,$if(%artist2%,,$meta($get(n),1)))$if($and($strchr($get(m),'('),$strcmp($strchr($get(m),')'),$len($get(m)))),$puts(b,$left($get(m),$sub($strchr($get(m),'('),2))),$puts(b,$get(m)))$puts(m,$if(%artist2%,,$meta($get(n),$sub($meta_num($get(n)),1))))$if($and($strchr($get(m),'('),$strcmp($strchr($get(m),')'),$len($get(m)))),$puts(c,$left($get(m),$sub($strchr($get(m),'('),2))),$puts(c,$get(m)))$if(%artist2%,$get(a),$ifgreater($meta_num($get(n)),3,$get(a)', [...] & '$get(c),$ifgreater($meta_num($get(n)),2,$get(a)', '$get(b)' & '$get(c),$ifgreater($meta_num($get(n)),1,$get(a)' & '$get(b),$get(a))))),)')']
2. "Choose titleformatting" drop-down menu > Try to select the created titleformatting string
3. When selecting the string, it's an instant foobar crash, guaranteed
BTW : foobar 1.3.9, onewaysync 0.5.9

Can you please help ? Thanks. ;)

Re: foo_onewaysync

Reply #105
In my case, it doesn't seem to handle well large titleformatting strings.
...
BTW : foobar 1.3.9, onewaysync 0.5.9

Thanks for reporting this issue.
Fixed and tested working with 0.5.9b

Re: foo_onewaysync

Reply #106
I'm trying to download 0.5.9b from the components page : http://www.foobar2000.org/components/view/foo_ows
The page says 0.5.9b, but once downloaded and installed, foobar components page in preferences window says 0.5.9.
And most of all, it keeps crashing immediately with my string !
I've tried uninstalling it / reinstalling it : same problem.
FYI the settings seem to be kept after uninstall, since once reinstalled I found all my settings and my long string.
File size is 1 886 516 bytes. @zimjo , any hints ?

Re: foo_onewaysync

Reply #107
It seems there is still the wrong file on the server...dont know why. :(  I won't be able to change that before tomorrow night, please try again then.

Edit: The file in the component repository is broken and unusable, I'll post here when it is working again.

Re: foo_onewaysync

Reply #108
Currently it appears to be incompatible with ffmpeg

Code: [Select]
ffmpeg.exe -f s16le -ar %sr% -ac 2 -i %in% -y -f ogg -codec:a libvorbis -ac 2 -qscale:a 6 -ar 44100 -vn %out%

Works for me.

Re: foo_onewaysync

Reply #109
However, now I have a couple of new problems.

First, I want to strip chars like the single quote from the output.

I tried:
Code: [Select]
%artist%\%album%\%tracknumber% $replace(%title%.$ext(%_path%),"'",_)

But that gives me:
Code: [Select]
foo_onewaysync: Could not create directory structure; unknown path format 0d

Ideally I'd prefer to just remove that char altogether and not replace it with anything, but I haven't quite figured that out yet.

Next, it seems it can't write the sqlite database to the target, even though it can write the audio files to the same target.

Code: [Select]
foo_ows: Attempting to copy file C:\Users\Slated\AppData\Local\Temp\OWSF128.tmp.sqlite to F:\.ows_SGS4.sqlite
Error while copying: C:\Users\Slated\AppData\Local\Temp\OWSF128.tmp.sqlite -> F:\.ows_SGS4.sqlite
  The system cannot find the file specified. 
foo_ows: Error: Error copying file, see Console for details. Make sure that there is enough free space and check permissions.

Both C:\Users\Slated\AppData\Local\Temp\OWSF128.tmp.sqlite and F:\ do exist and have write permissions for the user (me) that owns the foobar process.

 ???

Re: foo_onewaysync

Reply #110
First, I want to strip chars like the single quote from the output.
...
Ideally I'd prefer to just remove that char altogether and not replace it with anything, but I haven't quite figured that out yet.
Try this one:
Code: [Select]
$replace(files\%artist%\%album%\%tracknumber% - %title%,'',).$ext(%_path%)
For an explanation see here.

Next, it seems it can't write the sqlite database to the target, even though it can write the audio files to the same target.

Code: [Select]
foo_ows: Attempting to copy file C:\Users\Slated\AppData\Local\Temp\OWSF128.tmp.sqlite to F:\.ows_SGS4.sqlite
Error while copying: C:\Users\Slated\AppData\Local\Temp\OWSF128.tmp.sqlite -> F:\.ows_SGS4.sqlite
  The system cannot find the file specified. 
foo_ows: Error: Error copying file, see Console for details. Make sure that there is enough free space and check permissions.
That's windows complaining that it cannot find the file, don't know why it would do that. Can you copy using windows explorer? Is F: some kind of special volume?

Re: foo_onewaysync

Reply #111
"(two single quotes in a row) results in one single quote"

Ah, the magic formula is revealed  8)

Forget what I wrote about the copy operation failing. It turned out to be weirdness with the target (a NetDrive2 network share mapped from an ftp server). DOS/PowerShell copy failed too, but Explorer copy succeeded for some reason. I assume the share inherits permissions from the NetDrive2 service, whatever they are. The ftp "server" is actually just my Android running Solid Explorer with an ftp share. I just plugged it directly in to the PC instead. Problem solved.

Thanks.

Re: foo_onewaysync

Reply #112
I cannot update to 0.5.9b! Downloaded the file several times but the error message in Foobar is always: "Could not load component "foo_onewaysync.fb2k-component": Unsupported format or corrupted file" Could you fix it?
Thank you!

Re: foo_onewaysync

Reply #113
Thanks, I was aware of the problem. I would have removed the file, but that is not possible afaik. The reason was an issue with my network, all uploads ended up being corrupted. The download should be okay now.


Re: foo_onewaysync

Reply #114
Hello there :)

I have the following problem.
I have a .flac and want to covert and send it to my s5 mini (lollipop 5.1.1) smartphone.
I got the following message.
By the way I'm using win 10

What could be the problem?
The console says :
foo_onewaysync: Could not create directory structure; unknown path format 0d e

I just found another bug I think. When I want to reset the page, foobar crashes.

Re: foo_onewaysync

Reply #115
You tried to use 'Process destinations files with...' with your smartphone as file destination. This is not possible, because foobar cannot access the files on a device connected via MTP (WPD stands for windows portable device, which is microsofts framework for MTP), therefore you cannot run any context command on those destination files.
Uncheck this option and you're good.

I reproduced the crash and will provide a fix soon. Workaround: You can reset onewaysyncs settings by deleting the file foo_onewaysync.dll.cfg in foobars configuration folder.

Re: foo_onewaysync

Reply #116
Thank you for this component @zimjo, it is very useful!

By the way, does anybody some software that can manage music files on a device connected via MTP (to create playlists to be played later once the device is not connected anymore or to read/edit tags) ?
Decalicatan Decalicatan

Re: foo_onewaysync

Reply #117
Hello,

I unchecked the option but I recognized that the files are converted but there seems to be a problem with saving the files on the device.
The files are not there.

I always get:
foo_onewaysync: Could not create directory structure; unknown path format 0d  :o

Re: foo_onewaysync

Reply #118
Thank you for this component @zimjo, it is very useful!
8)
By the way, does anybody some software that can manage music files on a device connected via MTP (to create playlists to be played later once the device is not connected anymore or to read/edit tags) ?
If your device is a smartphone you should be able to find some app that can do this. Otherwise, I don't know any. Most software creates temporary files when dealing with MTP devices, which is, if I understood correctly, what you do not want.

Re: foo_onewaysync

Reply #119
I always get:
foo_onewaysync: Could not create directory structure; unknown path format 0d  :o
It would help if you could post more information from the console, in particular the target path and the line 'foo_ows: Attempting to copy file ...' before the error message.

Re: foo_onewaysync

Reply #120
Can anybody give some help about how to make conversion for specific file types work?
I have WMA and APE in my music collection, which I need to convert when running ows.
APE works by checking "Convert lossless files", though this is not perfectly ideal for me since my mobile player does support FLAC.
Anyway for WMA, no matter what I input in the "Convert these lossy file types" box, ows simply directly copy the original WMA file.
What did I miss?

Re: foo_onewaysync

Reply #121
Uncheck 'convert lossless files' and check 'convert these lossy file types'. Everything should work as you want, if you write
Code: [Select]
wma,ape
in the box. The file endings need to be .wma and .ape, respectively. Conversion of wma works for me. Note that conversion of DRM protected files is not supported.

Re: foo_onewaysync

Reply #122
That's exactly what I do. However the result is as follows:
Quote
foo_ows: Found 1 WPD devices.
foo_ows: Found storage object HTC One 801e\內部儲存空間
foo_ows: Exporting selection to  wpd:\HTC One 801e\內部儲存空間\Music\%genre%\%filename%
foo_ows: Attempting to copy file D:\share\音樂\Vienna Teng - Green Island Serenade.WMA to wpd_\HTC One 801e\內部儲存空間\Music\Sentimental\Vienna Teng - Green Island Serenade.WMA
foo_ows: Attempting to copy file D:\share\音樂\周杰倫 - 藉口.ape to wpd_\HTC One 801e\內部儲存空間\Music\Sentimental\周杰倫 - 藉口.ape
Deleting temporary files.
foo_ows: Finished task 'New Task'.
foo_ows: Reading from db.
foo_ows: SQL error: no such table: OWS
foo_ows: Attempting to copy file  to
foo_ows: Error: File not found
Deleting temporary files.
foo_ows: Done with command 'New Command'.


Re: foo_onewaysync

Reply #123
Your file extension is in capital letters, which is why it was not considered for file conversion. The latest release 0.5.9d handles this properly.

Re: foo_onewaysync

Reply #124
Hey there, thanks for this awesome tool!

I'm using it with a Moto G (3rd Gen) and it seems to be working quite well. I've only got a minor issue: if I remove a song from my playlist on the PC and synchronize, the track is indeed removed from the playlist on my phone. However, it doesn't delete the actual file from the device even though 'Delete unreferenced files from destination' is checked in the settings.