View Full Version : BeHappy - AviSynth based audio transcoding tool (UPD 19-07-2006)
LigH
2nd February 2014, 21:37
@ CoRoNe:
The logos are *.png files as Base64 coded text. So you simply have to create your logo with the graphics software of your choice, then use one of the many Base64 online converters (http://base64converter.com/) to upload and convert the image... and add it to your *.extension file afterwards.
Tom Keller
5th February 2014, 14:43
That's right. Behappy written C# language also is open source and maybe some person who know C# programmer add radio button.
I think that's highly unlikely, since no programmer was interested in the further development of BeHappy for quite a while.
tebasuna51
9th February 2014, 18:45
Warning!
Bug detected in FraunhoferMp3.extension in the package of previous post.
Use this one instead:
Edit: file updated.
Sorry, I don't see the Siella edition of next post until now
siella
10th February 2014, 10:06
Warning!
Bug detected in FraunhoferMp3.extension in the package of previous post.
Use this one instead:
Thanks tebasuna51
-if - -of "{0}" -q 1 -eof -res {2} -br 0 -m 1 -sr {1} -res {2} -c {3} -vbri
but why did you write -res {2} command double?
siella
7th May 2014, 17:10
I made ffaudio extension to use geting and decoding directly audio files from avi,mkv,mp4,flv,m2ts and ts container.
You need to download ffms2.dll and put in to avisynth plugin folder
https://ffmpegsource.googlecode.com/svn/trunk/doc/ffms2-avisynth.html
Also it request installed hali media splitter on your pc.
FFAudio create index file in path of your video.
FFAudioNoindex doesnt creat file. It writes on ram. But If you dont have enough ram I dont recommend. it use ram above 200 mb for hd video.
Certainly a useful extension. :thanks:
Slightly more useful may be an L-SMASH Works extension, though; the splitters of LAVFilters are more reliable, LwLibavAudioSource() doesn't need the help of Haali to read MPEG containers.
siella
8th May 2014, 11:10
Well I made extension for l-smash as a alternative. Diffirent is if you use LWAudioNoindex spend ram more less than FFAudioNoindex. But if use LWAudio index file size more than FFaudio
Download here https://drive.google.com/folderview?id=0BwV03nn6LPd9OXJUWVVMMXZmNUU&usp=sharing
Copy LSMASHSource.dll to avsynth plugin folder. Also you need msvcr120.dll (not 64bit) put in to system32 folder. (if your system 64bit put in to SysWOW64)
LWAudio create index file in path of your video.
LWAudioNoindex doesnt create index file.
Also you need msvcr120.dll (not 64bit) put in to system32 folder. (if your system 64bit put in to SysWOW64)
Or much more reliable: Install Microsoft's Visual C++ Redistributable Packages für Visual Studio 2013 (http://www.microsoft.com/de-de/download/details.aspx?id=40784) 32-bit (vcredist_x86.exe).
P.S.: :thanks:
siella
8th May 2014, 11:51
Thanks LigH
siella
9th May 2014, 17:06
I change dts extension. Dcaenc doesnt support 24 bit or 32 bit float. Now it will be auto convert 32bit int.
Reino
27th July 2014, 14:10
BassAudio.dll (v2.4 2008) was compiled with Visual C++ Express 2005.
I make a new compile with Visual C++ Express 2010, with a more recent version of AviSynth.h and the last Bass.h (with Bass.dll 2.4.9).Hi tebasuna, could you release the source codes for this compile, so someone else can have a look to make it work with BASS 2.4.10?
tebasuna51
28th July 2014, 09:45
Hi tebasuna, could you release the source codes for this compile, so someone else can have a look to make it work with BASS 2.4.10?
Of course, here is:
siella
6th November 2014, 21:20
I added new exts., fix some and togethered all.
http://i.imgbox.com/PDciLZ1Z.png
LigH
6th November 2014, 23:58
By the way, a user of the german doom9/Gleitz board recently made a multithreaded fork of BeHappy (one file conversion per thread in a batch). No decision yet if he may also try to enhance the extension interface (e.g. with sliders or comboboxes)...
siella
9th November 2014, 00:38
Thanks for this great news. It will be very good if he made. I liked options of drag'n and drop and paralel jobs
jones1913
9th November 2014, 21:35
Thanks for mention it, LigH.
Here is the download link: http://www.mediafire.com/folder/qc84j3132cvnp/BeHappy
14475
14476
Sourcecode is included in download archive.
2014-11-09 (jones1913) v0.2.6.34898
+ multiple files/folders can be opened at once
2014-10-19 (jones1913) v0.2.6.18337
+ added parallel job processing
+ some gui modernization/tweaks
forclip
9th November 2014, 23:06
Of course, here is:
Thanks.
Not a fix:
Comment out the BASS_Free() call and then ignore BASS_ERROR_ALREADY on BASS_Init(). Not sure what else will be broken after that.. :p
The real fix:
Move everything related to bass (un)initialization from DllMain to other place, as it seems like bass 2.4.9+ doesn't like to be Init'ed or Free'd from that point, it hangs. BASS_Init(0,48000,0,0,0) - works, yes, but BASS_Init(1,48000,0,0,0) - hangs. And nothing hangs after moving it to bassAudioSource(), including BASS_Free().
tebasuna51
10th November 2014, 03:03
@jones1913
Thanks for your job.
Like you can see noboby is active developing this tool in CodePlex, if you are interested I can add you to the BeHappy team like Developer (I need your Codeplex username)
tebasuna51
10th November 2014, 03:15
The real fix:
Move everything related to bass (un)initialization from DllMain to other place, as it seems like bass 2.4.9+ doesn't like to be Init'ed or Free'd from that point, it hangs. BASS_Init(0,48000,0,0,0) - works, yes, but BASS_Init(1,48000,0,0,0) - hangs. And nothing hangs after moving it to bassAudioSource(), including BASS_Free().
Sorry, I don't understand the fix needed.
Can you supply a functional new source code?
forclip
10th November 2014, 19:44
Something like this, at least it works for me with bass.dll 2.4.10: http://ge.tt/7t9vkD42/v/0 (src + bassAudio.dll)
Also, this way bassAudio unloads noticeably faster than the original one.
jones1913
10th November 2014, 21:32
if you are interested I can add you to the BeHappy team like Developer (I need your Codeplex username)
Yeah Im not yet registered at codeplex, but I will do it.
I have no experience in code revision control systems. Which system is used by BeHappy project on codeplex? SVN, Git?
tebasuna51
12th November 2014, 08:18
The Project was created by Dimzon using Team Foundation Server / Subversion and I use TortoiseSVN to manage it.
Now recommend Git, but I don't know if can be converted.
Kurtnoise
12th November 2014, 11:03
Now recommend Git, but I don't know if can be converted.
Sure it does...for example, using this (http://svn2github.com/).
tebasuna51
12th November 2014, 14:33
@Kurtnoise
You are Coordinator like me in BeHappy project, the other Cordinator (and creator) Dimzon have 'Last Activity: 5th November 2009' in Doom9.
If you think than is more convenient convert the project to Git you are free to do.
Kurtnoise
12th November 2014, 16:02
I dont see any benefit for the moment to switch to Git for this project...So, stay with SVN and that should be fine.
jones1913
12th November 2014, 21:13
Git seems to be well suited for projects with many contributing people or teams.
This is obviously not the case for BeHappy. So SVN is good enough :cool:.
@tebasuna
Codeplex username is 'jones1913'. When you add me i will check in my changes.
tebasuna51
12th November 2014, 23:28
@jones1913
You are now BeHappy Developer.
tebasuna51
13th November 2014, 00:05
Something like this, at least it works for me with bass.dll 2.4.10: http://ge.tt/7t9vkD42/v/0 (src + bassAudio.dll)
Also, this way bassAudio unloads noticeably faster than the original one.
I forget say thank you. Work also for me.
Reino
13th November 2014, 02:03
Something like this, at least it works for me with bass.dll 2.4.10: http://ge.tt/7t9vkD42/v/0 (src + bassAudio.dll)
Doesn't work for me:
Evaluate: System exception - Illegal Instruction
or,
bassAudioSource: Unable to load or init bass.dll!
for numerous audioformats.
That's on my WinXP pc. Tomorrow I'll test on a Win7 laptop.
forclip
13th November 2014, 04:24
I forget say thank you. Work also for me.
No problem :)
WinXP
Please try this one http://ge.tt/8ngKhP42/v/0 (v110_xp, v110_xp SSE)
tebasuna51
13th November 2014, 04:59
Please try this one http://ge.tt/8ngKhP42/v/0 (v110_xp, v110_xp SSE)
Work also in my W7 system.
LigH
13th November 2014, 09:44
"Illegal instruction" sounds like too much CPU optimization?
Reino
13th November 2014, 21:50
@forclip:
No SSE2 indeed ;)
Therefor only bassAudio_SSE.dll works on my WinXP pc. The two (SSE2) bassAudio.dll work perfectly on the Win7 laptop.
Thanks a lot!
Reino
13th November 2014, 22:22
forclip, I have 2 feature requests, if I may:
Is there a reason why opening tracker music (umx/mod/mo3/s3m/xm/it) fails with BassAudioSource? Or is opening audio through Avisynth limited to sample audio?Yes, don't work with umx/mod/mo3/s3m/xm/it.
- Do you perhaps have the knowhow to add support for tracker-files?
Could you let the next BassAudio version accept original BASS add-on filenames? At the moment it seems BassAudio only accepts BASS add-ons with an underscore in their filename (bass_xxx.dll, like the 3th-party add-ons). BASS' own add-ons; basswma, basscd, bassflac, basswv and bassopus, don't have an underscore in their original filename. You'd have to add one manualy for BassAudio to work.
- Have BassAudio accept the original filename (without underscore) of BASS' own add-ons.
forclip
13th November 2014, 23:36
- Do you perhaps have the knowhow to add support for tracker-files?
For such kind of files another method must be used (BASS_MusicLoad (http://www.un4seen.com/doc/#bass/BASS_MusicLoad.html) instead of BASS_StreamCreateFile (http://www.un4seen.com/doc/#bass/BASS_StreamCreateFile.html), with appropriate flags). I don't think I'm very interested in it, so..
- Have BassAudio accept the original filename (without underscore) of BASS' own add-ons.
Most probably this was done to filter out all *.dlls in current folder, so only those that are bass-plugins ("bass_" prefixed) will be BASS_PluginLoad'ed.
Theoretically there can be other dlls, AviSynth plugins (if someone decided to put everything in one place), runtimes. It seems quite reasonable to not try to load them all.
I'm glad that it now works for you too :)
-----
At your own risk: http://ge.tt/5qvijT42/v/0
Firstly it tries BASS_StreamCreateFile, if it fails - BASS_MusicLoad with BASS_MUSIC_SINCINTER and BASS_MUSIC_RAMP (and BASS_STREAM_PRESCAN | BASS_STREAM_DECODE | BASS_MUSIC_POSRESETEX, required for bassAudio). Works for me, but I have only one such file, so "untested".
Reino
14th November 2014, 21:42
...so only those that are bass-plugins ("bass_" prefixed) will be BASS_PluginLoad'ed.
I don't know any Avisynth plugins that begin with "bass", so "bass" as prefix would suffice just as well and can easily be changed in line 132 of bassAudio.cpp.
At your own risk: http://ge.tt/5qvijT42/v/0
Wow, thanks a lot! All tracker files I've tested so far play flawlessly.
I do however have some samples that have several "chapters", like Twilight.umx (http://www.mediafire.com/download/8tn4s3hg3h12hue/Twilight.umx) for instance. Foobar2000 (with foo_dumb) shows me the file consists of 4 segments: segment 1 (2:18), segment 2 (3:49), segment 3 (0:50) and segment 4 (4:15) (11:12 in total). BassAudio (and DC-BSM btw) only load segment 1 and I don't know if BASS is capable of loading all segments.
I've uploaded Twilight.mka (http://www.mediafire.com/download/ajug5lf7ifo6dwn/Twilight.mka) (Twilight.umx encoded to a 48Kbps Opus stream and muxed to Matroska with chapters), in case you don't have foobar2000, so you can listen to all segments.
forclip
15th November 2014, 03:48
I don't know any Avisynth plugins that begin with "bass"
Well, bassAudio.dll, bass.dll :p . Anyway, I like how it currently is, I don't think it is so hard to rename those plugins after downloading. How often it is required? Surely not every day.
Twilight.umx - can be played in a very tricky way. Here is (http://www.un4seen.com/forum/?topic=2650.msg17705#msg17705) a short explanation. But knowing starting positions "in orders" doesn't make a lot of sense, it's only part of the problem. So I would say that bassAudio will stay limited in playing such files..
tebasuna51
15th November 2014, 10:09
Well, bassAudio.dll, bass.dll :p . Anyway, I like how it currently is, I don't think it is so hard to rename those plugins after downloading. How often it is required? Surely not every day.
I agree.
I was thinking about this problem and I don't found a easy solution.
Reino
15th November 2014, 19:24
Understood. Thanks for you effort, forclip.
tebasuna51
12th December 2014, 16:12
New stable release BeHappy-0.2.6.34898e including BassAudio new versions.
StainlessS
13th December 2014, 10:02
:thanks:Thanx tebasuna51
LigH
13th December 2014, 10:57
:thanks: tebasuna51 for keeping the project alive and jones1913 for the now merged multi-threading fork.
jones1913
13th December 2014, 12:32
New stable release BeHappy-0.2.6.34898e including BassAudio new versions.
Ok, after 300+ downloads without complaints my beta release can be considered to be stable.
Some days ago I made a mini svn commit but I though it was not worth to pack a new release.
If someone will try I have just uploaded a built (.exe only) to mediafire.
EDIT: removed invalid link
Anyway I have a few ideas to further improve the usability but this will not happen this year.
I hope I have more free time next year to work on this app.
tebasuna51
14th December 2014, 08:48
Thanks to jones1913 and forclip, I only join your jobs.
And thanks to siella, and Tom Keller, for the extensions pack, I don't include the pack (only I correct a bug in previous FraunhoferMp3) in the release because I don't have time to check all new encoders, and each user is free to add the needed ones.
Also to CoRoNe for force us to improve the app.
siella
18th December 2014, 10:58
Thanks to jones1913 and tebasuna51 for keeping alive behappy project. I found bug but i am not sure so i ll test again and i ll report in here. Problem is behappy doesnt decode bit of ac3 audio file correctly. I looked ac3 file with mediainfo and it gave 16 bit but when i try to decode with bassadio, ffaudio or nicac3 behappy show 32 bit float.
LigH
18th December 2014, 11:14
Again this confusing topic...
Most lossy audio compression technologies with psycho-acoustic spectrum masking (like MP2, MP3, AC3, AAC...) work in a floating-point mode, they will transform the samples into audio spectrums of brief blocks and store parameters of a Fourier transformation. Decoding them back into samples again will return floating point samples at first. They may be converted to integer samples later, or not, depending on the decoder.
I don't know which resolution of 16 bit MediaInfo reports. That may be the resolution of the input samples which the encoder used. But that doesn't matter. As soon as there is an AC3 bitstream, there are no more 16 bit integer samples. Only a sequence of encoded frequency spectrums in AC3 blocks.
tebasuna51
18th December 2014, 18:39
:goodpost: LigH
BeHappy preserve the output of the decoders (32 bits float, max precission in AviSynth) and only downsample when the next encoder don't support this precission.
Or when you, manually, add a Convert Sample To ... function.
jones1913
27th December 2014, 14:21
Maybe declaring this as stable was a bit too optimistic.
I found an error in jobs start logic, but it was actually only noticeable when using DSP scripts with initialization delay (eg. normalize filter) or source plugins which are delayed while creating an index (LWLibavAudioSource).
In this case jobs can simply crash or can finish with "done" status but with broken audio output file (with size of only a few kB).
I have just commited a fix.
Now a job is only started if the previous job has properly initialized and reached at least a progress of 1%.
This can lead to a more delayed start of each job now (depending on source/dsp filters and filesize).
But of course correct audio output is much more important than speed.
SVN-builds can be found in my mediafire folder. (https://www.mediafire.com/folder/g6bmfizehfa5m/SVN) (Link also in my signature)
jones1913
2nd January 2015, 13:01
Happy new year to all!
The last days I had some time and so I have worked through the code to see if Im able to extend the extension system,
for more functional and visually rich extension plugins (good advertising slogan he?).
Until now I was not very familiar with the xml-deserialization technique used by BeHappy, but it was actually quite simple to understand.
What I have done so far is:
- added some more elements to multi-option class so we can add a trackbar, comboboxes and checkboxes additional to the existing radiobuttons
- renamed some things (all plugins must be recreated anyway)
- make the current plugin configuration saveable in behappy save state file (as before)
old:
http://abload.de/thumb/l16bshn.png (http://abload.de/image.php?img=l16bshn.png) http://abload.de/thumb/q1bws6p.png (http://abload.de/image.php?img=q1bws6p.png)
new:
http://abload.de/thumb/l2l3spf.png (http://abload.de/image.php?img=l2l3spf.png) http://abload.de/thumb/q2k0s16.png (http://abload.de/image.php?img=q2k0s16.png)
Of course all extensions needs to be recreated once this is finished , but I hope that someone can help me then (TomK.? siella?) :)
More infos soon..
LigH
2nd January 2015, 13:11
Now that will certainly be a Happy New Year!
http://cosgan.de/images/smilie/musik/n015.gif (http://www.cosgan.de/smilie.php)
vBulletin® v3.8.11, Copyright ©2000-2025, vBulletin Solutions Inc.