Help - Search - Members - Calendar
Full Version: OGG Recording Unexpectedly Stops
Hydrogenaudio Forums > Lossy Audio Compression > Ogg Vorbis > Ogg Vorbis - General
doug4
I'm trying to create speech recordings that are at least 24 hours in length. When the recording length reaches 6 hours 45 minutes and 41 seconds (6:45:41) the recording stops without any error messages. My program creates 4 stereo ogg files. Each file is about 75 megabytes. I have plenty of free disk space. I'm recording from microphone inputs with the following command:

oggenc2.exe --quiet --raw --raw-bits=16 --raw-chan=2 --raw-rate=44100 --quality 0 --resample 14000 --date="2006-05-11" --title="test1" --tracknum="2" - --output="c:\temp\test1.ogg"

I'm using oggenc2.exe (v2.82 libvorbis 1.1.2 03/31/2006 03:47 PM).

Any ideas as to why the recordings stop after 6 hours 45 minutes and 41 seconds? Is there a way to make the ogg recordings longer than this?

Thanks for your help,
doug4
[JAZ]
Maths:
(44100*2*16) * ((6*3600)+(45*60)+41) = 4293752400

2^32 = 4294967296

Explanation in plain english:
The number of (virtual) samples that the input audio has, is about the max number of bytes that can be represented in 32 bits. (Actually, you should get 47 seconds, not 41)

I'm quite sure the encoder "crashes", and that's why it stops.

A quick solution would be trying to use a different input samplerate/bitrate/channels instead of making the encoder to resample the input.

Of course, this error is just in the frontend (the comandline encoder) , it doesn't have to do with the codec per se (well.. i think so. I am not 100% sure).
If this is the case, it could be tried to use 64bits for this supposed byte counter, but that might decrease speed of encoding to a small percentage.
AndyH-ha
It is unlikely there is any reason for speech to be two channels. If the reason suggested is correct, mono would double the possible length. Now you are up to more than 12 hours.

If the input sample rate could be set to 22050Hz, audio quality for speech would not deteriorate. That should double the possible length relative to 44100Hz. Now you are up to more than 24 hours.
yandexx
I remember I was converting two hour DTS track to Vorbis using foobar2000. After encoding 1,5 hours, v0.8.3 just errored to console, while v0.9 gave an error number, it was 109, which stands for ERROR_BROKEN_PIPE. 3072kbps x 1,5 hour = 2 Gb. And so I guess win console can't input more that 2 Gb through stdin.
john33
Actually, with RAW input, the nominal file length limit doesn't apply. The crash, which is what I think it is, is probably occuring as the counters for bytes read and written are 'long's. I'll change this to unsigned 64bit ints for some testing. I'll post again when there is something to test, but right now the English F.A. Cup Final is about to start!! wink.gif
john33
QUOTE(doug4 @ May 11 2006, 21:35) *

I'm trying to create speech recordings that are at least 24 hours in length. When the recording length reaches 6 hours 45 minutes and 41 seconds (6:45:41) the recording stops without any error messages. My program creates 4 stereo ogg files. Each file is about 75 megabytes. I have plenty of free disk space. I'm recording from microphone inputs with the following command:

oggenc2.exe --quiet --raw --raw-bits=16 --raw-chan=2 --raw-rate=44100 --quality 0 --resample 14000 --date="2006-05-11" --title="test1" --tracknum="2" - --output="c:\temp\test1.ogg"

I'm using oggenc2.exe (v2.82 libvorbis 1.1.2 03/31/2006 03:47 PM).

Any ideas as to why the recordings stop after 6 hours 45 minutes and 41 seconds? Is there a way to make the ogg recordings longer than this?

Thanks for your help,
doug4

OK, I've produced a P3 compile that uses unsigned 64 bit ints for the counters for bytes read and written that I think will fix the RAW input issue of large file sizes. If you, or anyone else, would like to test this, it is available here: http://homepage.ntlworld.com/jfe1205/oggenc_test.zip
This change does not affect standard wave file input. This uses the standard 1.1.2 libs.

