diff -Nru guvcview-1.7.3+ubuntu1~saucy~ppa1+1130/debian/bzr-builder.manifest guvcview-1.7.3+ubuntu1~saucy~ppa1+1132/debian/bzr-builder.manifest --- guvcview-1.7.3+ubuntu1~saucy~ppa1+1130/debian/bzr-builder.manifest 2014-03-18 15:17:30.000000000 +0000 +++ guvcview-1.7.3+ubuntu1~saucy~ppa1+1132/debian/bzr-builder.manifest 2014-03-20 22:07:35.000000000 +0000 @@ -1,3 +1,3 @@ -# bzr-builder format 0.3 deb-version {debupstream}+1130-0ubuntu0~201403181517 -lp:guvcview revid:git-v1:ccbc42cc5f8a070cc1c567a6d15a9649d756e269 +# bzr-builder format 0.3 deb-version {debupstream}+1132-0ubuntu0~201403202207 +lp:guvcview revid:git-v1:ea82de0ce67eb4d03cccbd75efaaa51109af6959 nest-part packaging lp:~pj-assis/guvcview/debian debian debian revid:paulo@cm-lagos.pt-20140307164118-eg68tmzjzb01fsa4 diff -Nru guvcview-1.7.3+ubuntu1~saucy~ppa1+1130/debian/changelog guvcview-1.7.3+ubuntu1~saucy~ppa1+1132/debian/changelog --- guvcview-1.7.3+ubuntu1~saucy~ppa1+1130/debian/changelog 2014-03-18 15:17:30.000000000 +0000 +++ guvcview-1.7.3+ubuntu1~saucy~ppa1+1132/debian/changelog 2014-03-20 22:07:35.000000000 +0000 @@ -1,8 +1,8 @@ -guvcview (1.7.3+ubuntu1~saucy~ppa1+1130-0ubuntu0~201403181517~ubuntu13.10.1) saucy; urgency=low +guvcview (1.7.3+ubuntu1~saucy~ppa1+1132-0ubuntu0~201403202207~ubuntu13.10.1) saucy; urgency=low * Auto build. - -- Paulo Assis Tue, 18 Mar 2014 15:17:30 +0000 + -- Paulo Assis Thu, 20 Mar 2014 22:07:35 +0000 guvcview (1.7.3+ubuntu1~saucy~ppa1) saucy; urgency=low diff -Nru guvcview-1.7.3+ubuntu1~saucy~ppa1+1130/src/acodecs.c guvcview-1.7.3+ubuntu1~saucy~ppa1+1132/src/acodecs.c --- guvcview-1.7.3+ubuntu1~saucy~ppa1+1130/src/acodecs.c 2014-03-18 15:17:27.000000000 +0000 +++ guvcview-1.7.3+ubuntu1~saucy~ppa1+1132/src/acodecs.c 2014-03-20 22:07:33.000000000 +0000 @@ -543,10 +543,19 @@ if(pdata->lavc_data) { - if(pdata->lavc_data->codec_context->sample_fmt == AV_SAMPLE_FMT_FLT) - framesize= encode_lavc_audio_frame (pdata->float_sndBuff, pdata->lavc_data, videoF); - else - framesize= encode_lavc_audio_frame (pdata->pcm_sndBuff, pdata->lavc_data, videoF); + switch(pdata->lavc_data->codec_context->sample_fmt) + { + case AV_SAMPLE_FMT_S16: + case AV_SAMPLE_FMT_S16P: + framesize= encode_lavc_audio_frame (pdata->pcm_sndBuff, pdata->lavc_data, videoF); + break; + + default: + case AV_SAMPLE_FMT_FLT: + case AV_SAMPLE_FMT_FLTP: + framesize= encode_lavc_audio_frame (pdata->float_sndBuff, pdata->lavc_data, videoF); + break; + } ret = write_audio_data (all_data, pdata->lavc_data->outbuf, framesize, pdata->audio_buff[pdata->br_ind][pdata->r_ind].time_stamp); } @@ -569,11 +578,13 @@ int size = 0; BYTE *audio_data = NULL; + SampleConverter(pdata); /*convert from float sample to codec format*/ + int sample_fmt = AV_SAMPLE_FMT_FLT; if(pdata->lavc_data) sample_fmt = pdata->lavc_data->codec_context->sample_fmt; - + switch(sample_fmt) { case AV_SAMPLE_FMT_S16: @@ -589,8 +600,7 @@ audio_data = (BYTE *) pdata->float_sndBuff; break; } - - SampleConverter(pdata); /*convert from float sample to codec format*/ + ret = write_audio_data (all_data, audio_data, size, pdata->audio_buff[pdata->br_ind][pdata->r_ind].time_stamp); break; } diff -Nru guvcview-1.7.3+ubuntu1~saucy~ppa1+1130/src/sound.c guvcview-1.7.3+ubuntu1~saucy~ppa1+1132/src/sound.c --- guvcview-1.7.3+ubuntu1~saucy~ppa1+1130/src/sound.c 2014-03-18 15:17:27.000000000 +0000 +++ guvcview-1.7.3+ubuntu1~saucy~ppa1+1132/src/sound.c 2014-03-20 22:07:33.000000000 +0000 @@ -316,14 +316,14 @@ case PA_FOURCC: { pdata->aud_numSamples = MPG_NUM_SAMP * pdata->channels; - //outbuffer size in bytes (max value is for pcm 2 bytes per sample) - pdata->outbuf_size = pdata->aud_numSamples * 2; //a good value is 240000; + //outbuffer size in bytes (max value is for float pcm 4 bytes per sample) + pdata->outbuf_size = pdata->aud_numSamples * 4; //a good value is 240000; break; } default: { - //outbuffer size in bytes (max value is for pcm 2 bytes per sample) - pdata->outbuf_size = MPG_NUM_SAMP * pdata->channels * 2; //a good value is 240000; + //outbuffer size in bytes (max value is for float pcm 4 bytes per sample) + pdata->outbuf_size = MPG_NUM_SAMP * pdata->channels * 4; //a good value is 240000; /*initialize lavc data*/ if(!(pdata->lavc_data)) @@ -375,8 +375,10 @@ pdata->br_ind = 0; pdata->blast_ind = 0; pdata->last_ind = 0; - /*buffer for video PCM 16 bits*/ + /*buffer for audio PCM 16 bits*/ pdata->pcm_sndBuff=NULL; + /*buffer for audio float PCM 32 bits*/ + pdata->float_sndBuff=NULL; /*set audio device id to use (portaudio)*/ @@ -507,6 +509,8 @@ } if(pdata->pcm_sndBuff) g_free(pdata->pcm_sndBuff); pdata->pcm_sndBuff = NULL; + if(pdata->float_sndBuff) g_free(pdata->float_sndBuff); + pdata->float_sndBuff = NULL; __UNLOCK_MUTEX(__AMUTEX); return (err); @@ -522,7 +526,7 @@ void SampleConverter (struct paRecordData* pdata) { - int sample_fmt = AV_SAMPLE_FMT_S16; + int sample_fmt = AV_SAMPLE_FMT_FLT; if(pdata->lavc_data) sample_fmt = pdata->lavc_data->codec_context->sample_fmt; @@ -533,7 +537,7 @@ { if(!(pdata->float_sndBuff)) pdata->float_sndBuff = g_new0(float, pdata->aud_numSamples); - + int samp = 0; for(samp=0; samp < pdata->aud_numSamples; samp++)