summaryrefslogtreecommitdiffstats
path: root/libao2/ao_mpegpes.c
diff options
context:
space:
mode:
authoranders <anders@b3059339-0415-0410-9bf9-f77b7e298cf2>2001-11-24 05:21:22 +0000
committeranders <anders@b3059339-0415-0410-9bf9-f77b7e298cf2>2001-11-24 05:21:22 +0000
commit242aa6ebd4061b1b2b3651cc0887083206932a7d (patch)
tree507fde939a2c58eb0f0317aecf3c1e637aedd163 /libao2/ao_mpegpes.c
parentbecadec644aa84b399c9b1dbacfcdd486b45fd32 (diff)
downloadmpv-242aa6ebd4061b1b2b3651cc0887083206932a7d.tar.bz2
mpv-242aa6ebd4061b1b2b3651cc0887083206932a7d.tar.xz
interface to libao2 changed ao_plugin added
git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@3096 b3059339-0415-0410-9bf9-f77b7e298cf2
Diffstat (limited to 'libao2/ao_mpegpes.c')
-rw-r--r--libao2/ao_mpegpes.c27
1 files changed, 10 insertions, 17 deletions
diff --git a/libao2/ao_mpegpes.c b/libao2/ao_mpegpes.c
index a26811a018..598db3673b 100644
--- a/libao2/ao_mpegpes.c
+++ b/libao2/ao_mpegpes.c
@@ -16,13 +16,6 @@ static ao_info_t info =
LIBAO_EXTERN(mpegpes)
-// there are some globals:
-// ao_samplerate
-// ao_channels
-// ao_format
-// ao_bps
-// ao_outburst
-// ao_buffersize
// to set/get/query special features/parameters
static int control(int cmd,int arg){
@@ -33,8 +26,8 @@ static int control(int cmd,int arg){
// return: 1=success 0=fail
static int init(int rate,int channels,int format,int flags){
- ao_outburst=2000;
- ao_format=format;
+ ao_data.outburst=2000;
+ ao_data.format=format;
return 1;
}
@@ -67,10 +60,10 @@ extern int vo_pts;
// return: how many bytes can be played without blocking
static int get_space(){
- float x=(float)(vo_pts-ao_pts)/90000.0-0.5;
+ float x=(float)(vo_pts-ao_data.pts)/90000.0-0.5;
int y;
if(x<=0) return 0;
- y=48000*4*x;y/=ao_outburst;y*=ao_outburst;
+ y=48000*4*x;y/=ao_data.outburst;y*=ao_data.outburst;
// printf("diff: %5.3f -> %d \n",x,y);
return y;
}
@@ -79,20 +72,20 @@ static int get_space(){
// it should round it down to outburst*n
// return: number of bytes played
static int play(void* data,int len,int flags){
- if(ao_format==AFMT_MPEG)
- send_pes_packet(data,len,0x1C0,ao_pts);
+ if(ao_data.format==AFMT_MPEG)
+ send_pes_packet(data,len,0x1C0,ao_data.pts);
else {
int i;
unsigned short *s=data;
for(i=0;i<len/2;i++) s[i]=(s[i]>>8)|(s[i]<<8); // le<->be
- send_lpcm_packet(data,len,0xA0,ao_pts);
+ send_lpcm_packet(data,len,0xA0,ao_data.pts);
}
return len;
}
-// return: how many unplayed bytes are in the buffer
-static int get_delay(){
+// return: delay in seconds between first and last sample in buffer
+static float get_delay(){
- return 0;
+ return 0.0;
}