The OpenNET Project / Index page

[ новости /+++ | форум | теги | ]

Интерактивная система просмотра системных руководств (man-ов)

 ТемаНаборКатегория 
 
 [Cписок руководств | Печать]

audiofile (4)
  • >> audiofile (4) ( Solaris man: Специальные файлы /dev/* )
  • 
    NAME
         audiofile - file format for audio data
    
    SYNOPSIS
         #include <multimedia/libaudio.h>
    
    DESCRIPTION
         An audio file is composed of three parts:  a 24-byte header,
         a variable-length annotation block, and a contiguous segment
         of audio data.  Audio header and data fields are  stored  in
         network  (big-endian)  byte  order, regardless of the native
         byte-order of the machine architecture on which an  applica-
         tion  may  be running.  Therefore, multi-byte audio data may
         require byte reversal in order  to  operate  on  it  by  the
         arithmetic unit of certain processors.
    
         The header is defined by the following structure:
    
              typedef unsigned long    u_32;          /* unsigned 32-bit integer */
    
              typedef struct {
                   u_32      magic;         /* magic number */
                   u_32      hdr_size; /* byte offset to start of audio data */
                   u_32      data_size;     /* data length, in bytes (optional) */
                   u_32      encoding; /* data encoding enumeration */
                   u_32      sample_rate;   /* samples per second */
                   u_32      channels; /* number of interleaved channels */
              } Audio_filehdr;
    
         The magic field always contains the following constant:
    
              AUDIO_FILE_MAGIC         ( 0x2e736e64 ) /* ".snd" */
    
         The hdr_size field contains the length of the  fixed  header
         plus the variable-length annotation field.  Consequently, it
         may be interpreted as an offset from the start of  the  file
         to the beginning of the audio data.
    
         The data_size field contains the length,  in  bytes  of  the
         audio  data  segment.   If this length is not known when the
         header is written, it should be set  to  AUDIO_UNKNOWN_SIZE,
         defined as follows:
    
              AUDIO_UNKNOWN_SIZE  ( ~0 )         /* (unsigned) -1 */
    
         When the data_size field  contains  AUDIO_UNKNOWN_SIZE,  the
         length  of  the  audio data may be determined by subtracting
         hdr_size from the total length of the file.
    
         The encoding field contains one of the following  enumerated
         keys:
    
              AUDIO_ENCODING_MULAW_8        (1)  /* 8-bit ISDN  u-law
              */  AUDIO_ENCODING_LINEAR_8       (2)  /*  8-bit linear
              PCM  */  AUDIO_ENCODING_LINEAR_16      (3)  /*   16-bit
              linear   PCM  */  AUDIO_ENCODING_LINEAR_32      (5)  /*
              32-bit            linear             PCM             */
              AUDIO_ENCODING_FLOAT          (6)  /*    32-bit    IEEE
              floating point */ AUDIO_ENCODING_DOUBLE         (7)  /*
              64-bit        IEEE        floating       point       */
              AUDIO_ENCODING_ADPCM_G721     (23) /* CCITT g.721 4-bit
              ADPCM  */  AUDIO_ENCODING_ADPCM_G723_3   (25) /*  CCITT
              g.723            3-bit             ADPCM             */
              AUDIO_ENCODING_ALAW_8         (27) /*  8-bit ISDN A-law
              */
    
         All of the linear formats are signed integers,  centered  at
         zero.   Another  common linear format, 8-bit unsigned linear
         PCM, is not currently supported.  The floating-point formats
         are  signed, zero-centered, and normalized to the unit value
         ( -1.0 <= x <= 1.0 ).
    
         The sample_rate field contains the audio sampling  rate,  in
         samples  per  second.   Common  sample  rates  include 8000,
         11025, 16000, 22050, 32000, 44100,  and  48000  samples  per
         second.
    
         The channels field contains the number of  interleaved  data
         channels.  For monaural data, this value is set to one.  For
         stereo data, this value is set to two.  More than  two  data
         channels  may  be  interleaved,  but such formats may not be
         supported by all audio applications.
    
         Following the header structure is a variable-length  annota-
         tion  field.  The contents of this field are currently unde-
         fined, except that its length must be a non-zero multiple of
         eight bytes and it must be terminated with at least one null
         (zero) byte.
    
         The audio data segment  begins  on  an  eight-byte  boundary
         immediately  following  the  annotation field. Audio data is
         encoded in the format identified by  the  file  header.  The
         current  implementation  supports  only  a single audio data
         segment per file.
    
    NOTES
         Applications are encouraged NOT to decode the fields of  the
         audio  file  header  directly.  Instead, applications should
         use        the         routines         described         in
         /usr/demo/SOUND/man/man3/audio_filehdr.3 to read, write, and
         decode audio file headers.
    
         The variable-length annotation field is currently ignored by
         most  audio  applications.   It  is  present for interchange
         compatibility.  In the future,  applications  may  use  this
         field  to  store structured data annotation, such as markers
         and edit points.
    
    
    
    


    Поиск по тексту MAN-ов: 




    Партнёры:
    PostgresPro
    Inferno Solutions
    Hosting by Hoster.ru
    Хостинг:

    Закладки на сайте
    Проследить за страницей
    Created 1996-2024 by Maxim Chirkov
    Добавить, Поддержать, Вебмастеру