If anyone is brave enough to test this, I'd appreciate feedback wink.gif one way or the other.
doug4
QUOTE(AndyH-ha @ May 12 2006, 14:04) *

It is unlikely there is any reason for speech to be two channels. If the reason suggested is correct, mono would double the possible length. Now you are up to more than 12 hours.

If the input sample rate could be set to 22050Hz, audio quality for speech would not deteriorate. That should double the possible length relative to 44100Hz. Now you are up to more than 24 hours.


I'm using the Terratec Phase 88 sound card. It has 8 channels, but the WDM drivers do not give me 8 different devices, only 4 devices but each device is stereo. So if I want to record more than 4 channels at a time, I have to record in stereo. I don't have access to the sound card right now, but I think my only two options are 48khz and 44.1khz so that's why I use the resample rate to keep the file sizes small. I'll check on that next week.

Thanks for your help. Hopefully I can try john33's oggenc2 test next week.

-doug4
AndyH-ha
This stereo file limitation may be a necesary complication of some other aspect of what you want to accomplish, but it is not an intrinsic necessity of the equipment. I can't directly separate the stereo pair into two separate files (as they are being recorded) in CoolEdit, but I can select 'mono' for the file I want to create. This results in the left channel being recorded and the right channel being ignored. File size is there-by halved.

In n-Track Studio I can tell the program to create two separate files from the stereo, pair but I don't think I can tell it to ignore one channel and just record mono, as I can in CoolEdit. But, in this case the two files contents don't have to have anything at all to do with each other, they just record whatever is stuck into the input.

If you need four simultaneous channels, it is possible to use just two of the stereo pairs to create four mono recordings. How easy that is to do, and still get your ultimate result, depends on the software you are using. Since I don't know that, and have no familiarity with the compression stuff you are doing, I can't make more specific suggestions.
doug4
QUOTE(john33 @ May 13 2006, 13:30) *

QUOTE(doug4 @ May 11 2006, 21:35) *

I'm trying to create speech recordings that are at least 24 hours in length. When the recording length reaches 6 hours 45 minutes and 41 seconds (6:45:41) the recording stops without any error messages. My program creates 4 stereo ogg files. Each file is about 75 megabytes. I have plenty of free disk space. I'm recording from microphone inputs with the following command:

oggenc2.exe --quiet --raw --raw-bits=16 --raw-chan=2 --raw-rate=44100 --quality 0 --resample 14000 --date="2006-05-11" --title="test1" --tracknum="2" - --output="c:\temp\test1.ogg"

I'm using oggenc2.exe (v2.82 libvorbis 1.1.2 03/31/2006 03:47 PM).

Any ideas as to why the recordings stop after 6 hours 45 minutes and 41 seconds? Is there a way to make the ogg recordings longer than this?

Thanks for your help,
doug4

OK, I've produced a P3 compile that uses unsigned 64 bit ints for the counters for bytes read and written that I think will fix the RAW input issue of large file sizes. If you, or anyone else, would like to test this, it is available here: http://homepage.ntlworld.com/jfe1205/oggenc_test.zip
This change does not affect standard wave file input. This uses the standard 1.1.2 libs.

If anyone is brave enough to test this, I'd appreciate feedback wink.gif one way or the other.


I downloaded oggenc_test.zip and tried it but unfortunately it still stops at 6:45:40 or 6:45:41. Any other ideas or suggestions?

I really appreciate your help.
- doug4
john33
QUOTE(doug4 @ May 25 2006, 13:46) *

.....Any other ideas or suggestions?

Hmm, not at the moment, but leave it with me.
This is a "lo-fi" version of our main content. To view the full version with more information, formatting and images, please click here.
Invision Power Board © 2001-2008 Invision Power Services, Inc.