- Specify (limit) playable length for segment (TXTP) by almendaz at 6:08 PM EDT on September 18, 2019
I want to create a TXTP, but I have not found the command for the solution to this problem:
I have two .FSB non-loopable samples (they do not contain loop info).
The first segment does not end properly (it has EXACTLY 1 second of silence at the end - 44100 samples literally!)
The second segment is perfectly loopable.
Both segments have the same num.channels.
I want to create a TXTP that takes the 1st segment ending before its last 1 sec, then go to 2nd segment and make this one loop.
- by marcusss at 9:40 PM EDT on September 18, 2019
- Info on TXTP can be found here
Maybe bnnm can help with that answer. Some games have the tracks (Intro + body) overlapping for some weird ass reason so yeah hopefully there is a solution
edited 9:43 PM EDT September 18, 2019
- by NoWool at 12:38 AM EDT on September 19, 2019
- First solution that comes to my mind would be creating a txth for the intro part ("filename.ext.txth") and then set "num_samples = data_size - 44100", I believe this should work most of the time.
Buuut, you may have to use the subfile command and you may have to create a "fake" extension such as ".vgmstream" (I've ran into this a few times, it could be user error though). I think setting subfile_offset to the start address of the subfile, "subfile_size = data_size", pre-calculating how many samples should be in the final sound and setting num_samples to your calculation should work. The reason behind pre-calculating num_samples is that "data_size - (value)" will probably end up w/ an incorrect amount of samples cut.
It's been some time since I've checked the txth/p docs, so there may be a much fancier way of going about this that I am unaware of?
edited 1:15 AM EDT September 19, 2019
- by almendaz at 3:56 AM EDT on September 21, 2019
- Thanks for the tips. Sorry for the late reply, I will test them when I get the time.
- by bnnm at 6:21 PM EDT on September 21, 2019
- I've added a TXTP option so you can do this:
intro.fsb #t -1.0 #removes 1 second
mode = segments
- by almendaz at 1:06 PM EDT on September 28, 2019
- It works !!
Thank you very much ~this TXTP option will surely be VERY useful!
And excuse me for my lateness (an ok thing these times :)
Just a tiny question on this very note: what is the option for specifying number of samples instead of seconds time?
edited 1:08 PM EDT September 28, 2019
- by bnnm at 1:31 PM EDT on September 28, 2019
- You can use N:n.n=minutes:seconds.cents, N.n=seconds, or N=samples (or 0xN too in hex)
intro.fsb #t -44100 #removes 1 second, in samples
mode = segments
You can also set absolute time:
intro.fsb #t 1:00 #force to 1 minute (original time must be higher)
mode = segments
edited 1:36 PM EDT September 28, 2019
- by almendaz at 4:30 PM EDT on September 28, 2019
- Useful info.
So, for best use, use decimal point for seconds time, large integer for num.samples.
There must be a threshold value where the number can mean any of time or num.samples, but it would be a large stretch for such an instance.
Thank you again.
edited 4:31 PM EDT September 28, 2019
- by bnnm at 6:27 PM EDT on September 28, 2019
- It's just the dot in N.n that makes them different. So "#t -1.0" with dot means 1 second, while "#t -1" without dot means 1 sample.
- by almendaz at 10:45 PM EDT on October 1, 2019
- I see; just a matter of reading datatype definition.
Thank you v.m.
HCS Forum Index
Go to Page 0
Search this thread
Show all threads
Reply to this thread:
Halley's Comet Software
Generated in 0.0034s;