SEG Y format was originally established by the Society of Exploration
Geophysicists as an exchange format for demultiplexed seismic data
on 9-track tape. The SEG document Recommended
Standards for Digital Tape Formats contains the complete description
of the SEG Y revision 0 format standard currently in use. The revision
1 draft standard, also maintained by SEG, describes the next
proposed SEG Y revision.
A tape reel is divided into a tape identification header followed
by multiple trace data blocks. The reel header is in turn subdivided
into a 3200-byte EBCDIC block followed and a 400-byte binary block.
Seismic trace blocks include a 240-byte trace header followed by
the trace samples in either 32-bit floating point, 32-bit integer,
16-bit integer or integer with gain code formats (big-endian, twos-compliment).
Although SEG Y is a tape standard, much SEG Y data now resides on
disk and, therefore, the reel identification header is omitted. The
SEG Y standard defines the first 180 bytes of the trace header, leaving
bytes 181-240 uassigned for optional use. Because of this, the trace
header will be described first below, followed by the reel
identification header.
The difference between standard and non-standard SEG Y formats is
in the use of bytes 181-240. Nonstandard formats assign and use these
bytes and their definition varies across nonstandard formats.
Each PASSCAL SEG Y file contains one trace (data block). The PASSCAL
SEG Y trace format is a modified form of the standard SEG Y traceformat;
we use some of the unspecified trace header words to store information
pertinent to the PASSCAL data. The format of the header is given
below. All integer values are stored with the most significant byte
first. Data values are 16 or 32 bit integers depending upon byte
206 of the header.
| Byte Number |
Type |
Standard SEG Y |
PASSCAL SEG Y |
| 1 - 4 |
Integer |
Trace sequence number within line |
Trace sequence number within data stream |
| 5 - 8 |
Integer |
Trace sequence number within reel |
Trace sequence number within reel
(same as bytes 1-4) |
| 9 - 12 |
Integer |
Original field record number |
Event number |
| 13 - 16 |
Integer |
Trace number within field record |
Channel number |
| 17 - 20 |
Integer |
Source point number |
Not used |
| 21 - 24 |
Integer |
CDP number |
Not used |
| 25 - 28 |
Integer |
CDP sequece number |
Not used |
| 29 - 30 |
Flag |
Trace identification code:
| 1 = seismic |
4 = time break |
7 = timing |
| 2 = dead |
5 = uphole |
8 = water break |
| 3 = dummy |
6 = sweep |
9 = option use |
|
Trace identification code = 1 for seismic data |
| 31 - 32 |
Integer |
Number of vertically summed traces |
Not used |
| 33 - 34 |
Integer |
Number of horizontally summed traces (fold) |
Not used |
| 35 - 36 |
Flag |
Data use:
1 = production; 2 = test |
Not used |
| 37 - 40 |
Float |
Source-receiver offset in feet or meters |
Not used |
| 41 - 44 |
Float |
Receiver group elevation in feet or meters;
positive above sea level |
Not used |
| 45 - 48 |
Float |
Surface elevation at source (feet or meters) |
Not used |
| 49 - 52 |
Float |
Source depth below surface (>0) |
Not used |
| 53 - 56 |
Float |
Datum elevation at receiver group |
Not used |
| 57 - 60 |
Float |
Datum elevation at source |
Not used |
| 61 - 64 |
Float |
Water depth at source |
Not used |
| 65 - 68 |
Float |
Water depth at receiver group |
Not used |
| 69 - 70 |
Integer |
Elevation multiplication scalar for bytes 41-68
= 1, 10, 100, 1000 or 10,000
positive indicates multiplication; negative, division |
Elevation constant = 1 |
| 71 - 72 |
Integer |
Coordinate multiplication scalar for bytes 73-88
(see bytes 69-70) |
Coordinate constant = 1 |
| 73 - 76 |
Float |
Source X (feet or meters) or
longitude (seconds of arc; + is E, - is W) |
Not used |
| 77 - 80 |
Float |
Source Y (feet or meters) or
latitude (seconds of arc; + is N, - is S) |
Not used |
| 81 - 84 |
Float |
Receiver X (feet or meters) or
longitude (seconds of arc; + is E, - is W) |
Not used |
| 85 - 88 |
Float |
Receiver Y (feet or meters) or
latitude (seconds of arc; + is N, - is S) |
Not used |
| 89 - 90 |
Flag |
Coordinate units 1 = feet or meters; 2 = seconds of arc |
Coordinate units = 2 for Lat/Long |
| 91 - 92 |
Integer |
Weathering velocity |
Not used |
| 93 - 94 |
Integer |
Sub-weathering velocity |
Not used |
| 95 - 96 |
Integer |
Uphole time at source (milliseconds) |
Not used |
| 97 - 98 |
Integer |
Uphole time at group (milliseconds) |
Not used |
| 99 - 100 |
Integer |
Souce static correction (milliseconds) |
Not used |
| 101 - 102 |
Integer |
Receiver static correction (milliseconds) |
Not used |
| 103 - 104 |
Integer |
Total static applied |
Low 2 bytes of the total static (milliseconds)
(note: if >= 32767 see bytes 199 - 200) |
| 105 - 106 |
Integer |
Lag time A between trace header time and time
break (milliseconds) |
Not used |
| 107 - 108 |
Integer |
Lag time B between time break and source time
(milliseconds) |
Not used |
| 109 - 110 |
Integer |
Delay time between source and recording time
(milliseconds) |
Not used |
| 111 - 112 |
Integer |
Brute start time (milliseconds) |
Not used |
| 113 - 114 |
Integer |
Mute end time (milliseconds) |
Not used |
| 115 - 116 |
Integer |
Number of samples in this trace |
Number of samples in this trace
(note if >= 32767 see bytes 229 - 232) |
| 117 - 118 |
Integer |
Sample interval (microseconds) |
Sample interval (microseconds)
(note if equal 1 see bytes 201 - 204) |
| 119 - 120 |
Flag |
Gain type: 1 = fixed; 2 = binary
3 = floating point; 4 = optional use |
Fixed gain flag = 1 |
| 121 - 122 |
Integer |
Instrument Gain Constant |
Gain of amplifier |
| 123 - 124 |
Integer |
Instrument early or initial gain |
Not used |
| 125 - 126 |
Flag |
Correlated; 1 = yes, 2 = no |
Not used |
| 127 - 128 |
Integer |
Sweep frequency at start (Hz) |
Not used |
| 129 - 130 |
Integer |
Sweep frequency at end (Hz) |
Not used |
| 131 - 132 |
Integer |
Sweep length (milliseconds) |
Not used |
| 133 - 134 |
Flag |
Sweep type: 1 = linear; 2 = parabolic
3 = exponential; 4 = other |
Not used |
| 135 - 136 |
Integer |
Sweep taper length at start (milliseconds) |
Not used |
| 137 - 138 |
Integer |
Sweep taper length at end (milliseconds) |
Not used |
| 139 - 140 |
Flag |
Sweep taper type: 1 = linear
2 = cosine squared; 3 = other |
Not used |
| 141 - 142 |
Integer |
Alias filter frequency (Hz), if used |
Not used |
| 143 - 144 |
Integer |
Alias filter slope (dB/octave) |
Not used |
| 145 - 146 |
Integer |
Notch filter frequency (Hz), if used |
Not used |
| 147 - 148 |
Integer |
Notch filter slope (dB/octave) |
Not used |
| 149 - 150 |
Integer |
Low-cut frequency (Hz), if used |
Not used |
| 151 - 152 |
Integer |
High-cut frequency (Hz), if used |
Not used |
| 153 - 154 |
Integer |
Low-cut filter slope (dB/octave) |
Not used |
| 155 - 156 |
Integer |
High-cut filter slope (dB/octave) |
Not used |
| 157 - 158 |
Integer |
Year data recorded |
Year data recorded |
| 159 - 160 |
Integer |
Day of year |
Day of year |
| 161 - 162 |
Integer |
Hour of day (24 hour clock) |
Hour of day (24 hour clock) |
| 163 - 164 |
Integer |
Minute of hour |
Minute of hour |
| 165 - 166 |
Integer |
Second of minute (for trace start) |
Second of minute |
| 167 - 168 |
Flag |
Time basis code: 1=local 2=GMT 3=other |
Time basis code: 1=local 2=GMT 3=other |
| 169 - 170 |
Integer |
Trace weighting factor: 2*N volts for least
significant bit where N = 0,1,...,32.767 |
Not used |
| 169 - 170 |
Integer |
Trace weighting factor: 2*N volts for least
significant bit where N = 0,1,...,32.767 |
Not used |
| 171 - 172 |
Integer |
Receiver group number at roll switch position 1 |
Not used |
| 173 - 174 |
Integer |
Receiver group number for first trace in field record |
Not used |
| 175 - 176 |
Integer |
Receiver group number for last trace in field record |
Not used |
| 177 - 178 |
Integer |
Gap size (number of receiver groups dropped) |
Not used |
| 179 - 180 |
Integer |
Overtravel associated with taper at start or end
of line: 1 = down (or behind), 2 = up (or ahead) |
Not used |
| 181 - 186 |
UNIX String
(PASSCAL SEG Y) |
Unassigned |
Station Name code |
| 187 - 194 |
UNIX String
(PASSCAL SEG Y) |
Unassigned |
Sensor Serial code |
| 195 - 198 |
UNIX String
(PASSCAL SEG Y) |
Unassigned |
Channel Name code |
| 199 - 200 |
Integer
(PASSCAL SEG Y) |
Unassigned |
High 2 bytes of the total static shift in milliseconds |
| 201 - 204 |
Integer
(PASSCAL SEG Y) |
Unassigned |
Sample interval in microsecs |
| 205 - 206 |
Flag
(PASSCAL SEG Y) |
Unassigned |
Data format flag: 0=16 bit integer, 1=32 bit integer |
| 207 - 208 |
Integer
(PASSCAL SEG Y) |
Unassigned |
Milliseconds of second for first sample |
| 209 - 210 |
Integer
(PASSCAL SEG Y) |
Unassigned |
Trigger time year |
| 211 - 212 |
Integer
(PASSCAL SEG Y) |
Unassigned |
Trigger time julian day |
| 213 - 214 |
Integer
(PASSCAL SEG Y) |
Unassigned |
Trigger time hour |
| 215 - 216 |
Integer
(PASSCAL SEG Y) |
Unassigned |
Trigger time minutes |
| 217 - 218 |
Integer
(PASSCAL SEG Y) |
Unassigned |
Trigger time seconds |
| 219 - 220 |
Integer
(PASSCAL SEG Y) |
Unassigned |
Trigger time milliseconds |
| 221 - 224 |
IEEE Float
PASSCAL SEG Y |
Unassigned |
Scale factor
(true amplitude = (data value)*(scale factor)/gain |
| 225 - 226 |
Integer
(PASSCAL SEG Y) |
Unassigned |
Instrument Serial Number |
| 227 - 228 |
|
Unassigned |
Not used |
| 229 - 232 |
Integer
(PASSCAL SEG Y) |
Unassigned |
Number of Samples |
| 233 - 236 |
Integer
(PASSCAL SEG Y) |
Unassigned |
Max value in counts |
| 237 - 240 |
Integer
(PASSCAL SEG Y) |
Undefined |
Min value in counts |
The EBCDIC block of the reel identification header is composed of
40 cards (80 bytes per card) that describe data from a line of shot
points. Each card should begin with the character "C"; bytes 29-39
are unassigned for optional use. Unused cards are EBCDIC blank.
| Byte Number |
Type |
Description |
| 3201 - 3204 |
Integer |
Job Identification Number |
| 3205 - 3208 |
Integer |
Line number (1 line per reel) |
| 3209 - 3212 |
Integer |
Reel number |
| 3213 - 3214 |
Integer |
Number of data traces per record |
| 3215 - 3216 |
Integer |
Number of auxillary tracer per record |
| 3217 - 3218 |
Integer |
Sample interval for this reel (microseconds) |
| 3219 - 3220 |
Integer |
Sample interval for original field recording (microseconds) |
| 3221 - 3222 |
Integer |
Number of samples per data trace for this reel |
| 3223 - 3224 |
Integer |
Number of samples per data trace (original field recording) |
| 3225 - 3226 |
Flag |
Data sample format code: 1 = 32-bit float; 2 = 32-bit integer
3 = 16-bit integer; 4 = integer with gain code |
| 3227 - 3228 |
Integer |
Nominal CDP fold |
| 3229 - 3230 |
Flag |
Trace sorting code: 1 = as recorded (no sorting)
2 = CDP ensemble; 3 = single fold continuous profile
4 = horizontally stacked |
| 3231 - 3232 |
Integer |
Number of vertically summed traces |
| 3233 - 3234 |
Integer |
Sweep frequency at start (Hz) |
| 3235 - 3236 |
Integer |
Sweep frequency at end (Hz) |
| 3237 - 3238 |
Integer |
Sweep length (milliseconds) |
| 3239 - 3240 |
Flag |
Sweep type: 1 = linear; 2 = parabolic
3 = exponential; 4 = other |
| 3241 - 3242 |
Integer |
Trace number of sweep channel |
| 3243 - 3244 |
Integer |
Sweep taper length at start (milliseconds) |
| 3245 - 3246 |
Integer |
Sweep taper length at end (milliseconds) |
| 3247 - 3248 |
Flag |
Taper type: 1 = linear
2 = cosine squared; 3 = other |
| 3249 - 3250 |
Flag |
Correlated data traces: 1 = yes, 2 = no |
| 3251 - 3252/td>
| Flag |
Binary gain recovered: 1 = yes, 2 = no |
| 3253 - 3254 |
Flag |
Amplitude recovery method: 1 = none
2 = spherical divergence; 3 = AGC; 4 = none |
| 3255 - 3256 |
Flag |
Measurement system: 1 = feet, 2 = meters |
| 3257 - 3258 |
Flag |
Impulse signal: 1 = negative amplitude means increased pressure
or upward
movement; 2 = positive amplitude means increased pressure or upward movement |
| 3259 - 3260 |
Flag |
Vibratory polarity code (seismic signal lags pilot trace by):
1 = 337.5 to 22.5 degrees, 2 = 22.5 to 67.5 degrees
3 = 67.5 to 112.5 degrees, 4 = 112.5 to 157.5 degrees
5 = 157.5 to 202.5 degrees, 6 = 202.5 to 247.5 degrees
7 = 247.5 to 292.5 degrees, 8 = 292.5 to 337.5 degrees |
| 3261 - 3600 |
|
Unassigned |