NBA2K13 - Music Tool - Song Skipping Fix Example

A hub for everything related to NBA 2K13 modding. Releases, previews, requests, and other modding discussion belongs here.

Re: NBA2K13 - Music Tool - Beta 002 - Solved Sound Issue

Postby Leftos on Wed Jun 19, 2013 8:13 pm

Good to know.
Eleftherios "Leftos" Aslanoglou
NBA 2K AI Software Engineer
Visual Concepts Entertainment / 2K Sports

Used to be "That Tools Guy" around here during the good ol' days. Although you probably remember me as your favorite Podcast host.
User avatar
Leftos
I'm The Pipeline, The Pipeline Is Me
NBA 2K Developer
 
Posts: 5223
Joined: Sun Jun 07, 2009 7:44 am
Location: Novato, CA, USA

Re: NBA2K13 - Music Tool - Beta 002 - Solved Sound Issue

Postby nesa24 on Thu Jun 20, 2013 7:21 am

Well as i promised about chunks and template its possible to read any chunk and play/move it.
temp.wmv is WMV Header and tool adds chunks to bottom of Header
If Chunk is 1st (in jukeboxmusic.bin song) than offset to write in temp.wmv is 1391
if its other chunk than its 1398 in temp.wmv

Code: Select all
if (chunkmode == "first")
            {
                bw.BaseStream.Position = 0x00001391;
            }
            if (chunkmode == "others")
            {
                bw.BaseStream.Position = 0x00001398;
            }


Tool reads jukeboxmusic.bin in
br.BaseStream.Position = 0x00000063; <<< (First Chunk in First Song(Mercy) + JUMP to 0x63 offset of chunk start)
br.BaseStream.Position = 0x00007527; <<< (Third Chunk in First Song(Mercy) 000074C4 + 0x63 offset of chunk start)
br.BaseStream.Position = 0x001E729B; <<< (Second Chunk in Third Song(...) 001E7238 + 0x63 offset of chunk start)

NBA Music Tool 003
(READ/WRITE/PLAY CHUNK)



