When we try to open su format data from others computer, the same error always arises:

$ surange < 1.su

surange: fgettr.c: on trace #2 number of samples in header (58361) differs from number for first trace (53255)

It is caused by the compatibility probelm between different computers. You know that SEG-Y have at least 5 floating data format, while su possesses only one format belong to the specific computer. So when you exchange data between different computers, there will be compatibility problem caused by swapping data. In order to finish this problem, we need swap that data from big-endian to little-endian or vice versa at our own computer as follows:

suswapbytes < 1.su format=0 ns=2000 > 2.su

You must know the number of sample before swapping.