diff options
| author | Tim Redfern <tim@eclectronics.org> | 2014-02-17 13:36:38 +0000 |
|---|---|---|
| committer | Tim Redfern <tim@eclectronics.org> | 2014-02-17 13:36:38 +0000 |
| commit | 22e28216336da876e1fd17f380ce42eaf1446769 (patch) | |
| tree | 444dad3dc7e2656992d29f34f7bce31970c122a5 /ffmpeg/libavdevice/sndio_enc.c | |
| parent | ae5e8541f6e06e64c28719467cdf366ac57aff31 (diff) | |
chasing indexing error
Diffstat (limited to 'ffmpeg/libavdevice/sndio_enc.c')
| -rw-r--r-- | ffmpeg/libavdevice/sndio_enc.c | 92 |
1 files changed, 0 insertions, 92 deletions
diff --git a/ffmpeg/libavdevice/sndio_enc.c b/ffmpeg/libavdevice/sndio_enc.c deleted file mode 100644 index 84d070e..0000000 --- a/ffmpeg/libavdevice/sndio_enc.c +++ /dev/null @@ -1,92 +0,0 @@ -/* - * sndio play and grab interface - * Copyright (c) 2010 Jacob Meuser - * - * This file is part of FFmpeg. - * - * FFmpeg is free software; you can redistribute it and/or - * modify it under the terms of the GNU Lesser General Public - * License as published by the Free Software Foundation; either - * version 2.1 of the License, or (at your option) any later version. - * - * FFmpeg is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU - * Lesser General Public License for more details. - * - * You should have received a copy of the GNU Lesser General Public - * License along with FFmpeg; if not, write to the Free Software - * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA - */ - -#include <stdint.h> -#include <sndio.h> - -#include "avdevice.h" -#include "sndio_common.h" - -static av_cold int audio_write_header(AVFormatContext *s1) -{ - SndioData *s = s1->priv_data; - AVStream *st; - int ret; - - st = s1->streams[0]; - s->sample_rate = st->codec->sample_rate; - s->channels = st->codec->channels; - - ret = ff_sndio_open(s1, 1, s1->filename); - - return ret; -} - -static int audio_write_packet(AVFormatContext *s1, AVPacket *pkt) -{ - SndioData *s = s1->priv_data; - uint8_t *buf= pkt->data; - int size = pkt->size; - int len, ret; - - while (size > 0) { - len = FFMIN(s->buffer_size - s->buffer_offset, size); - memcpy(s->buffer + s->buffer_offset, buf, len); - buf += len; - size -= len; - s->buffer_offset += len; - if (s->buffer_offset >= s->buffer_size) { - ret = sio_write(s->hdl, s->buffer, s->buffer_size); - if (ret == 0 || sio_eof(s->hdl)) - return AVERROR(EIO); - s->softpos += ret; - s->buffer_offset = 0; - } - } - - return 0; -} - -static int audio_write_trailer(AVFormatContext *s1) -{ - SndioData *s = s1->priv_data; - - sio_write(s->hdl, s->buffer, s->buffer_offset); - - ff_sndio_close(s); - - return 0; -} - -AVOutputFormat ff_sndio_muxer = { - .name = "sndio", - .long_name = NULL_IF_CONFIG_SMALL("sndio audio playback"), - .priv_data_size = sizeof(SndioData), - /* XXX: we make the assumption that the soundcard accepts this format */ - /* XXX: find better solution with "preinit" method, needed also in - other formats */ - .audio_codec = AV_NE(AV_CODEC_ID_PCM_S16BE, AV_CODEC_ID_PCM_S16LE), - .video_codec = AV_CODEC_ID_NONE, - .write_header = audio_write_header, - .write_packet = audio_write_packet, - .write_trailer = audio_write_trailer, - .flags = AVFMT_NOFILE, -}; |