FULL CORE CODE
Uses .NET 3.5
Uses WMPLib
( Explained here http://msdn.microsoft.com/en-us/library ... 64582.aspx
and here http://stackoverflow.com/questions/1311 ... ndows-form )
Code: Select all
using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Drawing.Imaging;
using System.Linq;
using System.Text;
using System.Windows.Forms;
using System.Diagnostics;
using System.IO;
using System.Media;
using WMPLib;

namespace NBA_Music_Tool___BETA
{
    public partial class Form1 : Form
    {
        public Form1()
        {
            InitializeComponent();
            ofd.FileName = "nodata";

        }

        OpenFileDialog ofd = new OpenFileDialog();


        private void pictureBox10_Click(object sender, EventArgs e)
        {
            Application.Exit();
        }
       
        byte[] muzikazapisanje = { };
        string filename = "";
        private void button1_Click(object sender, EventArgs e)
        {
            ofd.Title = "Select jukeboxmusic.bin to patch";
            ofd.Filter = "jukeboxmusic.bin(*.bin)|*.bin";
            ofd.ShowDialog();
            if (ofd.SafeFileName=="jukeboxmusic.bin")
            {
                filename = ofd.FileName;
                this.button2.Enabled = true;
                this.button4.Enabled = true;
                this.button6.Enabled = true;
            }
           
        }

        string readmus = Directory.GetCurrentDirectory() + "\\temp.dat";
        string readmus2 = Directory.GetCurrentDirectory() + "\\temp2.dat";
        string readmus3 = Directory.GetCurrentDirectory() + "\\temp3.dat";
        private void button2_Click(object sender, EventArgs e)
        {           
            muzikazapisanje = ReadAllBytes(readmus);
            button3.Enabled = true;
        }

        private void button3_Click(object sender, EventArgs e)
        {
            BinaryWriter bw = new BinaryWriter(File.Open(ofd.FileName, FileMode.Open, FileAccess.ReadWrite));
            bw.BaseStream.Position = 0x00000060;
            //byte[] obr = muzikazapisanje.Reverse().ToArray();
            //Array.Reverse(muzikazapisanje, 0, muzikazapisanje.Length);
            bw.Write(muzikazapisanje);
            bw.Flush();
            bw.Close();
            button3.Enabled = false;
        }

        public static UInt32 ReverseBytes(UInt32 value)
        {
            return (value & 0x000000FFU) << 24 | (value & 0x0000FF00U) << 8 |
                   (value & 0x00FF0000U) >> 8 | (value & 0xFF000000U) >> 24;
        }




        public byte[] ReadAllBytes(string fileName)
        {
            byte[] buffer = null;
            using (FileStream fs = new FileStream(fileName, FileMode.Open, FileAccess.Read))
            {
                buffer = new byte[fs.Length];
                fs.Read(buffer, 0, (int)fs.Length);
            }
            return buffer;
        }

        private void button5_Click(object sender, EventArgs e)
        {
            Application.Exit();
        }

        private void button4_Click(object sender, EventArgs e)
        {
            muzikazapisanje = ReadAllBytes(readmus2);
            button3.Enabled = true;
        }

        private void button6_Click(object sender, EventArgs e)
        {           
            muzikazapisanje = ReadAllBytes(readmus3);
           
            button3.Enabled = true;
        }

        string chunkmode = "";

/// Read Chunk From jukeboxmusic.bin
        private void button7_Click(object sender, EventArgs e)
        {

            BinaryReader br = new BinaryReader(File.Open(ofd.FileName, FileMode.Open, FileAccess.Read));
            if (checkBox1.Checked == true)
            {
                br.BaseStream.Position = 0x00000063;
                chunkmode = "first";
                chunky = br.ReadBytes(0x39FF);
            }
            if (checkBox2.Checked == true)
            {
                br.BaseStream.Position = 0x00007527;
                chunkmode = "others";
                chunky = br.ReadBytes(0x39FF);
            }
            if (checkBox3.Checked == true)
            {
                br.BaseStream.Position = 0x001E729B;
                chunkmode = "others";
                chunky = br.ReadBytes(0x39FF);
            }
            br.Close();

        }


        byte[] chunky = { }; /// array of chunk bites (0x3FF)


///Play Process

        private void PlayFile(String url)
        {
            WMPLib.WindowsMediaPlayer wmp = new WindowsMediaPlayer();
            wmp.URL = url;
            wmp.controls.play();         

        }

///Stop Process
        private void StopFile(String url)
        {
            WMPLib.WindowsMediaPlayer wmp = new WindowsMediaPlayer();
            wmp.URL = url;
            wmp.controls.stop();
        }

///[b]WMV Stop[/b]
        private void button8_Click(object sender, EventArgs e)
        {
            StopFile(Directory.GetCurrentDirectory() + "\\temp.wmv");
        }


 /// [b]WMV Player[/b]
        private void button9_Click(object sender, EventArgs e)
        {
            PlayFile(Directory.GetCurrentDirectory() + "\\temp.wmv");
       
        }

        private void button10_Click(object sender, EventArgs e)
        {
            BinaryWriter bw = new BinaryWriter(File.Open(Directory.GetCurrentDirectory() + "\\temp.wmv", FileMode.Open, FileAccess.ReadWrite));
            if (chunkmode == "first")
            {
                bw.BaseStream.Position = 0x00001391;
            }
            if (chunkmode == "others")
            {
                bw.BaseStream.Position = 0x00001398;
            }
            bw.Write(chunky);
            bw.Flush();
            bw.Close();
        }     
    }
}



As of micro skipping of songs wait for tool and guide
Depends on time
All men dream: but not equally.
Those who dream by night in the dusty recesses of their minds wake in the day to find that it was vanity: but the dreamers of the day are dangerous men, for they may act their dreams with open eyes, to make it possible.
This I did.
User avatar
nesa24
 
Posts: 313
Joined: Sun Mar 04, 2012 3:43 am

Re: NBA2K13 - Music Tool - Beta 003 - Chunks and Playing the

Postby Leftos on Thu Jun 20, 2013 7:29 am

I'm guessing you haven't found a way to play more than 2 chunks at a time by adding them both to a wma file, eh? Good job nevertheless, I'll add the functionality to the Audio Editor if you allow me to.
Eleftherios "Leftos" Aslanoglou
NBA 2K AI Software Engineer
Visual Concepts Entertainment / 2K Sports

Used to be "That Tools Guy" around here during the good ol' days. Although you probably remember me as your favorite Podcast host.
User avatar
Leftos
I'm The Pipeline, The Pipeline Is Me
NBA 2K Developer
 
Posts: 5223
Joined: Sun Jun 07, 2009 7:44 am
Location: Novato, CA, USA

Re: NBA2K13 - Music Tool - Beta 003 - Chunks and Playing the

Postby nesa24 on Thu Jun 20, 2013 7:53 am

Leftos wrote:I'm guessing you haven't found a way to play more than 2 chunks at a time by adding them both to a wma file, eh? Good job nevertheless, I'll add the functionality to the Audio Editor if you allow me to.


No i am not allowing you!
Cmon mate!
Greeks and Serbs are Orthodox Brothers :mrgreen:
So no need for asking anything.
I am doing this for community so USE ANYTHING ANYWAY
But Please MAKE TOOL Windows XP MODE.

And yes its possible to write/read more than once but with different header
temp.wmv is 1 sec long just to prove that it can work/play/cut with program

So create a song that is 5-6mins long and remove data and adjust position if song start
All men dream: but not equally.
Those who dream by night in the dusty recesses of their minds wake in the day to find that it was vanity: but the dreamers of the day are dangerous men, for they may act their dreams with open eyes, to make it possible.
This I did.
User avatar
nesa24
 
Posts: 313
Joined: Sun Mar 04, 2012 3:43 am

Re: NBA2K13 - Music Tool - Beta 003 - Chunks and Playing the

Postby Leftos on Thu Jun 20, 2013 7:56 am

So create a silent WMA file that's like 5 minutes long and start concatenating chunks? What settings did you use for the WMA? 32kbps CBR, 16bit, Stereo, 44.1KHz?

In order to make the tool compatible with Windows XP I'd have to regress on some technologies I'm using, and I'm not really looking into that right now. I may make it XP compatible later on, after it matures, by porting over and making a separate XP compatible version. Once we're done adding features, I'll think about doing that.
Eleftherios "Leftos" Aslanoglou
NBA 2K AI Software Engineer
Visual Concepts Entertainment / 2K Sports

Used to be "That Tools Guy" around here during the good ol' days. Although you probably remember me as your favorite Podcast host.
User avatar
Leftos
I'm The Pipeline, The Pipeline Is Me
NBA 2K Developer
 
Posts: 5223
Joined: Sun Jun 07, 2009 7:44 am
Location: Novato, CA, USA

Re: NBA2K13 - Music Tool - Beta 003 - Chunks and Playing the

Postby nesa24 on Thu Jun 20, 2013 8:00 am

Used AIFF MP3 Converter
http://download.cnet.com/AIFF-MP3-Conve ... 87939.html
It has WMV audio only (44100/31kbps/stereo)
And after that hex..
All men dream: but not equally.
Those who dream by night in the dusty recesses of their minds wake in the day to find that it was vanity: but the dreamers of the day are dangerous men, for they may act their dreams with open eyes, to make it possible.
This I did.
User avatar
nesa24
 
Posts: 313
Joined: Sun Mar 04, 2012 3:43 am

Re: NBA2K13 - Music Tool - Beta 003 - Chunks and Playing the

Postby Leftos on Thu Jun 20, 2013 8:30 am

I'm not getting any sound to play using your tool, nesa. I run it, select my jukeboxmusic.bin, Chunk 1 is selected, I click Read Chunk, then Write Chunk for Playing, then click on Play but nothing happens. I can see the temp.wmv file was edited and grew to be 20KB, but nothing's playing. Am I doing the right steps?
Eleftherios "Leftos" Aslanoglou
NBA 2K AI Software Engineer
Visual Concepts Entertainment / 2K Sports

Used to be "That Tools Guy" around here during the good ol' days. Although you probably remember me as your favorite Podcast host.
User avatar
Leftos
I'm The Pipeline, The Pipeline Is Me
NBA 2K Developer
 
Posts: 5223
Joined: Sun Jun 07, 2009 7:44 am
Location: Novato, CA, USA

Re: NBA2K13 - Music Tool - Beta 003 - Chunks and Playing the

Postby nesa24 on Thu Jun 20, 2013 8:36 am

yes you are
...
dont know whats issue
try xp mode or run as admin
All men dream: but not equally.
Those who dream by night in the dusty recesses of their minds wake in the day to find that it was vanity: but the dreamers of the day are dangerous men, for they may act their dreams with open eyes, to make it possible.
This I did.
User avatar
nesa24
 
Posts: 313
Joined: Sun Mar 04, 2012 3:43 am

Re: NBA2K13 - Music Tool - Beta 003 - Chunks and Playing the

Postby Leftos on Thu Jun 20, 2013 8:39 am

It's not one of those issues. The file is written correctly, but other than a fraction of a second of sound, the file stops playing. Can you upload an edited temp.wmv of yours that your tool has produced and plays a whole chunk from, as in at least a second?
Eleftherios "Leftos" Aslanoglou
NBA 2K AI Software Engineer
Visual Concepts Entertainment / 2K Sports

Used to be "That Tools Guy" around here during the good ol' days. Although you probably remember me as your favorite Podcast host.
User avatar
Leftos
I'm The Pipeline, The Pipeline Is Me
NBA 2K Developer
 
Posts: 5223
Joined: Sun Jun 07, 2009 7:44 am
Location: Novato, CA, USA

Re: NBA2K13 - Music Tool - Beta 003 - Chunks and Playing the

Postby nesa24 on Thu Jun 20, 2013 8:42 am

Leftos wrote:It's not one of those issues. The file is written correctly, but other than a fraction of a second of sound, the file stops playing. Can you upload an edited temp.wmv of yours that your tool has produced and plays a whole chunk from, as in at least a second?


temp.wmv is 1 sec long
off to bad now
tommorow when i find time will provide longer one
so you did get small sound (WHAT from mercy)?
Tool is only intended to show that it can be done
I will make longerones tomorrow
All men dream: but not equally.
Those who dream by night in the dusty recesses of their minds wake in the day to find that it was vanity: but the dreamers of the day are dangerous men, for they may act their dreams with open eyes, to make it possible.
This I did.
User avatar
nesa24
 
Posts: 313
Joined: Sun Mar 04, 2012 3:43 am

Re: NBA2K13 - Music Tool - Beta 003 - Chunks and Playing the

Postby Leftos on Thu Jun 20, 2013 8:51 am

What I asked for is a temp.wmv with a chunk exported from your tool into it, not the base temp.wmv that you have with the tool that's just headers. Just for me to take a listen to it, to actually hear even a second of audio out of it, to see what I'm doing wrong. Problem is, I can't hear a second of audio, I hear something that's like 1/10th of a second, like a click of audio and then it's gone. If you figure out how to build something longer, I'll look into it.
Eleftherios "Leftos" Aslanoglou
NBA 2K AI Software Engineer
Visual Concepts Entertainment / 2K Sports

Used to be "That Tools Guy" around here during the good ol' days. Although you probably remember me as your favorite Podcast host.
User avatar
Leftos
I'm The Pipeline, The Pipeline Is Me
NBA 2K Developer
 
Posts: 5223
Joined: Sun Jun 07, 2009 7:44 am
Location: Novato, CA, USA

Re: NBA2K13 - Music Tool - Beta 003 - Chunks and Playing the

Postby Leftos on Thu Jun 20, 2013 9:52 am

I've figured out a way to play all the audio files inside the .bin files with an xWMA header (the one produced by xWMAencode.exe, which the Audio Editor already uses), rather than WMV/WMA. I'll upload the new version soon.
Eleftherios "Leftos" Aslanoglou
NBA 2K AI Software Engineer
Visual Concepts Entertainment / 2K Sports

Used to be "That Tools Guy" around here during the good ol' days. Although you probably remember me as your favorite Podcast host.
User avatar
Leftos
I'm The Pipeline, The Pipeline Is Me
NBA 2K Developer
 
Posts: 5223
Joined: Sun Jun 07, 2009 7:44 am
Location: Novato, CA, USA

Re: NBA2K13 - Music Tool - Beta 003 - Chunks and Playing the

Postby jaelove on Thu Jun 20, 2013 9:54 am

you da man :bowdown: :bowdown2:
jaelove
 
Posts: 713
Joined: Tue Oct 12, 2010 3:50 am

Re: NBA2K13 - Music Tool - Beta 003 - Chunks and Playing the

Postby JaoSming on Thu Jun 20, 2013 10:07 am

oooooo BABY

holy shit, that just gave me an awesome Blacktop idea :P
Opinions are my own.

JaoSming
2KTV Producer
NBA 2K Developer
 
Posts: 29904
Joined: Tue Sep 13, 2005 12:45 am
Location: 2K

Re: NBA2K13 - Music Tool - Beta 003 - Chunks and Playing the

Postby ruckzell17 on Thu Jun 20, 2013 10:58 am

Yes! And pls make it compatible to xp...
User avatar
ruckzell17
 
Posts: 284
Joined: Mon Aug 13, 2012 1:58 am

Re: NBA2K13 - Music Tool - Beta 003 - Chunks and Playing the

Postby melomanu20 on Thu Jun 20, 2013 3:15 pm

Ruckzell17 wrote:Yes! And pls make it compatible to xp...


+1 (when you get a chance of course)
melomanu20
 
Posts: 98
Joined: Tue Aug 14, 2012 10:11 pm
Location: Chicago, IL

Re: NBA2K13 - Music Tool - Beta 003 - Chunks and Playing the

Postby nesa24 on Thu Jun 20, 2013 7:55 pm

Leftos wrote:I've figured out a way to play all the audio files inside the .bin files with an xWMA header (the one produced by xWMAencode.exe, which the Audio Editor already uses), rather than WMV/WMA. I'll upload the new version soon.


:lol:

Thats great.
Later today i will explain
**how to fix microskipping
**how to cut
**how to extend song

Tommorow busy with PES-Serbia Edit Team Patch for 2K13
after that i will take a look into 2K Video Format issue
All men dream: but not equally.
Those who dream by night in the dusty recesses of their minds wake in the day to find that it was vanity: but the dreamers of the day are dangerous men, for they may act their dreams with open eyes, to make it possible.
This I did.
User avatar
nesa24
 
Posts: 313
Joined: Sun Mar 04, 2012 3:43 am

Re: NBA2K13 - Music Tool - Beta 002 - Solved Sound Issue

Postby nesa24 on Sun Jun 23, 2013 11:22 pm

Leftos wrote:Here you go:
jukeboxmusic.bin with Mercy replaced: http://www.mediafire.com/download/de881 ... oxmusic.7z
Song that replaced Mercy: http://www.mediafire.com/listen/o6ngc3d ... vision.mp3
(It's a creative commons licensed song, so no worries. :P)


Sorry for being slow but i lack time ffs

Anyway


// Read 2 bytes from 0x15 of section
// Write those 2 bytes to 0x5D from sections

Tool ONLY fixes Mercy ( your song in this case )

Download SongSkipping FIX

Source Code
Code: Select all
using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Text;
using System.Windows.Forms;
using System.IO;
using System.Linq;

namespace NBA2K_JumpingFIX
{
    public partial class Form1 : Form
    {
        public Form1()
        {
            InitializeComponent();
            this.button6.Enabled = false;
            this.button9.Enabled = false;
            ofd.FileName = "nodata";
         
        }


        OpenFileDialog ofd = new OpenFileDialog();
       
        byte[] jukeboxfile = { };       
        byte[] sectionheaders = { 0x69, 0xA1, 0xBE, 0xD2, 0x02, 0x00, 0x00, 0x00, 0xCD, 0x05, 0x00, 0x00, 0x0A, 0x00, 0x00, 0x00, 0x44, 0xAC };

        // SELECT FILE
        private void button1_Click(object sender, EventArgs e)
        {
            ofd.Title = "Select juke to patch";

            if (ofd.ShowDialog() == DialogResult.OK)
            {
                jukeboxfile = File.ReadAllBytes(ofd.FileName);
                this.button6.Enabled = true;

            }
        }

        // Close TOOL
        private void button3_Click(object sender, EventArgs e)
        {
            Application.Exit();
        }

        // ListOfSectionHeaders offsets = INTS
        private List<string> SectionHeaders = new List<string>();


        // Find sections offsets
        private void button6_Click(object sender, EventArgs e)
        {
            int n = IndexOfBytes(jukeboxfile, sectionheaders, 0, jukeboxfile.Length);
            int b = IndexOfBytes(jukeboxfile, sectionheaders, 4, jukeboxfile.Length);

            int jukeboxsize = jukeboxfile.Length;
            int foundlocation = new int();
            int location = new int();           
            for (location = 0; location < 859424; location++)
            {
                foundlocation = IndexOfBytes(jukeboxfile, sectionheaders, location, jukeboxsize);
                if (foundlocation != -1)
                {
                    SectionHeaders.Add(foundlocation.ToString());
                    location = location + 18;
                }
                else
                {
                    location = location + 1;
                }
            }
            SectionHeaders = SectionHeaders.Distinct().ToList();           
            MessageBox.Show("Ready");
            listBox1.DataSource = SectionHeaders;
            this.button9.Enabled = true;
        }



        // Index of offsets function
        public int IndexOfBytes(byte[] array, byte[] pattern, int startIndex, int count)
        {
            if (array == null || array.Length == 0 || pattern == null || pattern.Length == 0 || count == 0)
            {
                return -1;
            }
            int i = startIndex;
            int endIndex = count > 0 ? Math.Min(startIndex + count, array.Length) : array.Length;
            int fidx = 0;
            int lastFidx = 0;

            while (i < endIndex)
            {
                lastFidx = fidx;
                fidx = (array[i] == pattern[fidx]) ? ++fidx : 0;
                if (fidx == pattern.Length)
                {
                    return i - fidx + 1;
                }
                if (lastFidx > 0 && fidx == 0)
                {
                    i = i - lastFidx;
                    lastFidx = 0;
                }
                i++;
            }
            return -1;
        }
   
       

        // Place to store 2 bytes from 0x15
        byte[] copypaste = { };

        private void button9_Click(object sender, EventArgs e)
        {



            foreach (string sas in listBox1.Items)
            {
                if (sas != string.Empty)
                {
                    // Read 2 bytes from 0x15 of section
                    BinaryReader br = new BinaryReader(File.Open(ofd.FileName, FileMode.Open, FileAccess.Read));
                    long ii1 = Convert.ToInt64(sas) + 0x15;
                    br.BaseStream.Position = ii1;
                    copypaste = br.ReadBytes(2);
                    br.Close();
                    //Write 2 bytes to 0x5D from sections
                    BinaryWriter bw = new BinaryWriter(File.Open(ofd.FileName, FileMode.Open, FileAccess.Write));
                    long aii1 = Convert.ToInt64(sas) + 0x5D;
                    bw.BaseStream.Position = aii1;
                    bw.Write(copypaste);
                    bw.Flush();
                    bw.Close();
                    Array.Clear(copypaste, 0, copypaste.Length);                   
                }
                else
                {
                }
            }
            MessageBox.Show("Done");
        }
    }
}
All men dream: but not equally.
Those who dream by night in the dusty recesses of their minds wake in the day to find that it was vanity: but the dreamers of the day are dangerous men, for they may act their dreams with open eyes, to make it possible.
This I did.
User avatar
nesa24
 
Posts: 313
Joined: Sun Mar 04, 2012 3:43 am

Re: NBA2K13 - Music Tool - Song Skipping Fix Example

Postby Leftos on Sun Jun 23, 2013 11:34 pm

By sections you mean the chunks that we know? That's what I get from your sectionheaders array which starts with 0x69A1BED2.
Eleftherios "Leftos" Aslanoglou
NBA 2K AI Software Engineer
Visual Concepts Entertainment / 2K Sports

Used to be "That Tools Guy" around here during the good ol' days. Although you probably remember me as your favorite Podcast host.
User avatar
Leftos
I'm The Pipeline, The Pipeline Is Me
NBA 2K Developer
 
Posts: 5223
Joined: Sun Jun 07, 2009 7:44 am
Location: Novato, CA, USA

Re: NBA2K13 - Music Tool - Song Skipping Fix Example

Postby nesa24 on Sun Jun 23, 2013 11:54 pm

Leftos wrote:By sections you mean the chunks that we know? That's what I get from your sectionheaders array which starts with 0x69A1BED2.


Yes
Chunks=Sections=SongParts

Code: Select all
byte[] sectionheaders = { 0x69, 0xA1, 0xBE, 0xD2, 0x02, 0x00, 0x00, 0x00, 0xCD, 0x05, 0x00, 0x00, 0x0A, 0x00, 0x00, 0x00, 0x44, 0xAC };
All men dream: but not equally.
Those who dream by night in the dusty recesses of their minds wake in the day to find that it was vanity: but the dreamers of the day are dangerous men, for they may act their dreams with open eyes, to make it possible.
This I did.
User avatar
nesa24
 
Posts: 313
Joined: Sun Mar 04, 2012 3:43 am

Re: NBA2K13 - Music Tool - Song Skipping Fix Example

Postby Leftos on Mon Jun 24, 2013 12:32 am

I'm sorry to tell you that that didn't fix the micro-skipping. It's still audible to me (there is some for example a few seconds after the start, and it becomes even more obvious if you substitute the song I sent you with some other song at file 0). I have a theory about how this could be fixed though.

Open any non-stripped xWMA file encoded with xWMAEncode.exe. There's the dpds section which is essentially an array of increasing 32-bit integers denoting how much information has been decoded in bytes after each packet of pure WMAv2 is decoded. I believe this information is normally copied to each chunk, with each chunk consisting of 10 packets.

Take a look at chunk 0 of file 0 in jukeboxmusic.bin. At decimal offset 56 there's an int32 that's equal to 40960. Then 81920, 114688, etc.

I believe that we need to take the dpds information and copy-paste it in there gradually for each chunk. I'll try to do that today.
Eleftherios "Leftos" Aslanoglou
NBA 2K AI Software Engineer
Visual Concepts Entertainment / 2K Sports

Used to be "That Tools Guy" around here during the good ol' days. Although you probably remember me as your favorite Podcast host.
User avatar
Leftos
I'm The Pipeline, The Pipeline Is Me
NBA 2K Developer
 
Posts: 5223
Joined: Sun Jun 07, 2009 7:44 am
Location: Novato, CA, USA

Re: NBA2K13 - Music Tool - Song Skipping Fix Example

Postby nesa24 on Mon Jun 24, 2013 12:38 am

i dont get it mate
i have tried on your and R4zor jukebox and didnt have skipping after fix

realy dont get it how it isnt working with you
All men dream: but not equally.
Those who dream by night in the dusty recesses of their minds wake in the day to find that it was vanity: but the dreamers of the day are dangerous men, for they may act their dreams with open eyes, to make it possible.
This I did.
User avatar
nesa24
 
Posts: 313
Joined: Sun Mar 04, 2012 3:43 am

Re: NBA2K13 - Music Tool - Song Skipping Fix Example

Postby R4zoR on Mon Jun 24, 2013 1:04 am

nesa24 wrote:i dont get it mate
i have tried on your and R4zor jukebox and didnt have skipping after fix

realy dont get it how it isnt working with you

Ahh can u send me through PM the fixed version of my released soundtrack, want to test it out.
R4zoR has been modding video games for 10 years now, if you want to help me out in the process financially. You can do so by clicking on this link https://www.paypal.me/modderr4zor I will be more than grateful, for the support.
R4zoR
10 years of modding
Contributor
 
Posts: 2884
Joined: Tue Jun 16, 2009 4:10 am
Location: Lithuania

Re: NBA2K13 - Music Tool - Song Skipping Fix Example

Postby nesa24 on Mon Jun 24, 2013 1:10 am

R4zoR wrote:
nesa24 wrote:i dont get it mate
i have tried on your and R4zor jukebox and didnt have skipping after fix

realy dont get it how it isnt working with you

Ahh can u send me through PM the fixed version of my released soundtrack, want to test it out.


ok. later. cant now.
All men dream: but not equally.
Those who dream by night in the dusty recesses of their minds wake in the day to find that it was vanity: but the dreamers of the day are dangerous men, for they may act their dreams with open eyes, to make it possible.
This I did.
User avatar
nesa24
 
Posts: 313
Joined: Sun Mar 04, 2012 3:43 am

Re: NBA2K13 - Music Tool - Song Skipping Fix Example

Postby R4zoR on Mon Jun 24, 2013 1:16 am

nesa24 wrote:
R4zoR wrote:
nesa24 wrote:i dont get it mate
i have tried on your and R4zor jukebox and didnt have skipping after fix

realy dont get it how it isnt working with you

Ahh can u send me through PM the fixed version of my released soundtrack, want to test it out.


ok. later. cant now.

Meh is it so hard to just put it on mediafire or somewhere, it will take you like a minute or so, i want to release the soundtracks with the names and covers like today or tomorrow.
R4zoR has been modding video games for 10 years now, if you want to help me out in the process financially. You can do so by clicking on this link https://www.paypal.me/modderr4zor I will be more than grateful, for the support.
R4zoR
10 years of modding
Contributor
 
Posts: 2884
Joined: Tue Jun 16, 2009 4:10 am
Location: Lithuania

PreviousNext

Return to NBA 2K13 Modding

Who is online

Users browsing this forum: No registered users and 39 guests