<?xml version="1.0" encoding="utf-8"?>
<feed xmlns="http://www.w3.org/2005/Atom">
	<id>tag:old.nabble.com,2006:forum-465</id>
	<title>Nabble - cdparanoia</title>
	<updated>2009-12-11T12:07:44Z</updated>
	<link rel="self" type="application/atom+xml" href="http://old.nabble.com/cdparanoia-f465.xml" />
	<link rel="alternate" type="text/html" href="http://old.nabble.com/cdparanoia-f465.html" />
	<subtitle type="html">Cdparanoia is a Compact Disc Digital Audio (CDDA) extraction tool, commonly known on the net as a 'ripper'. The application is built on top of the Paranoia library, which is doing the real work (the Paranoia source is included in the cdparanoia source distribution). Like the original cdda2wav, cdparanoia package reads audio from the CDROM directly as data, with no analog step between, and writes the data to a file or pipe in WAV, AIFC or raw 16 bit linear PCM. cdparanoia home is &lt;a href=&quot;http://www.xiph.org/paranoia/&quot; rel=&quot;nofollow&quot; target=&quot;_top&quot;&gt;here&lt;/a&gt;</subtitle>
	
<entry>
	<id>tag:old.nabble.com,2006:post-26750758</id>
	<title>Re: Are patches welcome?</title>
	<published>2009-12-11T12:07:44Z</published>
	<updated>2009-12-11T12:07:44Z</updated>
	<author>
		<name>xiphmont</name>
	</author>
	<content type="html">&amp;gt; I hope that you don't mind if I send you links for our tree instead of
&lt;br&gt;&amp;gt; sending
&lt;br&gt;&amp;gt; some patches that may be large for e-mails. If you would prefer some other
&lt;br&gt;&amp;gt; address to send them to, please let me know.
&lt;br&gt;&lt;br&gt;I strongly prefer having patches, along with descriptions of what the
&lt;br&gt;patches do. &amp;nbsp;It saves me the work of filtering irrelevant
&lt;br&gt;inconsistencies between the source trees, as well as forces the
&lt;br&gt;submitter to do a little additional review before submission :-)
&lt;br&gt;&lt;br&gt;I understand patches are not of interest to the entire list; feel free
&lt;br&gt;to mail them to me directly (&lt;a href=&quot;http://old.nabble.com/user/SendEmail.jtp?type=post&amp;post=26750758&amp;i=0&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;monty@...&lt;/a&gt; or &lt;a href=&quot;http://old.nabble.com/user/SendEmail.jtp?type=post&amp;post=26750758&amp;i=1&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;xiphmont@...&lt;/a&gt;).
&lt;br&gt;&lt;br&gt;Thank you!
&lt;br&gt;Monty
&lt;br&gt;_______________________________________________
&lt;br&gt;Paranoia-dev mailing list
&lt;br&gt;&lt;a href=&quot;http://old.nabble.com/user/SendEmail.jtp?type=post&amp;post=26750758&amp;i=2&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;Paranoia-dev@...&lt;/a&gt;
&lt;br&gt;&lt;a href=&quot;http://lists.xiph.org/mailman/listinfo/paranoia-dev&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;http://lists.xiph.org/mailman/listinfo/paranoia-dev&lt;/a&gt;&lt;br&gt;&lt;p&gt;From forum: &lt;a href=&quot;http://old.nabble.com/Cd-Paranoia---Dev-f467.html&quot; embed=&quot;fixTarget[467]&quot; target=&quot;_top&quot; &gt;Cd-Paranoia - Dev&lt;/a&gt;&lt;/p&gt;</content>
	<link rel="alternate" type="text/html" href="http://old.nabble.com/Are-patches-welcome--tp26678149p26750758.html" />
</entry>

<entry>
	<id>tag:old.nabble.com,2006:post-26740429</id>
	<title>[patch] cdparanoia sample offset inconsistency</title>
	<published>2009-12-11T00:31:40Z</published>
	<updated>2009-12-11T00:31:40Z</updated>
	<author>
		<name>Eric Lesage</name>
	</author>
	<content type="html">Hello,
&lt;br&gt;&lt;br&gt;Apologies if this is a duplicate. I've sent a previous version to the list 
&lt;br&gt;but it appears it did not get through. The version of the patch included 
&lt;br&gt;herein is better anyway.
&lt;br&gt;&lt;br&gt;I've encountered a problem when using the -O (--sample-offset) option. 
&lt;br&gt;Currently, the code checks whether the specified offset is more than 588 
&lt;br&gt;samples, and if so biases the sectors in the (internal) TOC so that the 
&lt;br&gt;offset becomes less than 588.
&lt;br&gt;&lt;br&gt;However, this creates an inconsistency when the span is analyzed: the span 
&lt;br&gt;might both refer to (corrected) values from the TOC (e.g. end of disk) and 
&lt;br&gt;uncorrected values (e.g. absolute sector positions).
&lt;br&gt;&lt;br&gt;E.g.: [.2000]- (read from sector 2000 to end of disk).
&lt;br&gt;&lt;br&gt;The included patch fixes this by adding the offset in sectors specified 
&lt;br&gt;using absolute positions.
&lt;br&gt;&lt;br&gt;Best regards,
&lt;br&gt;&lt;br&gt;-- 
&lt;br&gt;Eric Lesage&lt;br /&gt;Index: interface/cdda_interface.h
&lt;br&gt;===================================================================
&lt;br&gt;--- interface/cdda_interface.h	(revision 16745)
&lt;br&gt;+++ interface/cdda_interface.h	(working copy)
&lt;br&gt;@@ -66,6 +66,8 @@
&lt;br&gt;&amp;nbsp; &amp;nbsp;long audio_first_sector;
&lt;br&gt;&amp;nbsp; &amp;nbsp;long audio_last_sector;
&lt;br&gt;&amp;nbsp;
&lt;br&gt;+ &amp;nbsp;long manual_sector_offset; /* Offset in sectors specified by user with -O */
&lt;br&gt;+
&lt;br&gt;&amp;nbsp; &amp;nbsp;int errordest;
&lt;br&gt;&amp;nbsp; &amp;nbsp;int messagedest;
&lt;br&gt;&amp;nbsp; &amp;nbsp;char *errorbuf;
&lt;br&gt;Index: interface/toc.c
&lt;br&gt;===================================================================
&lt;br&gt;--- interface/toc.c	(revision 16745)
&lt;br&gt;+++ interface/toc.c	(working copy)
&lt;br&gt;@@ -23,7 +23,9 @@
&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;return(-401);
&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp;}
&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp;else {
&lt;br&gt;- &amp;nbsp; &amp;nbsp; &amp;nbsp;return 0; /* pre-gap of first track always starts at lba 0 */
&lt;br&gt;+ &amp;nbsp; &amp;nbsp; &amp;nbsp;return d-&amp;gt;manual_sector_offset; /* pre-gap of first track always starts
&lt;br&gt;+	 &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; * at lba 0 (but we need to account for
&lt;br&gt;+				 &amp;nbsp; &amp;nbsp; &amp;nbsp; * manual correction) */
&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp;}
&lt;br&gt;&amp;nbsp; &amp;nbsp;}
&lt;br&gt;&amp;nbsp;
&lt;br&gt;@@ -45,7 +47,7 @@
&lt;br&gt;&amp;nbsp; &amp;nbsp;for(i=0;i&amp;lt;d-&amp;gt;tracks;i++)
&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp;if(cdda_track_audiop(d,i+1)==1) {
&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;if (i == 0) /* disc starts at lba 0 if first track is an audio track */
&lt;br&gt;- &amp;nbsp; &amp;nbsp; &amp;nbsp; return 0;
&lt;br&gt;+ &amp;nbsp; &amp;nbsp; &amp;nbsp; return d-&amp;gt;manual_sector_offset; /* account for manual correction */
&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;else
&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; return(cdda_track_firstsector(d,i+1));
&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp;}
&lt;br&gt;Index: main.c
&lt;br&gt;===================================================================
&lt;br&gt;--- main.c	(revision 16745)
&lt;br&gt;+++ main.c	(working copy)
&lt;br&gt;@@ -1087,6 +1087,9 @@
&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp;}
&lt;br&gt;&amp;nbsp; &amp;nbsp;}
&lt;br&gt;&amp;nbsp;
&lt;br&gt;+ &amp;nbsp;/* Save it to report correct offsets later. */
&lt;br&gt;+ &amp;nbsp;d-&amp;gt;manual_sector_offset = toc_offset;
&lt;br&gt;+
&lt;br&gt;&amp;nbsp; &amp;nbsp;if(toc_bias){
&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp;toc_offset=-cdda_track_firstsector(d,1);
&lt;br&gt;&amp;nbsp; &amp;nbsp;}
&lt;br&gt;&lt;br /&gt;_______________________________________________
&lt;br&gt;Paranoia-dev mailing list
&lt;br&gt;&lt;a href=&quot;http://old.nabble.com/user/SendEmail.jtp?type=post&amp;post=26740429&amp;i=0&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;Paranoia-dev@...&lt;/a&gt;
&lt;br&gt;&lt;a href=&quot;http://lists.xiph.org/mailman/listinfo/paranoia-dev&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;http://lists.xiph.org/mailman/listinfo/paranoia-dev&lt;/a&gt;&lt;br&gt;&lt;p&gt;From forum: &lt;a href=&quot;http://old.nabble.com/Cd-Paranoia---Dev-f467.html&quot; embed=&quot;fixTarget[467]&quot; target=&quot;_top&quot; &gt;Cd-Paranoia - Dev&lt;/a&gt;&lt;/p&gt;</content>
	<link rel="alternate" type="text/html" href="http://old.nabble.com/-patch--cdparanoia-sample-offset-inconsistency-tp26740429p26740429.html" />
</entry>

<entry>
	<id>tag:old.nabble.com,2006:post-26720338</id>
	<title>Re: Are patches welcome?</title>
	<published>2009-12-09T16:29:09Z</published>
	<updated>2009-12-09T16:29:09Z</updated>
	<author>
		<name>Rogério Brito-2</name>
	</author>
	<content type="html">Hi, Monty.
&lt;br&gt;&lt;br&gt;On 12/09/2009 08:25 PM, &lt;a href=&quot;http://old.nabble.com/user/SendEmail.jtp?type=post&amp;post=26720338&amp;i=0&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;xiphmont@...&lt;/a&gt; wrote:
&lt;br&gt;&amp;gt; I'm happy to review all patches and there are certainly minor faults
&lt;br&gt;&amp;gt; in the current release I need to review for a new release anyway.
&lt;br&gt;&amp;gt; This is a good time to send patches in! &amp;nbsp;If I don't accept them for
&lt;br&gt;&amp;gt; one reason or another, I'll give feedback why.
&lt;br&gt;&lt;br&gt;Thank you so very much for your kindness to accept comments from outsiders.
&lt;br&gt;&lt;br&gt;I hope that you don't mind if I send you links for our tree instead of sending
&lt;br&gt;some patches that may be large for e-mails. If you would prefer some other
&lt;br&gt;address to send them to, please let me know.
&lt;br&gt;&lt;br&gt;(I'm still a rookie with git).
&lt;br&gt;&lt;br&gt;&amp;gt; I'm not fussy about indent or style in patches as I carefully review
&lt;br&gt;&amp;gt; and hand apply in any case. &amp;nbsp;Don't worry about nitpicky details, I'm
&lt;br&gt;&amp;gt; more interested in what they do and how they do it.
&lt;br&gt;&lt;br&gt;Thank you very much.
&lt;br&gt;&lt;br&gt;Rogério Brito.
&lt;br&gt;&lt;br&gt;-- 
&lt;br&gt;Rogério Brito : rbrito@{ime.usp.br,gmail.com} : GPG key 1024D/7C2CAEB8
&lt;br&gt;&lt;a href=&quot;http://rb.doesntexist.org&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;http://rb.doesntexist.org&lt;/a&gt;&amp;nbsp;: Packages for LaTeX : algorithms.berlios.de
&lt;br&gt;DebianQA: &lt;a href=&quot;http://qa.debian.org/developer.php?login=rbrito%40ime.usp.br&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;http://qa.debian.org/developer.php?login=rbrito%40ime.usp.br&lt;/a&gt;&lt;br&gt;&lt;br&gt;_______________________________________________
&lt;br&gt;Paranoia-dev mailing list
&lt;br&gt;&lt;a href=&quot;http://old.nabble.com/user/SendEmail.jtp?type=post&amp;post=26720338&amp;i=1&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;Paranoia-dev@...&lt;/a&gt;
&lt;br&gt;&lt;a href=&quot;http://lists.xiph.org/mailman/listinfo/paranoia-dev&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;http://lists.xiph.org/mailman/listinfo/paranoia-dev&lt;/a&gt;&lt;br&gt;&lt;p&gt;From forum: &lt;a href=&quot;http://old.nabble.com/Cd-Paranoia---Dev-f467.html&quot; embed=&quot;fixTarget[467]&quot; target=&quot;_top&quot; &gt;Cd-Paranoia - Dev&lt;/a&gt;&lt;/p&gt;</content>
	<link rel="alternate" type="text/html" href="http://old.nabble.com/Are-patches-welcome--tp26678149p26720338.html" />
</entry>

<entry>
	<id>tag:old.nabble.com,2006:post-26718870</id>
	<title>Re: Are patches welcome?</title>
	<published>2009-12-09T14:25:48Z</published>
	<updated>2009-12-09T14:25:48Z</updated>
	<author>
		<name>xiphmont</name>
	</author>
	<content type="html">I'm happy to review all patches and there are certainly minor faults
&lt;br&gt;in the current release I need to review for a new release anyway.
&lt;br&gt;This is a good time to send patches in! &amp;nbsp;If I don't accept them for
&lt;br&gt;one reason or another, I'll give feedback why.
&lt;br&gt;&lt;br&gt;I'm not fussy about indent or style in patches as I carefully review
&lt;br&gt;and hand apply in any case. &amp;nbsp;Don't worry about nitpicky details, I'm
&lt;br&gt;more interested in what they do and how they do it.
&lt;br&gt;&lt;br&gt;Monty
&lt;br&gt;_______________________________________________
&lt;br&gt;Paranoia-dev mailing list
&lt;br&gt;&lt;a href=&quot;http://old.nabble.com/user/SendEmail.jtp?type=post&amp;post=26718870&amp;i=0&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;Paranoia-dev@...&lt;/a&gt;
&lt;br&gt;&lt;a href=&quot;http://lists.xiph.org/mailman/listinfo/paranoia-dev&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;http://lists.xiph.org/mailman/listinfo/paranoia-dev&lt;/a&gt;&lt;br&gt;&lt;p&gt;From forum: &lt;a href=&quot;http://old.nabble.com/Cd-Paranoia---Dev-f467.html&quot; embed=&quot;fixTarget[467]&quot; target=&quot;_top&quot; &gt;Cd-Paranoia - Dev&lt;/a&gt;&lt;/p&gt;</content>
	<link rel="alternate" type="text/html" href="http://old.nabble.com/Are-patches-welcome--tp26678149p26718870.html" />
</entry>

<entry>
	<id>tag:old.nabble.com,2006:post-26678149</id>
	<title>Are patches welcome?</title>
	<published>2009-12-07T06:36:24Z</published>
	<updated>2009-12-07T06:36:24Z</updated>
	<author>
		<name>Rogério Brito-2</name>
	</author>
	<content type="html">Hi, all.
&lt;br&gt;&lt;br&gt;Are patches welcome in the upstream cdparanoia project?
&lt;br&gt;&lt;br&gt;I am part of the Optical Media tools in Debian, together with Takaki
&lt;br&gt;Taniguchi, taking care of the packaging of some tools, of which
&lt;br&gt;cdparanoia is part.
&lt;br&gt;&lt;br&gt;We have some patches in our tree and it would be desireable to have as
&lt;br&gt;little difference with you as possible. Some patches seem to be quite
&lt;br&gt;trivial (like spelling errors), while others are less trivial.
&lt;br&gt;&lt;br&gt;So, would you like to get the patches that we have? I just checked and
&lt;br&gt;some of them do apply to the SVN repo as of this exact moment.
&lt;br&gt;&lt;br&gt;&lt;br&gt;Thanks in advance, Rogério Brito.
&lt;br&gt;&lt;br&gt;-- 
&lt;br&gt;Rogério Brito : rbrito@{ime.usp.br,gmail.com} : GPG key 1024D/7C2CAEB8
&lt;br&gt;&lt;a href=&quot;http://rb.doesntexist.org&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;http://rb.doesntexist.org&lt;/a&gt;&amp;nbsp;: Packages for LaTeX : algorithms.berlios.de
&lt;br&gt;DebianQA: &lt;a href=&quot;http://qa.debian.org/developer.php?login=rbrito%40ime.usp.br&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;http://qa.debian.org/developer.php?login=rbrito%40ime.usp.br&lt;/a&gt;&lt;br&gt;_______________________________________________
&lt;br&gt;Paranoia-dev mailing list
&lt;br&gt;&lt;a href=&quot;http://old.nabble.com/user/SendEmail.jtp?type=post&amp;post=26678149&amp;i=0&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;Paranoia-dev@...&lt;/a&gt;
&lt;br&gt;&lt;a href=&quot;http://lists.xiph.org/mailman/listinfo/paranoia-dev&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;http://lists.xiph.org/mailman/listinfo/paranoia-dev&lt;/a&gt;&lt;br&gt;&lt;p&gt;From forum: &lt;a href=&quot;http://old.nabble.com/Cd-Paranoia---Dev-f467.html&quot; embed=&quot;fixTarget[467]&quot; target=&quot;_top&quot; &gt;Cd-Paranoia - Dev&lt;/a&gt;&lt;/p&gt;</content>
	<link rel="alternate" type="text/html" href="http://old.nabble.com/Are-patches-welcome--tp26678149p26678149.html" />
</entry>

<entry>
	<id>tag:old.nabble.com,2006:post-25732701</id>
	<title>Patch for original XBOX drives</title>
	<published>2009-10-03T14:02:42Z</published>
	<updated>2009-10-03T14:02:42Z</updated>
	<author>
		<name>Russell Salerno</name>
	</author>
	<content type="html">Hello all,
&lt;br&gt;&lt;br&gt;I'm on a mission to get cdparanoia to work on original XBoxes (not
&lt;br&gt;360) fitted with Philips and/or Thompson DVD drives. &amp;nbsp;In sum, the
&lt;br&gt;original XBox came fitted with either a Thompson, Philips, or Samsung
&lt;br&gt;DVD drive. &amp;nbsp;Cdparanoia recognizes and works with the XBox Samsung
&lt;br&gt;drive, but not the Philips and/or Thompson drives because they do not
&lt;br&gt;identify themselves as having CD ripping capabilities. &amp;nbsp;I tried
&lt;br&gt;patching the release 10pre0 (which is the installed version on my xDSL
&lt;br&gt;box) with Michael Steil's patch but it did not make any difference.
&lt;br&gt;See, e.g., &lt;a href=&quot;http://lists.xiph.org/pipermail/paranoia-dev/2003-August/000125.html&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;http://lists.xiph.org/pipermail/paranoia-dev/2003-August/000125.html&lt;/a&gt;&lt;br&gt;&lt;br&gt;Ultimately I'd like to add an option e.g., -xbox philips or -xbox
&lt;br&gt;thompson that will force cdparanoia to skip any drive capability tests
&lt;br&gt;and just rip using predetermined parameters.
&lt;br&gt;&lt;br&gt;My question to the group is where in the code should I start poking to
&lt;br&gt;implement such a patch and also, if anyone has attempted this and/or
&lt;br&gt;has any other insight into this particular area.
&lt;br&gt;&lt;br&gt;Thanks in advance,
&lt;br&gt;&lt;br&gt;Russell Salerno
&lt;br&gt;_______________________________________________
&lt;br&gt;Paranoia-dev mailing list
&lt;br&gt;&lt;a href=&quot;http://old.nabble.com/user/SendEmail.jtp?type=post&amp;post=25732701&amp;i=0&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;Paranoia-dev@...&lt;/a&gt;
&lt;br&gt;&lt;a href=&quot;http://lists.xiph.org/mailman/listinfo/paranoia-dev&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;http://lists.xiph.org/mailman/listinfo/paranoia-dev&lt;/a&gt;&lt;br&gt;&lt;p&gt;From forum: &lt;a href=&quot;http://old.nabble.com/Cd-Paranoia---Dev-f467.html&quot; embed=&quot;fixTarget[467]&quot; target=&quot;_top&quot; &gt;Cd-Paranoia - Dev&lt;/a&gt;&lt;/p&gt;</content>
	<link rel="alternate" type="text/html" href="http://old.nabble.com/Patch-for-original-XBOX-drives-tp25732701p25732701.html" />
</entry>

<entry>
	<id>tag:old.nabble.com,2006:post-25634425</id>
	<title>cdparanoia hangs on the last track when using both --sample-offset and -Z</title>
	<published>2009-09-27T08:04:50Z</published>
	<updated>2009-09-27T08:04:50Z</updated>
	<author>
		<name>Martin Thierer-2</name>
	</author>
	<content type="html">Hi,
&lt;br&gt;&lt;br&gt;I'm running cdparanoia 10.2 on gentoo linux x64.
&lt;br&gt;&lt;br&gt;When ripping the last track of an audio-cd and using both the options
&lt;br&gt;&amp;quot;--sample-offset&amp;quot; and &amp;quot;-Z&amp;quot;, cdparanoia consistently hangs at the end of
&lt;br&gt;the rip. When dropping either of these options or ripping a different
&lt;br&gt;track everything works fine. The actual sample-offset used doesn't seem
&lt;br&gt;to have an effect.
&lt;br&gt;&lt;br&gt;This happens with both of my drives. I'm using the /dev/srx interfaces.
&lt;br&gt;&lt;br&gt;When running cdparanoia with option &amp;quot;-e&amp;quot;, it keeps looping through the
&lt;br&gt;message &amp;quot;##: 6 [skip] @ 0&amp;quot;.
&lt;br&gt;&lt;br&gt;Please tell me if there's more information I could provide to help to
&lt;br&gt;debug the problem.
&lt;br&gt;&lt;br&gt;Thank you very much!
&lt;br&gt;&lt;br&gt;Martin
&lt;br&gt;_______________________________________________
&lt;br&gt;Paranoia-dev mailing list
&lt;br&gt;&lt;a href=&quot;http://old.nabble.com/user/SendEmail.jtp?type=post&amp;post=25634425&amp;i=0&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;Paranoia-dev@...&lt;/a&gt;
&lt;br&gt;&lt;a href=&quot;http://lists.xiph.org/mailman/listinfo/paranoia-dev&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;http://lists.xiph.org/mailman/listinfo/paranoia-dev&lt;/a&gt;&lt;br&gt;&lt;p&gt;From forum: &lt;a href=&quot;http://old.nabble.com/Cd-Paranoia---Dev-f467.html&quot; embed=&quot;fixTarget[467]&quot; target=&quot;_top&quot; &gt;Cd-Paranoia - Dev&lt;/a&gt;&lt;/p&gt;</content>
	<link rel="alternate" type="text/html" href="http://old.nabble.com/cdparanoia-hangs-on-the-last-track-when-using-both---sample-offset-and--Z-tp25634425p25634425.html" />
</entry>

<entry>
	<id>tag:old.nabble.com,2006:post-25417261</id>
	<title>Re: cdparanoia 10.2 crashes system during drive detect</title>
	<published>2009-09-12T11:53:25Z</published>
	<updated>2009-09-12T11:53:25Z</updated>
	<author>
		<name>Glenn Golden</name>
	</author>
	<content type="html">Hi Monty,
&lt;br&gt;&lt;br&gt;Any update on this? Anyone else reported anyting like it?
&lt;br&gt;&lt;br&gt;I'm happy to help if I can. Let me know what you'd like me to try.
&lt;br&gt;&lt;br&gt;Thanks,
&lt;br&gt;&lt;br&gt;Glenn
&lt;br&gt;&lt;br&gt;&lt;br&gt;&lt;a href=&quot;http://old.nabble.com/user/SendEmail.jtp?type=post&amp;post=25417261&amp;i=0&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;xiphmont@...&lt;/a&gt; writes:
&lt;div class='shrinkable-quote'&gt;&lt;br&gt;&amp;gt; &amp;gt; I recently attempted to upgrade from cdparanoia 9.8 (which I've been using
&lt;br&gt;&amp;gt; &amp;gt; successfully for years on a variety of systems) to 10.2. &amp;nbsp;Alas, 10.2 seems
&lt;br&gt;&amp;gt; &amp;gt; to be causing hard, 100% reproducible crashes during drive detection, even
&lt;br&gt;&amp;gt; &amp;gt; running the static binary from the xiph website.
&lt;br&gt;&amp;gt; &amp;gt;
&lt;br&gt;&amp;gt; &amp;gt; I've done my homework on the website (bug reports, &amp;quot;troubleshooting&amp;quot; section,
&lt;br&gt;&amp;gt; &amp;gt; mailing list) and googled of course, but have not seen any mention of this.
&lt;br&gt;&amp;gt; 
&lt;br&gt;&amp;gt; Ah, tripping a bug in the kernel is never fun to debug. &amp;nbsp;I have a few
&lt;br&gt;&amp;gt; guesses as to what may be going wrong, and the kernel having an
&lt;br&gt;&amp;gt; overinflated idea of what DMA transfer sizes the Thinkpad can handle
&lt;br&gt;&amp;gt; is high on the list.
&lt;br&gt;&amp;gt; 
&lt;br&gt;&amp;gt; I'm going to be doing a sweep of the various bug reports that have
&lt;br&gt;&amp;gt; come in since 10.2 for an upcoming release soon and will have a few
&lt;br&gt;&amp;gt; things for you to try if you're still there and still willing.
&lt;br&gt;&amp;gt; 
&lt;br&gt;&amp;gt; Thanks for the report! &amp;nbsp;Reports are important!
&lt;br&gt;&amp;gt; 
&lt;br&gt;&amp;gt; Monty
&lt;/div&gt;_______________________________________________
&lt;br&gt;Paranoia mailing list
&lt;br&gt;&lt;a href=&quot;http://old.nabble.com/user/SendEmail.jtp?type=post&amp;post=25417261&amp;i=1&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;Paranoia@...&lt;/a&gt;
&lt;br&gt;&lt;a href=&quot;http://lists.xiph.org/mailman/listinfo/paranoia&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;http://lists.xiph.org/mailman/listinfo/paranoia&lt;/a&gt;&lt;br&gt;&lt;p&gt;From forum: &lt;a href=&quot;http://old.nabble.com/Cd-Paranoia---General-f468.html&quot; embed=&quot;fixTarget[468]&quot; target=&quot;_top&quot; &gt;Cd-Paranoia - General&lt;/a&gt;&lt;/p&gt;</content>
	<link rel="alternate" type="text/html" href="http://old.nabble.com/cdparanoia-10.2-crashes-system-during-drive-detect-tp21235386p25417261.html" />
</entry>

<entry>
	<id>tag:old.nabble.com,2006:post-25356958</id>
	<title>Re: cdparanoia and FreeBSD kernel</title>
	<published>2009-09-08T18:20:27Z</published>
	<updated>2009-09-08T18:20:27Z</updated>
	<author>
		<name>xiphmont</name>
	</author>
	<content type="html">On Sat, Aug 29, 2009 at 4:36 PM, Petr Salinger&amp;lt;&lt;a href=&quot;http://old.nabble.com/user/SendEmail.jtp?type=post&amp;post=25356958&amp;i=0&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;Petr.Salinger@...&lt;/a&gt;&amp;gt; wrote:
&lt;br&gt;&amp;gt; Hello,
&lt;br&gt;&amp;gt;
&lt;br&gt;&amp;gt; please could you include support also for FreeBSD.
&lt;br&gt;&amp;gt;
&lt;br&gt;&amp;gt; Please take the 07-kfreebsd.patch.gz patch from
&lt;br&gt;&amp;gt; &lt;a href=&quot;http://bugs.debian.org//cgi-bin/bugreport.cgi?bug=540802&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;http://bugs.debian.org//cgi-bin/bugreport.cgi?bug=540802&lt;/a&gt;&lt;br&gt;&amp;gt;
&lt;br&gt;&amp;gt; Thanks for considering it.
&lt;br&gt;&lt;br&gt;Hi,
&lt;br&gt;&lt;br&gt;I have no way of testing it and prefer not to adopt patches I can
&lt;br&gt;neither test nor maintain. &amp;nbsp;I don't mean to discourage ports, nor
&lt;br&gt;would I object to a freebsd maintainer who was willing to contribute
&lt;br&gt;to the project by reviewing patches on an ongoing basis, or maintain
&lt;br&gt;an external port (as is down now). &amp;nbsp;But for now, any 'official'
&lt;br&gt;support of other OSes would be completely blind, and likely to break
&lt;br&gt;with every change I make without me even knowing :-(
&lt;br&gt;&lt;br&gt;Cdparanoia is very specific to a given kernel and I see no easy way of
&lt;br&gt;changing that.
&lt;br&gt;&lt;br&gt;Monty
&lt;br&gt;_______________________________________________
&lt;br&gt;Paranoia-dev mailing list
&lt;br&gt;&lt;a href=&quot;http://old.nabble.com/user/SendEmail.jtp?type=post&amp;post=25356958&amp;i=1&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;Paranoia-dev@...&lt;/a&gt;
&lt;br&gt;&lt;a href=&quot;http://lists.xiph.org/mailman/listinfo/paranoia-dev&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;http://lists.xiph.org/mailman/listinfo/paranoia-dev&lt;/a&gt;&lt;br&gt;&lt;p&gt;From forum: &lt;a href=&quot;http://old.nabble.com/Cd-Paranoia---Dev-f467.html&quot; embed=&quot;fixTarget[467]&quot; target=&quot;_top&quot; &gt;Cd-Paranoia - Dev&lt;/a&gt;&lt;/p&gt;</content>
	<link rel="alternate" type="text/html" href="http://old.nabble.com/Re%3A-cdparanoia-and-FreeBSD-kernel-tp25356958p25356958.html" />
</entry>

<entry>
	<id>tag:old.nabble.com,2006:post-24168361</id>
	<title>Re: what do the error correction settings mean???</title>
	<published>2009-06-23T08:18:17Z</published>
	<updated>2009-06-23T08:18:17Z</updated>
	<author>
		<name>Arnd-3</name>
	</author>
	<content type="html">Hi Sam,
&lt;br&gt;from a user perspective, the original command line program of cdparanoia 
&lt;br&gt;&amp;nbsp; offers 3 levels:
&lt;br&gt;&lt;br&gt;&amp;quot;full paranoia&amp;quot;, which is the default
&lt;br&gt;&amp;quot;extra paranoia disabled&amp;quot;, invoked with &amp;quot;-Y&amp;quot;
&lt;br&gt;&amp;quot;paranoia entirely disabled&amp;quot;, &amp;nbsp;invoked with &amp;quot;-Z&amp;quot;
&lt;br&gt;&lt;br&gt;If you see levels &amp;quot;0 to 3&amp;quot; you are using a front-end to cdparanoia. In 
&lt;br&gt;any case you should use the &amp;quot;full paranoia&amp;quot; setting. This is especially 
&lt;br&gt;advised for older CD-Rs, as they often need error correction.
&lt;br&gt;&lt;br&gt;You do not need to be concerned about cdparanoia filtering sound: a 
&lt;br&gt;digital ripping program does not care about the sound recorded on the 
&lt;br&gt;CD, only about extracting a correct digital copy. In other words, pink 
&lt;br&gt;noise would be copied, and the result is the same pink noise sound.
&lt;br&gt;&lt;br&gt;HTH, Arnd
&lt;br&gt;_______________________________________________
&lt;br&gt;Paranoia mailing list
&lt;br&gt;&lt;a href=&quot;http://old.nabble.com/user/SendEmail.jtp?type=post&amp;post=24168361&amp;i=0&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;Paranoia@...&lt;/a&gt;
&lt;br&gt;&lt;a href=&quot;http://lists.xiph.org/mailman/listinfo/paranoia&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;http://lists.xiph.org/mailman/listinfo/paranoia&lt;/a&gt;&lt;br&gt;&lt;p&gt;From forum: &lt;a href=&quot;http://old.nabble.com/Cd-Paranoia---General-f468.html&quot; embed=&quot;fixTarget[468]&quot; target=&quot;_top&quot; &gt;Cd-Paranoia - General&lt;/a&gt;&lt;/p&gt;</content>
	<link rel="alternate" type="text/html" href="http://old.nabble.com/what-do-the-error-correction-settings-mean----tp24063128p24168361.html" />
</entry>

<entry>
	<id>tag:old.nabble.com,2006:post-24063128</id>
	<title>what do the error correction settings mean???</title>
	<published>2009-06-16T14:21:43Z</published>
	<updated>2009-06-16T14:21:43Z</updated>
	<author>
		<name>Sam Ashley</name>
	</author>
	<content type="html">&lt;br&gt;Hi all. As I (think I) understand it, when using paranoia to rip an audio CD one can invoke error correction with a setting that takes an option with a value from 0 to 3, with 0 meaning no correction and 3 meaning full &amp;quot;paranoia&amp;quot;. But nowhere have I managed to find out specifically what those settings mean, that is, exactly what error correction actions happen in each of those cases.
&lt;br&gt;&lt;br&gt;I ask because I want to use cdrdao (with the paranoia library) to rip CDs of my own work, things I have burned over the years. As it happens, much of my work sounds not unlike &amp;quot;pink noise&amp;quot;, and I wouldn't want, for example, software (with the best of intentions) to decide that my work was just a continuous stream of scratches--and then to go and filter it somehow. Somehow I get the idea that &amp;quot;2&amp;quot; would be reasonable for me, but that's not based on much.
&lt;br&gt;&lt;br&gt;If I haven't posted this in the right place, or have broken some other rule, then please forgive. I'm new to this posting-questions thing.
&lt;br&gt;&lt;br&gt;Thanks in advance,
&lt;br&gt;Sam
&lt;br&gt;&lt;br&gt;&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; 
&lt;br&gt;_______________________________________________
&lt;br&gt;Paranoia mailing list
&lt;br&gt;&lt;a href=&quot;http://old.nabble.com/user/SendEmail.jtp?type=post&amp;post=24063128&amp;i=0&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;Paranoia@...&lt;/a&gt;
&lt;br&gt;&lt;a href=&quot;http://lists.xiph.org/mailman/listinfo/paranoia&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;http://lists.xiph.org/mailman/listinfo/paranoia&lt;/a&gt;&lt;br&gt;&lt;p&gt;From forum: &lt;a href=&quot;http://old.nabble.com/Cd-Paranoia---General-f468.html&quot; embed=&quot;fixTarget[468]&quot; target=&quot;_top&quot; &gt;Cd-Paranoia - General&lt;/a&gt;&lt;/p&gt;</content>
	<link rel="alternate" type="text/html" href="http://old.nabble.com/what-do-the-error-correction-settings-mean----tp24063128p24063128.html" />
</entry>

<entry>
	<id>tag:old.nabble.com,2006:post-24023485</id>
	<title>scripting with exit status</title>
	<published>2009-06-14T09:45:45Z</published>
	<updated>2009-06-14T09:45:45Z</updated>
	<author>
		<name>jeff sacksteder</name>
	</author>
	<content type="html">I have a large amount of discs to rip and I need to detect when an
&lt;br&gt;unfixable error occurs so I can segregate those discs for special
&lt;br&gt;extra attention. Does cdparanoia expose anything that can be used to
&lt;br&gt;script this?
&lt;br&gt;&lt;br&gt;I see an option to skip a track if it can't be ripped without errors,
&lt;br&gt;but not any way to abort the whole disc.
&lt;br&gt;&lt;br&gt;The only thing I can think of is to use the above-mentioned flag and
&lt;br&gt;compare the number of tracks produced to the number expected.
&lt;br&gt;&lt;br&gt;Suggestions?
&lt;br&gt;_______________________________________________
&lt;br&gt;Paranoia mailing list
&lt;br&gt;&lt;a href=&quot;http://old.nabble.com/user/SendEmail.jtp?type=post&amp;post=24023485&amp;i=0&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;Paranoia@...&lt;/a&gt;
&lt;br&gt;&lt;a href=&quot;http://lists.xiph.org/mailman/listinfo/paranoia&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;http://lists.xiph.org/mailman/listinfo/paranoia&lt;/a&gt;&lt;br&gt;&lt;p&gt;From forum: &lt;a href=&quot;http://old.nabble.com/Cd-Paranoia---General-f468.html&quot; embed=&quot;fixTarget[468]&quot; target=&quot;_top&quot; &gt;Cd-Paranoia - General&lt;/a&gt;&lt;/p&gt;</content>
	<link rel="alternate" type="text/html" href="http://old.nabble.com/scripting-with-exit-status-tp24023485p24023485.html" />
</entry>

<entry>
	<id>tag:old.nabble.com,2006:post-23934715</id>
	<title>Re: cdparanoia vs EAC</title>
	<published>2009-06-08T18:00:46Z</published>
	<updated>2009-06-08T18:00:46Z</updated>
	<author>
		<name>xiphmont</name>
	</author>
	<content type="html">&amp;gt; The reason for using EAC instead of cdparanoia has been that EAC has
&lt;br&gt;&amp;gt; been able to handle drives with caches, while cdparanoia hasn't.
&lt;br&gt;&lt;br&gt;Well, it's more that EAC expects drives can have bigger/different
&lt;br&gt;caches than older Paranoia did. &amp;nbsp;A few more drives today also offer
&lt;br&gt;command set ways to force media access, as opposed to attempting to
&lt;br&gt;trick the drive into flushing cache via access patterns. But only a
&lt;br&gt;few (and you can't rely on that).
&lt;br&gt;&lt;br&gt;Both EAC and Paranoia will still have the problem where a drive with a
&lt;br&gt;completely different cache strategy can defeat them without either
&lt;br&gt;knowing (thus bundling the new -A tests with cdparanoia that tries to
&lt;br&gt;find these drives).
&lt;br&gt;&lt;br&gt;&amp;gt; Now I
&lt;br&gt;&amp;gt; see that there is a new version (since September last year) which seem
&lt;br&gt;&amp;gt; to be able to handle drives with caches.
&lt;br&gt;&lt;br&gt;Old paranoia did have cache-modelling code, but it had become out of
&lt;br&gt;date since the last major update in 1998. &amp;nbsp;The new code incorporates
&lt;br&gt;behavior modelling for recent drives.
&lt;br&gt;&lt;br&gt;&amp;gt; If I understand it correctly, cdparanoia is now able to handle drives
&lt;br&gt;&amp;gt; with caches, just like EAC. Is this correct?
&lt;br&gt;&lt;br&gt;&amp;quot;Handle as many at least as well&amp;quot;, I think so. &amp;nbsp;Again, I bundled the
&lt;br&gt;test mode for a reason :-) &amp;nbsp;As EAC is closed, none of us really have
&lt;br&gt;any idea what it is doing.
&lt;br&gt;&lt;br&gt;&amp;gt; I run the cdparanoia -A test on my drive, and it ended up with
&lt;br&gt;&amp;gt; something like &amp;quot;Drive tests OK with Paranoia.&amp;quot; Does this mean that the
&lt;br&gt;&amp;gt; rips done with cdparanoia will be as accurate as the ones done with
&lt;br&gt;&amp;gt; EAC?
&lt;br&gt;&lt;br&gt;Yes.
&lt;br&gt;&lt;br&gt;Monty
&lt;br&gt;_______________________________________________
&lt;br&gt;Paranoia mailing list
&lt;br&gt;&lt;a href=&quot;http://old.nabble.com/user/SendEmail.jtp?type=post&amp;post=23934715&amp;i=0&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;Paranoia@...&lt;/a&gt;
&lt;br&gt;&lt;a href=&quot;http://lists.xiph.org/mailman/listinfo/paranoia&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;http://lists.xiph.org/mailman/listinfo/paranoia&lt;/a&gt;&lt;br&gt;&lt;p&gt;From forum: &lt;a href=&quot;http://old.nabble.com/Cd-Paranoia---General-f468.html&quot; embed=&quot;fixTarget[468]&quot; target=&quot;_top&quot; &gt;Cd-Paranoia - General&lt;/a&gt;&lt;/p&gt;</content>
	<link rel="alternate" type="text/html" href="http://old.nabble.com/cdparanoia-vs-EAC-tp23920326p23934715.html" />
</entry>

<entry>
	<id>tag:old.nabble.com,2006:post-23920326</id>
	<title>cdparanoia vs EAC</title>
	<published>2009-06-08T01:40:20Z</published>
	<updated>2009-06-08T01:40:20Z</updated>
	<author>
		<name>Fredrik Öberg</name>
	</author>
	<content type="html">Hi all,
&lt;br&gt;sorry if this has been asked before (I guess it have), but I could not
&lt;br&gt;find any old message in the archives on this topic, so here we go.
&lt;br&gt;&lt;br&gt;I have been using EAC for ripping music as long as I can remember.
&lt;br&gt;When I was on Windows, it was the natural choice. A couple of years
&lt;br&gt;ago I switched to Linux, but I have been using EAC together with wine
&lt;br&gt;since the switch.
&lt;br&gt;&lt;br&gt;The reason for using EAC instead of cdparanoia has been that EAC has
&lt;br&gt;been able to handle drives with caches, while cdparanoia hasn't. Now I
&lt;br&gt;see that there is a new version (since September last year) which seem
&lt;br&gt;to be able to handle drives with caches.
&lt;br&gt;&lt;br&gt;If I understand it correctly, cdparanoia is now able to handle drives
&lt;br&gt;with caches, just like EAC. Is this correct?
&lt;br&gt;&lt;br&gt;I run the cdparanoia -A test on my drive, and it ended up with
&lt;br&gt;something like &amp;quot;Drive tests OK with Paranoia.&amp;quot; Does this mean that the
&lt;br&gt;rips done with cdparanoia will be as accurate as the ones done with
&lt;br&gt;EAC?
&lt;br&gt;&lt;br&gt;Thanks in advance
&lt;br&gt;&lt;br&gt;/crazy
&lt;br&gt;_______________________________________________
&lt;br&gt;Paranoia mailing list
&lt;br&gt;&lt;a href=&quot;http://old.nabble.com/user/SendEmail.jtp?type=post&amp;post=23920326&amp;i=0&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;Paranoia@...&lt;/a&gt;
&lt;br&gt;&lt;a href=&quot;http://lists.xiph.org/mailman/listinfo/paranoia&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;http://lists.xiph.org/mailman/listinfo/paranoia&lt;/a&gt;&lt;br&gt;&lt;p&gt;From forum: &lt;a href=&quot;http://old.nabble.com/Cd-Paranoia---General-f468.html&quot; embed=&quot;fixTarget[468]&quot; target=&quot;_top&quot; &gt;Cd-Paranoia - General&lt;/a&gt;&lt;/p&gt;</content>
	<link rel="alternate" type="text/html" href="http://old.nabble.com/cdparanoia-vs-EAC-tp23920326p23920326.html" />
</entry>

<entry>
	<id>tag:old.nabble.com,2006:post-23766373</id>
	<title>Re: C2 error support.</title>
	<published>2009-05-28T10:32:58Z</published>
	<updated>2009-05-28T10:32:58Z</updated>
	<author>
		<name>Kurt Roeckx</name>
	</author>
	<content type="html">On Wed, May 27, 2009 at 04:58:28PM -0400, &lt;a href=&quot;http://old.nabble.com/user/SendEmail.jtp?type=post&amp;post=23766373&amp;i=0&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;xiphmont@...&lt;/a&gt; wrote:
&lt;br&gt;&amp;gt; We need to make sure to probe for the capability carefully, pay
&lt;br&gt;&amp;gt; attention to whether or not it is actually working, and not attempt to
&lt;br&gt;&amp;gt; use it on dives that don't support it correctly. &amp;nbsp;It's less common
&lt;br&gt;&amp;gt; that newer drives will brick if you ask them for something they can't
&lt;br&gt;&amp;gt; do, but it's a regular problem in old drives.
&lt;br&gt;&lt;br&gt;The current code looks at the (legacy) 2A page to see if C2 is
&lt;br&gt;supported or not, and then always turns it on. &amp;nbsp;There are a few
&lt;br&gt;things wrong with it:
&lt;br&gt;- If you look at the mmc1 spec it says that being able to request
&lt;br&gt;&amp;nbsp; it is mandatory, but drives that don't support it should just
&lt;br&gt;&amp;nbsp; return 0 bits, giving you the impression that there is no
&lt;br&gt;&amp;nbsp; error. &amp;nbsp;But it's not because that's what the spec says, that
&lt;br&gt;&amp;nbsp; that is what all drives do. &amp;nbsp;So we might need a test to see
&lt;br&gt;&amp;nbsp; how much data we really receive when we requested it.
&lt;br&gt;- If your drive fully supports it, you might want to test the
&lt;br&gt;&amp;nbsp; effect of having it turned on or off
&lt;br&gt;- We should probably not rely on the legacy code page to detect
&lt;br&gt;&amp;nbsp; it for new drives.
&lt;br&gt;&lt;br&gt;&amp;gt; &amp;gt; I've been testing this with a CD with lots of scratches.  What
&lt;br&gt;&amp;gt; &amp;gt; I've seen:
&lt;br&gt;&amp;gt; &amp;gt; - My plextor reads this CD at full speed (40x) every time, always
&lt;br&gt;&amp;gt; &amp;gt;  identical, never returns C2 errors.
&lt;br&gt;&amp;gt; 
&lt;br&gt;&amp;gt; That sounds problematic. &amp;nbsp;Unless it's changed, the Plextors should be
&lt;br&gt;&amp;gt; among the drives that return full corrected and uncorrected C2
&lt;br&gt;&amp;gt; information. &amp;nbsp;Even a pristine disc has corrected errors.
&lt;br&gt;&lt;br&gt;C2 error information is only uncorrected errors, there is no
&lt;br&gt;indication of corrected errors.
&lt;br&gt;&lt;br&gt;Looking at documentation of plextor software, it seems they can
&lt;br&gt;also read C1 and C2 error rates, but they probably get that using
&lt;br&gt;vendor specific commands.
&lt;br&gt;&lt;br&gt;Also not that you do not get the C1/C2 error correcting bytes
&lt;br&gt;themself (8*98=784), just 1 bit for every byte, so 24/8*98=294
&lt;br&gt;bytes.
&lt;br&gt;&lt;br&gt;&amp;gt; &amp;gt; - The other drives have problems reading this, even at speed 1.
&lt;br&gt;&amp;gt; &amp;gt;  Without this patch I got 20+ different files.
&lt;br&gt;&amp;gt; 
&lt;br&gt;&amp;gt; I have not yet looked at what you're doing with the C2 information you
&lt;br&gt;&amp;gt; collect-- how is the matching/verification algorithm modified?
&lt;br&gt;&lt;br&gt;The only thing it does it marking samples that had an error
&lt;br&gt;as unread. &amp;nbsp;The code does the same thing if the whole read
&lt;br&gt;wasn't complete. &amp;nbsp;I did not really look into how all the
&lt;br&gt;algorithmes work, but it seems this was enough for me to get
&lt;br&gt;it working.
&lt;br&gt;&lt;br&gt;&amp;gt; &amp;gt;  Once I got a total of 1.8 million
&lt;br&gt;&amp;gt; &amp;gt;  C2 errors for 1 track, but the result was still good.
&lt;br&gt;&amp;gt; 
&lt;br&gt;&amp;gt; That sounds about right :-) &amp;nbsp;Are you leveraging any sort of your own
&lt;br&gt;&amp;gt; reconstruction or relying on the drive to interpolate?
&lt;br&gt;&lt;br&gt;As far as I know, based on the debug info I added, cdparanoia just
&lt;br&gt;reads it multiple times until it got all samples (twice?) without
&lt;br&gt;an error.
&lt;br&gt;&lt;br&gt;If it realy fails to read only some bytes, we could interpolate
&lt;br&gt;ourself.
&lt;br&gt;&lt;br&gt;&amp;gt; &amp;gt; - The current patch marks all samples belonging to 1 byte of c2
&lt;br&gt;&amp;gt; &amp;gt;  error information as having a problem while it should probably
&lt;br&gt;&amp;gt; &amp;gt;  be possible to only mark the sample that is affected.
&lt;br&gt;&amp;gt; 
&lt;br&gt;&amp;gt; *yes*. &amp;nbsp;Especially as, on a general purpose CPU, we have access to far
&lt;br&gt;&amp;gt; more powerful audio reconstruction techniques than the drive can do in
&lt;br&gt;&amp;gt; firmware. &amp;nbsp;The better job we do seperating the good samples from the
&lt;br&gt;&amp;gt; bad (even the good bits from the bad bits within samples!), the
&lt;br&gt;&amp;gt; better.
&lt;br&gt;&lt;br&gt;The C1/C2 error correction works on byte basis. &amp;nbsp;Either the whole
&lt;br&gt;byte is good or bad. &amp;nbsp;It's designed to handle burst errors and not
&lt;br&gt;single bit errors.
&lt;br&gt;&lt;br&gt;&amp;gt; The physical structure of the CD is going to scatter adjacent samples
&lt;br&gt;&amp;gt; to different parts of the surface such that runs of bad bytes are
&lt;br&gt;&amp;gt; rare. &amp;nbsp;usually you get interleaved errors, which naturally makes
&lt;br&gt;&amp;gt; recovery earlier. &amp;nbsp;We must not toss that advantage away.
&lt;br&gt;&lt;br&gt;If I remember correctly, they have sample 0, 2, 4, 6 in subframe 0
&lt;br&gt;and 1, 3, 5, 7 in the next. &amp;nbsp;If subframe 0 can't be recovered, you
&lt;br&gt;can interpolate the samples based on the other subframe.
&lt;br&gt;&lt;br&gt;&amp;gt; &amp;gt;  For some
&lt;br&gt;&amp;gt; &amp;gt;  reason that's currently unclear to me this always results in a
&lt;br&gt;&amp;gt; &amp;gt;  good file and trying to mark only the bad one resulted in a bad
&lt;br&gt;&amp;gt; &amp;gt;  file.  (Maybe I should mark both left and right instead of only
&lt;br&gt;&amp;gt; &amp;gt;  left or right?)
&lt;br&gt;&amp;gt; 
&lt;br&gt;&amp;gt; Well, we'd need to figure that out :-) &amp;nbsp;Probably has to do with
&lt;br&gt;&amp;gt; exactly how the matching's been modified to deal with the flags.
&lt;br&gt;&lt;br&gt;I was thinking that maybe the matching now only looks at the left
&lt;br&gt;channel and assumes that if you have a sample for left you also
&lt;br&gt;have the right sample. &amp;nbsp;But I'll look into that.
&lt;br&gt;&lt;br&gt;&lt;br&gt;Kurt
&lt;br&gt;&lt;br&gt;_______________________________________________
&lt;br&gt;Paranoia-dev mailing list
&lt;br&gt;&lt;a href=&quot;http://old.nabble.com/user/SendEmail.jtp?type=post&amp;post=23766373&amp;i=1&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;Paranoia-dev@...&lt;/a&gt;
&lt;br&gt;&lt;a href=&quot;http://lists.xiph.org/mailman/listinfo/paranoia-dev&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;http://lists.xiph.org/mailman/listinfo/paranoia-dev&lt;/a&gt;&lt;br&gt;&lt;p&gt;From forum: &lt;a href=&quot;http://old.nabble.com/Cd-Paranoia---Dev-f467.html&quot; embed=&quot;fixTarget[467]&quot; target=&quot;_top&quot; &gt;Cd-Paranoia - Dev&lt;/a&gt;&lt;/p&gt;</content>
	<link rel="alternate" type="text/html" href="http://old.nabble.com/C2-error-support.-tp23670067p23766373.html" />
</entry>

<entry>
	<id>tag:old.nabble.com,2006:post-23750706</id>
	<title>Re: C2 error support.</title>
	<published>2009-05-27T13:58:28Z</published>
	<updated>2009-05-27T13:58:28Z</updated>
	<author>
		<name>xiphmont</name>
	</author>
	<content type="html">&amp;gt; Here is an initial patch.  It would be nice if people could test
&lt;br&gt;&amp;gt; this and give feedback.
&lt;br&gt;&lt;br&gt;C2 error information is on the short-term feature list (along with
&lt;br&gt;more sophisticated reconstruction than offered by the redbook spec),
&lt;br&gt;so allow me to try to bend this all into that direction :-)
&lt;br&gt;&lt;br&gt;&amp;gt; Some comments about the patch:
&lt;br&gt;&amp;gt; - I've merged all the i_read_mmc() functions to 1 function
&lt;br&gt;&amp;gt;  so that not all of them need to be modified.
&lt;br&gt;&lt;br&gt;The dispatch design currently there is cute and badly out of date, and
&lt;br&gt;the next major release with new features (including C2) should ditch
&lt;br&gt;the old interface entirely.
&lt;br&gt;&lt;br&gt;We need to make sure to probe for the capability carefully, pay
&lt;br&gt;attention to whether or not it is actually working, and not attempt to
&lt;br&gt;use it on dives that don't support it correctly. &amp;nbsp;It's less common
&lt;br&gt;that newer drives will brick if you ask them for something they can't
&lt;br&gt;do, but it's a regular problem in old drives.
&lt;br&gt;&lt;br&gt;&amp;gt; - rs was set wrong in verify_read_command().  They all had
&lt;br&gt;&amp;gt;  the DAP bit inverted.
&lt;br&gt;&lt;br&gt;Oh, ha, you're right. &amp;nbsp;I had to look three times to see it even after
&lt;br&gt;you told me. &amp;quot;Functional testing does not necessarily find
&lt;br&gt;cosmetic/informational errors&amp;quot;
&lt;br&gt;&lt;br&gt;&amp;gt; - There are still a few TODOs in it.
&lt;br&gt;&lt;br&gt;Good to get it working, play with it, and submit for review before
&lt;br&gt;going too all out.
&lt;br&gt;&lt;br&gt;&amp;gt; I've been testing this with a CD with lots of scratches.  What
&lt;br&gt;&amp;gt; I've seen:
&lt;br&gt;&amp;gt; - My plextor reads this CD at full speed (40x) every time, always
&lt;br&gt;&amp;gt;  identical, never returns C2 errors.
&lt;br&gt;&lt;br&gt;That sounds problematic. &amp;nbsp;Unless it's changed, the Plextors should be
&lt;br&gt;among the drives that return full corrected and uncorrected C2
&lt;br&gt;information. &amp;nbsp;Even a pristine disc has corrected errors.
&lt;br&gt;&lt;br&gt;&amp;gt; - The other drives have problems reading this, even at speed 1.
&lt;br&gt;&amp;gt;  Without this patch I got 20+ different files.
&lt;br&gt;&lt;br&gt;I have not yet looked at what you're doing with the C2 information you
&lt;br&gt;collect-- how is the matching/verification algorithm modified?
&lt;br&gt;&lt;br&gt;&amp;gt;  Once I got a total of 1.8 million
&lt;br&gt;&amp;gt;  C2 errors for 1 track, but the result was still good.
&lt;br&gt;&lt;br&gt;That sounds about right :-) &amp;nbsp;Are you leveraging any sort of your own
&lt;br&gt;reconstruction or relying on the drive to interpolate?
&lt;br&gt;&lt;br&gt;&amp;gt; - The current patch marks all samples belonging to 1 byte of c2
&lt;br&gt;&amp;gt;  error information as having a problem while it should probably
&lt;br&gt;&amp;gt;  be possible to only mark the sample that is affected.
&lt;br&gt;&lt;br&gt;*yes*. &amp;nbsp;Especially as, on a general purpose CPU, we have access to far
&lt;br&gt;more powerful audio reconstruction techniques than the drive can do in
&lt;br&gt;firmware. &amp;nbsp;The better job we do seperating the good samples from the
&lt;br&gt;bad (even the good bits from the bad bits within samples!), the
&lt;br&gt;better.
&lt;br&gt;&lt;br&gt;The physical structure of the CD is going to scatter adjacent samples
&lt;br&gt;to different parts of the surface such that runs of bad bytes are
&lt;br&gt;rare. &amp;nbsp;usually you get interleaved errors, which naturally makes
&lt;br&gt;recovery earlier. &amp;nbsp;We must not toss that advantage away.
&lt;br&gt;&lt;br&gt;&amp;gt;  For some
&lt;br&gt;&amp;gt;  reason that's currently unclear to me this always results in a
&lt;br&gt;&amp;gt;  good file and trying to mark only the bad one resulted in a bad
&lt;br&gt;&amp;gt;  file.  (Maybe I should mark both left and right instead of only
&lt;br&gt;&amp;gt;  left or right?)
&lt;br&gt;&lt;br&gt;Well, we'd need to figure that out :-) &amp;nbsp;Probably has to do with
&lt;br&gt;exactly how the matching's been modified to deal with the flags.
&lt;br&gt;&lt;br&gt;Monty
&lt;br&gt;_______________________________________________
&lt;br&gt;Paranoia-dev mailing list
&lt;br&gt;&lt;a href=&quot;http://old.nabble.com/user/SendEmail.jtp?type=post&amp;post=23750706&amp;i=0&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;Paranoia-dev@...&lt;/a&gt;
&lt;br&gt;&lt;a href=&quot;http://lists.xiph.org/mailman/listinfo/paranoia-dev&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;http://lists.xiph.org/mailman/listinfo/paranoia-dev&lt;/a&gt;&lt;br&gt;&lt;p&gt;From forum: &lt;a href=&quot;http://old.nabble.com/Cd-Paranoia---Dev-f467.html&quot; embed=&quot;fixTarget[467]&quot; target=&quot;_top&quot; &gt;Cd-Paranoia - Dev&lt;/a&gt;&lt;/p&gt;</content>
	<link rel="alternate" type="text/html" href="http://old.nabble.com/C2-error-support.-tp23670067p23750706.html" />
</entry>

<entry>
	<id>tag:old.nabble.com,2006:post-23691953</id>
	<title>Re: C2 error support.</title>
	<published>2009-05-24T02:32:20Z</published>
	<updated>2009-05-24T02:32:20Z</updated>
	<author>
		<name>Kurt Roeckx</name>
	</author>
	<content type="html">On Fri, May 22, 2009 at 02:57:24PM +0200, Kurt Roeckx wrote:
&lt;br&gt;&amp;gt; Hi,
&lt;br&gt;&amp;gt; 
&lt;br&gt;&amp;gt; I'm looking into adding support for reading the C2 error
&lt;br&gt;&amp;gt; information [...]
&lt;br&gt;&lt;br&gt;Here is an initial patch. &amp;nbsp;It would be nice if people could test
&lt;br&gt;this and give feedback.
&lt;br&gt;&lt;br&gt;Some comments about the patch:
&lt;br&gt;- I've merged all the i_read_mmc() functions to 1 function
&lt;br&gt;&amp;nbsp; so that not all of them need to be modified.
&lt;br&gt;- rs was set wrong in verify_read_command(). &amp;nbsp;They all had
&lt;br&gt;&amp;nbsp; the DAP bit inverted.
&lt;br&gt;- There are still a few TODOs in it.
&lt;br&gt;&lt;br&gt;I've been testing this with a CD with lots of scratches. &amp;nbsp;What
&lt;br&gt;I've seen:
&lt;br&gt;- My plextor reads this CD at full speed (40x) every time, always
&lt;br&gt;&amp;nbsp; identical, never returns C2 errors.
&lt;br&gt;- The other drives have problems reading this, even at speed 1.
&lt;br&gt;&amp;nbsp; Without this patch I got 20+ different files. &amp;nbsp;With this patch
&lt;br&gt;&amp;nbsp; they all either generate the same file as the plextor, or fail
&lt;br&gt;&amp;nbsp; to read it / generate a skip. &amp;nbsp;Once I got a total of 1.8 million
&lt;br&gt;&amp;nbsp; C2 errors for 1 track, but the result was still good.
&lt;br&gt;- The current patch marks all samples belonging to 1 byte of c2
&lt;br&gt;&amp;nbsp; error information as having a problem while it should probably
&lt;br&gt;&amp;nbsp; be possible to only mark the sample that is affected. &amp;nbsp;For some
&lt;br&gt;&amp;nbsp; reason that's currently unclear to me this always results in a
&lt;br&gt;&amp;nbsp; good file and trying to mark only the bad one resulted in a bad
&lt;br&gt;&amp;nbsp; file. &amp;nbsp;(Maybe I should mark both left and right instead of only
&lt;br&gt;&amp;nbsp; left or right?)
&lt;br&gt;&lt;br&gt;&lt;br&gt;Kurt
&lt;br&gt;&lt;br&gt;&lt;br /&gt;&lt;hr align=&quot;left&quot; width=&quot;300&quot; /&gt;&lt;tt&gt;Index: paranoia/paranoia.c
&lt;br&gt;===================================================================
&lt;br&gt;--- paranoia/paranoia.c	(revision 16022)
&lt;br&gt;+++ paranoia/paranoia.c	(working copy)
&lt;br&gt;@@ -2329,7 +2329,9 @@
&lt;br&gt;&amp;nbsp; &amp;nbsp;long sofar;
&lt;br&gt;&amp;nbsp; &amp;nbsp;long dynoverlap=(p-&amp;gt;dynoverlap+CD_FRAMEWORDS-1)/CD_FRAMEWORDS; 
&lt;br&gt;&amp;nbsp; &amp;nbsp;long anyflag=0;
&lt;br&gt;+ &amp;nbsp;unsigned char *c2_buffer=NULL;
&lt;br&gt;&amp;nbsp;
&lt;br&gt;+ &amp;nbsp;c2_buffer=malloc(sectatonce * CD_C2BUFFERSIZE);
&lt;br&gt;&amp;nbsp;
&lt;br&gt;&amp;nbsp; &amp;nbsp;/* Calculate the first sector to read. &amp;nbsp;This calculation takes
&lt;br&gt;&amp;nbsp; &amp;nbsp; * into account the need to jitter the starting point of the read
&lt;br&gt;@@ -2444,6 +2446,7 @@
&lt;br&gt;&amp;nbsp;	 &amp;nbsp; &amp;nbsp;if(new)free_c_block(new);
&lt;br&gt;&amp;nbsp;	 &amp;nbsp; &amp;nbsp;if(buffer)free(buffer);
&lt;br&gt;&amp;nbsp;	 &amp;nbsp; &amp;nbsp;if(flags)free(flags);
&lt;br&gt;+	 &amp;nbsp; &amp;nbsp;if(c2_buffer)free(c2_buffer);
&lt;br&gt;&amp;nbsp;	 &amp;nbsp; &amp;nbsp;return NULL;
&lt;br&gt;&amp;nbsp;	 &amp;nbsp;}
&lt;br&gt;&amp;nbsp;	 &amp;nbsp;thisread=0;
&lt;br&gt;@@ -2482,6 +2485,29 @@
&lt;br&gt;&amp;nbsp;	 &amp;nbsp;flags[sofar*CD_FRAMEWORDS+i]|=FLAGS_EDGE;
&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;}
&lt;br&gt;&amp;nbsp;
&lt;br&gt;+ &amp;nbsp; &amp;nbsp; &amp;nbsp;if (cdda_read_c2_errors(p-&amp;gt;d, c2_buffer, thisread) == 0)
&lt;br&gt;+ &amp;nbsp; &amp;nbsp; &amp;nbsp;{
&lt;br&gt;+	int i;
&lt;br&gt;+	for (i = 0; i &amp;lt; thisread * CD_C2BUFFERSIZE; i++)
&lt;br&gt;+	{
&lt;br&gt;+	 &amp;nbsp;int j;
&lt;br&gt;+	 &amp;nbsp;/* The c2_buffer contains 1 bit for every byte from the
&lt;br&gt;+	 &amp;nbsp; * buffer. &amp;nbsp;The buffer is in 16 bit words. &amp;nbsp;So 8 byte from
&lt;br&gt;+	 &amp;nbsp; * the c2_buffer map to 4 values of the flags/buffer.
&lt;br&gt;+	 &amp;nbsp; * It's not clear in which order the bits in the c2 buffer are,
&lt;br&gt;+	 &amp;nbsp; * is the first byte in the MSB or LSB? &amp;nbsp;Proably all firmware won't
&lt;br&gt;+	 &amp;nbsp; * agree. &amp;nbsp;We just mark all 4 values in the flags as invalid.
&lt;br&gt;+	 &amp;nbsp; */
&lt;br&gt;+	 &amp;nbsp;if (c2_buffer[i] != '\0')
&lt;br&gt;+	 &amp;nbsp;{
&lt;br&gt;+	 &amp;nbsp; &amp;nbsp;for (j = 0; j &amp;lt; 4; j++)
&lt;br&gt;+	 &amp;nbsp; &amp;nbsp;{
&lt;br&gt;+	 &amp;nbsp; &amp;nbsp; &amp;nbsp;flags[sofar*CD_FRAMEWORDS+i*4+j]|=FLAGS_UNREAD;
&lt;br&gt;+	 &amp;nbsp; &amp;nbsp;}
&lt;br&gt;+	 &amp;nbsp;}
&lt;br&gt;+	}
&lt;br&gt;+ &amp;nbsp; &amp;nbsp; &amp;nbsp;}
&lt;br&gt;+
&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;if(adjread+secread-1==p-&amp;gt;current_lastsector)
&lt;br&gt;&amp;nbsp;	new-&amp;gt;lastsector=-1;
&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;
&lt;br&gt;@@ -2519,6 +2545,7 @@
&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp;free(flags);
&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp;new=NULL;
&lt;br&gt;&amp;nbsp; &amp;nbsp;}
&lt;br&gt;+ &amp;nbsp;if(c2_buffer)free(c2_buffer);
&lt;br&gt;&amp;nbsp; &amp;nbsp;return(new);
&lt;br&gt;&amp;nbsp;}
&lt;br&gt;&amp;nbsp;
&lt;br&gt;Index: interface/cdda_interface.h
&lt;br&gt;===================================================================
&lt;br&gt;--- interface/cdda_interface.h	(revision 16022)
&lt;br&gt;+++ interface/cdda_interface.h	(working copy)
&lt;br&gt;@@ -17,6 +17,7 @@
&lt;br&gt;&amp;nbsp;#define CD_FRAMESIZE_RAW 2352
&lt;br&gt;&amp;nbsp;#endif
&lt;br&gt;&amp;nbsp;#define CD_FRAMESAMPLES (CD_FRAMESIZE_RAW / 4)
&lt;br&gt;+#define CD_C2BUFFERSIZE (CD_FRAMESIZE_RAW / 8)
&lt;br&gt;&amp;nbsp;
&lt;br&gt;&amp;nbsp;#include &amp;lt;sys/types.h&amp;gt;
&lt;br&gt;&amp;nbsp;#include &amp;lt;signal.h&amp;gt;
&lt;br&gt;@@ -133,6 +134,7 @@
&lt;br&gt;&amp;nbsp;		 &amp;nbsp; &amp;nbsp; &amp;nbsp; long beginsector, long sectors);
&lt;br&gt;&amp;nbsp;extern long cdda_read_timed(cdrom_drive *d, void *buffer,
&lt;br&gt;&amp;nbsp;			 &amp;nbsp; &amp;nbsp;long beginsector, long sectors, int *milliseconds);
&lt;br&gt;+extern int cdda_read_c2_errors(cdrom_drive *d, void *buffer, int sectors);
&lt;br&gt;&amp;nbsp;
&lt;br&gt;&amp;nbsp;extern long cdda_track_firstsector(cdrom_drive *d,int track);
&lt;br&gt;&amp;nbsp;extern long cdda_track_lastsector(cdrom_drive *d,int track);
&lt;br&gt;Index: interface/scsi_interface.c
&lt;br&gt;===================================================================
&lt;br&gt;--- interface/scsi_interface.c	(revision 16022)
&lt;br&gt;+++ interface/scsi_interface.c	(working copy)
&lt;br&gt;@@ -58,7 +58,7 @@
&lt;br&gt;&amp;nbsp; &amp;nbsp;sprintf(buffer,&amp;quot;\tDMA scatter/gather table entries: %d\n\t&amp;quot;
&lt;br&gt;&amp;nbsp;	 &amp;nbsp;&amp;quot;table entry size: %d bytes\n\t&amp;quot;
&lt;br&gt;&amp;nbsp;	 &amp;nbsp;&amp;quot;maximum theoretical transfer: %d sectors\n&amp;quot;,
&lt;br&gt;-	 &amp;nbsp;table, reserved, table*(reserved/CD_FRAMESIZE_RAW));
&lt;br&gt;+	 &amp;nbsp;table, reserved, table*(reserved/d-&amp;gt;private_data-&amp;gt;data_size));
&lt;br&gt;&amp;nbsp; &amp;nbsp;cdmessage(d,buffer);
&lt;br&gt;&amp;nbsp;
&lt;br&gt;&amp;nbsp; &amp;nbsp;cur=reserved; /* only use one entry for now */
&lt;br&gt;@@ -82,11 +82,11 @@
&lt;br&gt;&amp;nbsp;	 &amp;nbsp; &amp;nbsp; &amp;nbsp;&amp;quot;\t\tforcing maximum possible sector size. &amp;nbsp;This can break\n&amp;quot;
&lt;br&gt;&amp;nbsp;	 &amp;nbsp; &amp;nbsp; &amp;nbsp;&amp;quot;\t\tspectacularly; use with caution!\n&amp;quot;);
&lt;br&gt;&amp;nbsp; &amp;nbsp;}
&lt;br&gt;- &amp;nbsp;d-&amp;gt;nsectors=cur/CD_FRAMESIZE_RAW;
&lt;br&gt;+ &amp;nbsp;d-&amp;gt;nsectors=cur/d-&amp;gt;private_data-&amp;gt;data_size;
&lt;br&gt;&amp;nbsp; &amp;nbsp;d-&amp;gt;bigbuff=cur;
&lt;br&gt;&amp;nbsp;
&lt;br&gt;&amp;nbsp; &amp;nbsp;sprintf(buffer,&amp;quot;\tSetting default read size to %d sectors (%d bytes).\n\n&amp;quot;,
&lt;br&gt;-	 &amp;nbsp;d-&amp;gt;nsectors,d-&amp;gt;nsectors*CD_FRAMESIZE_RAW);
&lt;br&gt;+	 &amp;nbsp;d-&amp;gt;nsectors,d-&amp;gt;nsectors*d-&amp;gt;private_data-&amp;gt;data_size);
&lt;br&gt;&amp;nbsp;
&lt;br&gt;&amp;nbsp; &amp;nbsp;if(cur==0) exit(1);
&lt;br&gt;&amp;nbsp;
&lt;br&gt;@@ -912,90 +912,120 @@
&lt;br&gt;&amp;nbsp; &amp;nbsp;return(0);
&lt;br&gt;&amp;nbsp;}
&lt;br&gt;&amp;nbsp;
&lt;br&gt;+/* READ CD command (0xBE)
&lt;br&gt;+ * byte 1: bit 0:
&lt;br&gt;+ * &amp;nbsp; - mmc1-mmc4: RELADR: must be 0
&lt;br&gt;+ * &amp;nbsp; - mmc5- &amp;nbsp; &amp;nbsp;: obsolete
&lt;br&gt;+ * byte 1: bit 1:
&lt;br&gt;+ * &amp;nbsp; - mmc1-mmc3: Reserved
&lt;br&gt;+ * &amp;nbsp; - mmc4- &amp;nbsp; &amp;nbsp;: Digital Audio Play: When set to 1 the drive will do things
&lt;br&gt;+ * &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;like mute and interpolate on errors
&lt;br&gt;+ * byte 1: bit 4-2: sector type
&lt;br&gt;+ * &amp;nbsp; - 000: All types (mandotary)
&lt;br&gt;+ * &amp;nbsp; - 001: CD-DA (mmc1-mmc3: optional, mmc4-: mandotary)
&lt;br&gt;+ * &amp;nbsp; - 002: Mode 1 (mandotary)
&lt;br&gt;+ * &amp;nbsp; - 003: Mode 2 formless (mmc1-mmc3: madotary, mmc4-: optional)
&lt;br&gt;+ * &amp;nbsp; - 004: Mode 2 form 1 (mandotary)
&lt;br&gt;+ * &amp;nbsp; - 005: Mode 2 form 2 (mandotary)
&lt;br&gt;+ * byte 2-5: Start LBA
&lt;br&gt;+ * byte 6-8: Length
&lt;br&gt;+ * byte 9: bit 0: reserved
&lt;br&gt;+ * byte 9: bit 2-1: C2 error info:
&lt;br&gt;+ * &amp;nbsp; - 00: No C2 info
&lt;br&gt;+ * &amp;nbsp; - 01: 1 bit for all 2352 bytes
&lt;br&gt;+ * &amp;nbsp; - 10: Bitwise or of C2 bytes + pad + 1 bit for all 2352 bytes.
&lt;br&gt;+ * byte 9: bit 3: EDC &amp; ECC
&lt;br&gt;+ * byte 9: bit 4: User Data
&lt;br&gt;+ * byte 9: bit 6-5: Header Codes
&lt;br&gt;+ * &amp;nbsp; - 00: No header info
&lt;br&gt;+ * &amp;nbsp; - 01: 4 byte sector header
&lt;br&gt;+ * &amp;nbsp; - 10: 8 byte sector sub-header (mode 2)
&lt;br&gt;+ * &amp;nbsp; - 11: both header and sub-header
&lt;br&gt;+ * byte 9: bit 7: Sync
&lt;br&gt;+ * byte 10: bit 2-0: sub channel selection:
&lt;br&gt;+ * &amp;nbsp; - 000: No sub channel
&lt;br&gt;+ * &amp;nbsp; - 001: RAW P-W channel (only mentioned in mmc1 - mmc4, but others still
&lt;br&gt;+ * &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;talk about it.)
&lt;br&gt;+ * &amp;nbsp; - 010: Q channel data
&lt;br&gt;+ * &amp;nbsp; - 100: Corrected and deinterleaved R-W subchannel
&lt;br&gt;+ *
&lt;br&gt;+ * Note: Setting any of the bits 7 - 3 from byte 9 for should act the same
&lt;br&gt;+ * &amp;nbsp; &amp;nbsp; &amp;nbsp; and only return the user data (0x10) for CDDA.
&lt;br&gt;+ *
&lt;br&gt;+ */
&lt;br&gt;+
&lt;br&gt;&amp;nbsp;static int i_read_mmc (cdrom_drive *d, void *p, long begin, long sectors, unsigned char *sense){
&lt;br&gt;&amp;nbsp; &amp;nbsp;int ret;
&lt;br&gt;- &amp;nbsp;unsigned char cmd[12]={0xbe, 0x2, 0, 0, 0, 0, 0, 0, 0, 0x10, 0, 0};
&lt;br&gt;+ &amp;nbsp;unsigned char cmd[12]={0xbe, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0};
&lt;br&gt;&amp;nbsp;
&lt;br&gt;- &amp;nbsp;cmd[3] = (begin &amp;gt;&amp;gt; 16) &amp; 0xFF;
&lt;br&gt;- &amp;nbsp;cmd[4] = (begin &amp;gt;&amp;gt; 8) &amp; 0xFF;
&lt;br&gt;- &amp;nbsp;cmd[5] = begin &amp; 0xFF;
&lt;br&gt;- &amp;nbsp;cmd[8] = sectors;
&lt;br&gt;- &amp;nbsp;if((ret=handle_scsi_cmd(d,cmd,12,0,sectors * CD_FRAMESIZE_RAW,'\177',1,sense)))
&lt;br&gt;- &amp;nbsp; &amp;nbsp;return(ret);
&lt;br&gt;- &amp;nbsp;if(p)memcpy(p,d-&amp;gt;private_data-&amp;gt;sg_buffer,sectors*CD_FRAMESIZE_RAW);
&lt;br&gt;- &amp;nbsp;return(0);
&lt;br&gt;-}
&lt;br&gt;+ &amp;nbsp;if(d-&amp;gt;private_data-&amp;gt;mmc_use_dap)
&lt;br&gt;+ &amp;nbsp;{
&lt;br&gt;+ &amp;nbsp; &amp;nbsp;cmd[1] |= 0x02;
&lt;br&gt;+ &amp;nbsp;}
&lt;br&gt;&amp;nbsp;
&lt;br&gt;-static int i_read_mmcB (cdrom_drive *d, void *p, long begin, long sectors, unsigned char *sense){
&lt;br&gt;- &amp;nbsp;int ret;
&lt;br&gt;- &amp;nbsp;unsigned char cmd[12]={0xbe, 0x0, 0, 0, 0, 0, 0, 0, 0, 0x10, 0, 0};
&lt;br&gt;+ &amp;nbsp;if(d-&amp;gt;private_data-&amp;gt;mmc_use_sectortype_cdda)
&lt;br&gt;+ &amp;nbsp;{
&lt;br&gt;+ &amp;nbsp; &amp;nbsp;cmd[1] |= 0x04; /* 001 in bit 4-2 */
&lt;br&gt;+ &amp;nbsp;}
&lt;br&gt;&amp;nbsp;
&lt;br&gt;- &amp;nbsp;cmd[3] = (begin &amp;gt;&amp;gt; 16) &amp; 0xFF;
&lt;br&gt;- &amp;nbsp;cmd[4] = (begin &amp;gt;&amp;gt; 8) &amp; 0xFF;
&lt;br&gt;- &amp;nbsp;cmd[5] = begin &amp; 0xFF;
&lt;br&gt;- &amp;nbsp;cmd[8] = sectors;
&lt;br&gt;- &amp;nbsp;if((ret=handle_scsi_cmd(d,cmd,12,0,sectors * CD_FRAMESIZE_RAW,'\177',1,sense)))
&lt;br&gt;- &amp;nbsp; &amp;nbsp;return(ret);
&lt;br&gt;- &amp;nbsp;if(p)memcpy(p,d-&amp;gt;private_data-&amp;gt;sg_buffer,sectors*CD_FRAMESIZE_RAW);
&lt;br&gt;- &amp;nbsp;return(0);
&lt;br&gt;-}
&lt;br&gt;+ &amp;nbsp;if(d-&amp;gt;private_data-&amp;gt;mmc_use_channel_selection_all) /* bit 7-3 */
&lt;br&gt;+ &amp;nbsp;{
&lt;br&gt;+ &amp;nbsp; &amp;nbsp;cmd[9] |= 0xF8; /* get sync, all headers, user data, EDC/ECC */
&lt;br&gt;+ &amp;nbsp;}
&lt;br&gt;+ &amp;nbsp;else
&lt;br&gt;+ &amp;nbsp;{
&lt;br&gt;+ &amp;nbsp; &amp;nbsp;cmd[9] |= 0x10; /* get user data */
&lt;br&gt;+ &amp;nbsp;}
&lt;br&gt;&amp;nbsp;
&lt;br&gt;-static int i_read_mmc2 (cdrom_drive *d, void *p, long begin, long sectors, unsigned char *sense){
&lt;br&gt;- &amp;nbsp;int ret;
&lt;br&gt;- &amp;nbsp;unsigned char cmd[12]={0xbe, 0x2, 0, 0, 0, 0, 0, 0, 0, 0xf8, 0, 0};
&lt;br&gt;+ &amp;nbsp;if (d-&amp;gt;private_data-&amp;gt;mmc_use_c2)
&lt;br&gt;+ &amp;nbsp;{
&lt;br&gt;+ &amp;nbsp; &amp;nbsp;/* Git 1 bit error indication per byte after c2 error correction. */
&lt;br&gt;+ &amp;nbsp; &amp;nbsp;cmd[9] |= 0x02;
&lt;br&gt;+ &amp;nbsp;}
&lt;br&gt;&amp;nbsp;
&lt;br&gt;&amp;nbsp; &amp;nbsp;cmd[3] = (begin &amp;gt;&amp;gt; 16) &amp; 0xFF;
&lt;br&gt;&amp;nbsp; &amp;nbsp;cmd[4] = (begin &amp;gt;&amp;gt; 8) &amp; 0xFF;
&lt;br&gt;&amp;nbsp; &amp;nbsp;cmd[5] = begin &amp; 0xFF;
&lt;br&gt;&amp;nbsp; &amp;nbsp;cmd[8] = sectors;
&lt;br&gt;- &amp;nbsp;if((ret=handle_scsi_cmd(d,cmd,12,0,sectors * CD_FRAMESIZE_RAW,'\177',1,sense)))
&lt;br&gt;+ &amp;nbsp;if((ret=handle_scsi_cmd(d,cmd,12,0,sectors * d-&amp;gt;private_data-&amp;gt;data_size,'\177',1,sense)))
&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp;return(ret);
&lt;br&gt;- &amp;nbsp;if(p)memcpy(p,d-&amp;gt;private_data-&amp;gt;sg_buffer,sectors*CD_FRAMESIZE_RAW);
&lt;br&gt;+ &amp;nbsp;if(p)
&lt;br&gt;+ &amp;nbsp;{
&lt;br&gt;+ &amp;nbsp; &amp;nbsp;int i;
&lt;br&gt;+ &amp;nbsp; &amp;nbsp;for (i = 0; i &amp;lt; sectors; i++)
&lt;br&gt;+ &amp;nbsp; &amp;nbsp;{
&lt;br&gt;+ &amp;nbsp; &amp;nbsp; &amp;nbsp;if (d-&amp;gt;private_data-&amp;gt;mmc_use_c2 &amp;&amp; d-&amp;gt;private_data-&amp;gt;c2_buffer != NULL)
&lt;br&gt;+ &amp;nbsp; &amp;nbsp; &amp;nbsp;{
&lt;br&gt;+	memcpy(d-&amp;gt;private_data-&amp;gt;c2_buffer+i*CD_C2BUFFERSIZE,
&lt;br&gt;+	 &amp;nbsp;d-&amp;gt;private_data-&amp;gt;sg_buffer + i * (d-&amp;gt;private_data-&amp;gt;data_size)
&lt;br&gt;+	 &amp;nbsp; &amp;nbsp;+ CD_FRAMESIZE_RAW,
&lt;br&gt;+	 &amp;nbsp;CD_C2BUFFERSIZE);
&lt;br&gt;+ &amp;nbsp; &amp;nbsp; &amp;nbsp;}
&lt;br&gt;+ &amp;nbsp; &amp;nbsp; &amp;nbsp;memcpy(p+i*CD_FRAMESIZE_RAW,
&lt;br&gt;+	d-&amp;gt;private_data-&amp;gt;sg_buffer + i * (d-&amp;gt;private_data-&amp;gt;data_size),
&lt;br&gt;+	CD_FRAMESIZE_RAW);
&lt;br&gt;+ &amp;nbsp; &amp;nbsp;}
&lt;br&gt;+ &amp;nbsp;}
&lt;br&gt;&amp;nbsp; &amp;nbsp;return(0);
&lt;br&gt;&amp;nbsp;}
&lt;br&gt;&amp;nbsp;
&lt;br&gt;-static int i_read_mmc2B (cdrom_drive *d, void *p, long begin, long sectors, unsigned char *sense){
&lt;br&gt;- &amp;nbsp;int ret;
&lt;br&gt;- &amp;nbsp;unsigned char cmd[12]={0xbe, 0x0, 0, 0, 0, 0, 0, 0, 0, 0xf8, 0, 0};
&lt;br&gt;-
&lt;br&gt;- &amp;nbsp;cmd[3] = (begin &amp;gt;&amp;gt; 16) &amp; 0xFF;
&lt;br&gt;- &amp;nbsp;cmd[4] = (begin &amp;gt;&amp;gt; 8) &amp; 0xFF;
&lt;br&gt;- &amp;nbsp;cmd[5] = begin &amp; 0xFF;
&lt;br&gt;- &amp;nbsp;cmd[8] = sectors;
&lt;br&gt;- &amp;nbsp;if((ret=handle_scsi_cmd(d,cmd,12,0,sectors * CD_FRAMESIZE_RAW,'\177',1,sense)))
&lt;br&gt;- &amp;nbsp; &amp;nbsp;return(ret);
&lt;br&gt;- &amp;nbsp;if(p)memcpy(p,d-&amp;gt;private_data-&amp;gt;sg_buffer,sectors*CD_FRAMESIZE_RAW);
&lt;br&gt;- &amp;nbsp;return(0);
&lt;br&gt;+/* TODO: Remove the sectors parameter? */
&lt;br&gt;+extern int cdda_read_c2_errors(cdrom_drive *d, void *buffer, int sectors)
&lt;br&gt;+{
&lt;br&gt;+ &amp;nbsp;if (!d-&amp;gt;is_mmc)
&lt;br&gt;+ &amp;nbsp;{
&lt;br&gt;+ &amp;nbsp; &amp;nbsp;/* TODO: Use different error number? */
&lt;br&gt;+ &amp;nbsp; &amp;nbsp;return -405;
&lt;br&gt;+ &amp;nbsp;}
&lt;br&gt;+ &amp;nbsp;if (!d-&amp;gt;private_data-&amp;gt;mmc_use_c2 || d-&amp;gt;private_data-&amp;gt;c2_buffer == NULL)
&lt;br&gt;+ &amp;nbsp;{
&lt;br&gt;+ &amp;nbsp; &amp;nbsp;/* TODO: Is this a good error? &amp;nbsp;Document it. */
&lt;br&gt;+ &amp;nbsp; &amp;nbsp;return -11;
&lt;br&gt;+ &amp;nbsp;}
&lt;br&gt;+ &amp;nbsp;memcpy(buffer, d-&amp;gt;private_data-&amp;gt;c2_buffer, CD_C2BUFFERSIZE*sectors);
&lt;br&gt;+ &amp;nbsp;return 0;
&lt;br&gt;&amp;nbsp;}
&lt;br&gt;&amp;nbsp;
&lt;br&gt;-static int i_read_mmc3 (cdrom_drive *d, void *p, long begin, long sectors, unsigned char *sense){
&lt;br&gt;- &amp;nbsp;int ret;
&lt;br&gt;- &amp;nbsp;unsigned char cmd[12]={0xbe, 0x6, 0, 0, 0, 0, 0, 0, 0, 0xf8, 0, 0};
&lt;br&gt;-
&lt;br&gt;- &amp;nbsp;cmd[3] = (begin &amp;gt;&amp;gt; 16) &amp; 0xFF;
&lt;br&gt;- &amp;nbsp;cmd[4] = (begin &amp;gt;&amp;gt; 8) &amp; 0xFF;
&lt;br&gt;- &amp;nbsp;cmd[5] = begin &amp; 0xFF;
&lt;br&gt;- &amp;nbsp;cmd[8] = sectors;
&lt;br&gt;- &amp;nbsp;if((ret=handle_scsi_cmd(d,cmd,12,0,sectors * CD_FRAMESIZE_RAW,'\177',1,sense)))
&lt;br&gt;- &amp;nbsp; &amp;nbsp;return(ret);
&lt;br&gt;- &amp;nbsp;if(p)memcpy(p,d-&amp;gt;private_data-&amp;gt;sg_buffer,sectors*CD_FRAMESIZE_RAW);
&lt;br&gt;- &amp;nbsp;return(0);
&lt;br&gt;-}
&lt;br&gt;-
&lt;br&gt;-static int i_read_mmc3B (cdrom_drive *d, void *p, long begin, long sectors, unsigned char *sense){
&lt;br&gt;- &amp;nbsp;int ret;
&lt;br&gt;- &amp;nbsp;unsigned char cmd[12]={0xbe, 0x4, 0, 0, 0, 0, 0, 0, 0, 0xf8, 0, 0};
&lt;br&gt;-
&lt;br&gt;- &amp;nbsp;cmd[3] = (begin &amp;gt;&amp;gt; 16) &amp; 0xFF;
&lt;br&gt;- &amp;nbsp;cmd[4] = (begin &amp;gt;&amp;gt; 8) &amp; 0xFF;
&lt;br&gt;- &amp;nbsp;cmd[5] = begin &amp; 0xFF;
&lt;br&gt;- &amp;nbsp;cmd[8] = sectors;
&lt;br&gt;- &amp;nbsp;if((ret=handle_scsi_cmd(d,cmd,12,0,sectors * CD_FRAMESIZE_RAW,'\177',1,sense)))
&lt;br&gt;- &amp;nbsp; &amp;nbsp;return(ret);
&lt;br&gt;- &amp;nbsp;if(p)memcpy(p,d-&amp;gt;private_data-&amp;gt;sg_buffer,sectors*CD_FRAMESIZE_RAW);
&lt;br&gt;- &amp;nbsp;return(0);
&lt;br&gt;-}
&lt;br&gt;-
&lt;br&gt;&amp;nbsp;/* straight from the MMC3 spec */
&lt;br&gt;&amp;nbsp;static inline void LBA_to_MSF(long lba,
&lt;br&gt;&amp;nbsp;			 &amp;nbsp; &amp;nbsp; &amp;nbsp;unsigned char *M, 
&lt;br&gt;@@ -1227,31 +1257,17 @@
&lt;br&gt;&amp;nbsp; &amp;nbsp;return(scsi_read_map(d,p,begin,sectors,i_read_mmc));
&lt;br&gt;&amp;nbsp;}
&lt;br&gt;&amp;nbsp;
&lt;br&gt;+/* This function gets called in the exception list. &amp;nbsp;We probably just want to
&lt;br&gt;+ * turn on DAP. */
&lt;br&gt;&amp;nbsp;long scsi_read_mmc2 (cdrom_drive *d, void *p, long begin, 
&lt;br&gt;&amp;nbsp;			 &amp;nbsp; &amp;nbsp; &amp;nbsp; long sectors){
&lt;br&gt;- &amp;nbsp;return(scsi_read_map(d,p,begin,sectors,i_read_mmc2));
&lt;br&gt;+ &amp;nbsp;d-&amp;gt;private_data-&amp;gt;mmc_use_sectortype_cdda = 0;
&lt;br&gt;+ &amp;nbsp;d-&amp;gt;private_data-&amp;gt;mmc_use_dap = 1;
&lt;br&gt;+ &amp;nbsp;d-&amp;gt;private_data-&amp;gt;mmc_use_channel_selection_all = 1;
&lt;br&gt;+ &amp;nbsp;d-&amp;gt;private_data-&amp;gt;mmc_use_c2 = 0;
&lt;br&gt;+ &amp;nbsp;return(scsi_read_map(d,p,begin,sectors,i_read_mmc));
&lt;br&gt;&amp;nbsp;}
&lt;br&gt;&amp;nbsp;
&lt;br&gt;-long scsi_read_mmc3 (cdrom_drive *d, void *p, long begin, 
&lt;br&gt;-			 &amp;nbsp; &amp;nbsp; &amp;nbsp; long sectors){
&lt;br&gt;- &amp;nbsp;return(scsi_read_map(d,p,begin,sectors,i_read_mmc3));
&lt;br&gt;-}
&lt;br&gt;-
&lt;br&gt;-long scsi_read_mmcB (cdrom_drive *d, void *p, long begin, 
&lt;br&gt;-			 &amp;nbsp; &amp;nbsp; &amp;nbsp; long sectors){
&lt;br&gt;- &amp;nbsp;return(scsi_read_map(d,p,begin,sectors,i_read_mmcB));
&lt;br&gt;-}
&lt;br&gt;-
&lt;br&gt;-long scsi_read_mmc2B (cdrom_drive *d, void *p, long begin, 
&lt;br&gt;-			 &amp;nbsp; &amp;nbsp; &amp;nbsp; long sectors){
&lt;br&gt;- &amp;nbsp;return(scsi_read_map(d,p,begin,sectors,i_read_mmc2B));
&lt;br&gt;-}
&lt;br&gt;-
&lt;br&gt;-long scsi_read_mmc3B (cdrom_drive *d, void *p, long begin, 
&lt;br&gt;-			 &amp;nbsp; &amp;nbsp; &amp;nbsp; long sectors){
&lt;br&gt;- &amp;nbsp;return(scsi_read_map(d,p,begin,sectors,i_read_mmc3B));
&lt;br&gt;-}
&lt;br&gt;-
&lt;br&gt;&amp;nbsp;long scsi_read_msf (cdrom_drive *d, void *p, long begin, 
&lt;br&gt;&amp;nbsp;			 &amp;nbsp; &amp;nbsp; &amp;nbsp; long sectors){
&lt;br&gt;&amp;nbsp; &amp;nbsp;return(scsi_read_map(d,p,begin,sectors,i_read_msf));
&lt;br&gt;@@ -1305,7 +1321,7 @@
&lt;br&gt;&amp;nbsp;		 &amp;nbsp; &amp;nbsp; &amp;nbsp; long sectors);
&lt;br&gt;&amp;nbsp; &amp;nbsp;unsigned char density;
&lt;br&gt;&amp;nbsp; &amp;nbsp;
&lt;br&gt;- &amp;nbsp;int16_t *buff=malloc(CD_FRAMESIZE_RAW);
&lt;br&gt;+ &amp;nbsp;int16_t *buff=malloc(d-&amp;gt;private_data-&amp;gt;data_size);
&lt;br&gt;&amp;nbsp;
&lt;br&gt;&amp;nbsp; &amp;nbsp;cdmessage(d,&amp;quot;Verifying CDDA command set...\n&amp;quot;);
&lt;br&gt;&amp;nbsp;
&lt;br&gt;@@ -1401,33 +1417,51 @@
&lt;br&gt;&amp;nbsp;	 &amp;nbsp;
&lt;br&gt;&amp;nbsp;	 &amp;nbsp;/* 2 through 10 do not allow/require density */
&lt;br&gt;&amp;nbsp;	case 2:
&lt;br&gt;-	 &amp;nbsp;d-&amp;gt;read_audio=scsi_read_mmcB;
&lt;br&gt;-	 &amp;nbsp;rs=&amp;quot;be 02,10&amp;quot;;
&lt;br&gt;+	 &amp;nbsp;d-&amp;gt;private_data-&amp;gt;mmc_use_sectortype_cdda = 0;
&lt;br&gt;+	 &amp;nbsp;d-&amp;gt;private_data-&amp;gt;mmc_use_dap = 0;
&lt;br&gt;+	 &amp;nbsp;d-&amp;gt;private_data-&amp;gt;mmc_use_channel_selection_all = 0;
&lt;br&gt;+	 &amp;nbsp;d-&amp;gt;read_audio=scsi_read_mmc;
&lt;br&gt;+	 &amp;nbsp;rs=&amp;quot;be 00,10&amp;quot;;
&lt;br&gt;&amp;nbsp;	 &amp;nbsp;if(i==0)break;
&lt;br&gt;&amp;nbsp;	case 3:
&lt;br&gt;&amp;nbsp;	 &amp;nbsp;j=3;
&lt;br&gt;-	 &amp;nbsp;d-&amp;gt;read_audio=scsi_read_mmc2B;
&lt;br&gt;-	 &amp;nbsp;rs=&amp;quot;be 02,f8&amp;quot;;
&lt;br&gt;+	 &amp;nbsp;d-&amp;gt;private_data-&amp;gt;mmc_use_sectortype_cdda = 0;
&lt;br&gt;+	 &amp;nbsp;d-&amp;gt;private_data-&amp;gt;mmc_use_dap = 0;
&lt;br&gt;+	 &amp;nbsp;d-&amp;gt;private_data-&amp;gt;mmc_use_channel_selection_all = 1;
&lt;br&gt;+	 &amp;nbsp;d-&amp;gt;read_audio=scsi_read_mmc;
&lt;br&gt;+	 &amp;nbsp;rs=&amp;quot;be 00,f8&amp;quot;;
&lt;br&gt;&amp;nbsp;	 &amp;nbsp;if(i==0)break;
&lt;br&gt;&amp;nbsp;	case 4:
&lt;br&gt;&amp;nbsp;	 &amp;nbsp;j=4;
&lt;br&gt;-	 &amp;nbsp;d-&amp;gt;read_audio=scsi_read_mmc3B;
&lt;br&gt;-	 &amp;nbsp;rs=&amp;quot;be 06,f8&amp;quot;;
&lt;br&gt;+ &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;d-&amp;gt;private_data-&amp;gt;mmc_use_sectortype_cdda = 1;
&lt;br&gt;+ &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;d-&amp;gt;private_data-&amp;gt;mmc_use_dap = 0;
&lt;br&gt;+ &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;d-&amp;gt;private_data-&amp;gt;mmc_use_channel_selection_all = 1;
&lt;br&gt;+ &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;d-&amp;gt;read_audio=scsi_read_mmc;
&lt;br&gt;+ &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;rs=&amp;quot;be 04,f8&amp;quot;;
&lt;br&gt;&amp;nbsp;	 &amp;nbsp;if(i==0)break;
&lt;br&gt;&amp;nbsp;	case 5:
&lt;br&gt;&amp;nbsp;	 &amp;nbsp;j=5;
&lt;br&gt;+	 &amp;nbsp;d-&amp;gt;private_data-&amp;gt;mmc_use_sectortype_cdda = 0;
&lt;br&gt;+	 &amp;nbsp;d-&amp;gt;private_data-&amp;gt;mmc_use_dap = 1;
&lt;br&gt;+	 &amp;nbsp;d-&amp;gt;private_data-&amp;gt;mmc_use_channel_selection_all = 0;
&lt;br&gt;&amp;nbsp;	 &amp;nbsp;d-&amp;gt;read_audio=scsi_read_mmc;
&lt;br&gt;-	 &amp;nbsp;rs=&amp;quot;be 00,10&amp;quot;;
&lt;br&gt;+	 &amp;nbsp;rs=&amp;quot;be 02,10&amp;quot;;
&lt;br&gt;&amp;nbsp;	 &amp;nbsp;if(i==0)break;
&lt;br&gt;&amp;nbsp;	case 6:
&lt;br&gt;&amp;nbsp;	 &amp;nbsp;j=6;
&lt;br&gt;-	 &amp;nbsp;d-&amp;gt;read_audio=scsi_read_mmc2;
&lt;br&gt;-	 &amp;nbsp;rs=&amp;quot;be 00,f8&amp;quot;;
&lt;br&gt;+	 &amp;nbsp;d-&amp;gt;private_data-&amp;gt;mmc_use_sectortype_cdda = 0;
&lt;br&gt;+	 &amp;nbsp;d-&amp;gt;private_data-&amp;gt;mmc_use_dap = 1;
&lt;br&gt;+	 &amp;nbsp;d-&amp;gt;private_data-&amp;gt;mmc_use_channel_selection_all = 1;
&lt;br&gt;+	 &amp;nbsp;d-&amp;gt;read_audio=scsi_read_mmc;
&lt;br&gt;+	 &amp;nbsp;rs=&amp;quot;be 02,f8&amp;quot;;
&lt;br&gt;&amp;nbsp;	 &amp;nbsp;if(i==0)break;
&lt;br&gt;&amp;nbsp;	case 7:
&lt;br&gt;&amp;nbsp;	 &amp;nbsp;j=7;
&lt;br&gt;-	 &amp;nbsp;d-&amp;gt;read_audio=scsi_read_mmc3;
&lt;br&gt;-	 &amp;nbsp;rs=&amp;quot;be 04,f8&amp;quot;;
&lt;br&gt;+	 &amp;nbsp;d-&amp;gt;private_data-&amp;gt;mmc_use_sectortype_cdda = 1;
&lt;br&gt;+	 &amp;nbsp;d-&amp;gt;private_data-&amp;gt;mmc_use_dap = 1;
&lt;br&gt;+	 &amp;nbsp;d-&amp;gt;private_data-&amp;gt;mmc_use_channel_selection_all = 1;
&lt;br&gt;+	 &amp;nbsp;d-&amp;gt;read_audio=scsi_read_mmc;
&lt;br&gt;+	 &amp;nbsp;rs=&amp;quot;be 06,f8&amp;quot;;
&lt;br&gt;&amp;nbsp;	 &amp;nbsp;if(i==0)break;
&lt;br&gt;&amp;nbsp;	case 8:
&lt;br&gt;&amp;nbsp;	 &amp;nbsp;j=8;
&lt;br&gt;@@ -1547,11 +1581,7 @@
&lt;br&gt;&amp;nbsp; &amp;nbsp;long i;
&lt;br&gt;&amp;nbsp;
&lt;br&gt;&amp;nbsp; &amp;nbsp;if(!(d-&amp;gt;read_audio==scsi_read_mmc ||
&lt;br&gt;- &amp;nbsp; &amp;nbsp; d-&amp;gt;read_audio==scsi_read_mmc2 ||
&lt;br&gt;- &amp;nbsp; &amp;nbsp; d-&amp;gt;read_audio==scsi_read_mmc3 ||
&lt;br&gt;- &amp;nbsp; &amp;nbsp; d-&amp;gt;read_audio==scsi_read_mmcB ||
&lt;br&gt;- &amp;nbsp; &amp;nbsp; d-&amp;gt;read_audio==scsi_read_mmc2B ||
&lt;br&gt;- &amp;nbsp; &amp;nbsp; &amp;nbsp; d-&amp;gt;read_audio==scsi_read_mmc3B)){
&lt;br&gt;+ &amp;nbsp; &amp;nbsp; d-&amp;gt;read_audio==scsi_read_mmc2)){
&lt;br&gt;&amp;nbsp;
&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp;cdmessage(d,&amp;quot;This command set may use a Force Unit Access bit.&amp;quot;);
&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp;cdmessage(d,&amp;quot;\nChecking drive for FUA bit support...\n&amp;quot;);
&lt;br&gt;@@ -1627,17 +1657,25 @@
&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp;if((b[0]&amp;0x3F)==0x2A){
&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;/* MMC style drive! */
&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;d-&amp;gt;is_mmc=1;
&lt;br&gt;+ &amp;nbsp; &amp;nbsp; &amp;nbsp;d-&amp;gt;private_data-&amp;gt;mmc_has_c2 = 0;
&lt;br&gt;+ &amp;nbsp; &amp;nbsp; &amp;nbsp;d-&amp;gt;private_data-&amp;gt;mmc_use_c2 = 0;
&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;
&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;if(b[1]&amp;gt;=4){
&lt;br&gt;&amp;nbsp;	if(b[5]&amp;0x1){
&lt;br&gt;&amp;nbsp;	 &amp;nbsp;cdmessage(d,&amp;quot;\tDrive is MMC style\n&amp;quot;);
&lt;br&gt;-	 &amp;nbsp;return(1);
&lt;br&gt;&amp;nbsp;	}else{
&lt;br&gt;&amp;nbsp;	 &amp;nbsp;cdmessage(d,&amp;quot;\tDrive is MMC, but reports CDDA incapable.\n&amp;quot;);
&lt;br&gt;&amp;nbsp;	 &amp;nbsp;cdmessage(d,&amp;quot;\tIt will likely not be able to read audio data.\n&amp;quot;);
&lt;br&gt;-	 &amp;nbsp;return(1);
&lt;br&gt;&amp;nbsp;	}
&lt;br&gt;+	if (b[5]&amp;0x10)
&lt;br&gt;+	{
&lt;br&gt;+	 &amp;nbsp;d-&amp;gt;private_data-&amp;gt;mmc_has_c2 = 1;
&lt;br&gt;+	 &amp;nbsp;/* TODO: Make this optional? */
&lt;br&gt;+	 &amp;nbsp;d-&amp;gt;private_data-&amp;gt;mmc_use_c2 = 1;
&lt;br&gt;+	 &amp;nbsp;cdmessage(d,&amp;quot;\tDrive supports reporting C2 errors\n&amp;quot;);
&lt;br&gt;+	}
&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;}
&lt;br&gt;+ &amp;nbsp; &amp;nbsp; &amp;nbsp;return 1;
&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp;}
&lt;br&gt;&amp;nbsp; &amp;nbsp;}
&lt;br&gt;&amp;nbsp; &amp;nbsp;
&lt;br&gt;@@ -1683,16 +1721,29 @@
&lt;br&gt;&amp;nbsp; &amp;nbsp;d-&amp;gt;enable_cdda = Dummy;
&lt;br&gt;&amp;nbsp; &amp;nbsp;d-&amp;gt;read_audio = scsi_read_D8;
&lt;br&gt;&amp;nbsp; &amp;nbsp;d-&amp;gt;fua=0x0;
&lt;br&gt;+ &amp;nbsp;d-&amp;gt;private_data-&amp;gt;data_size = CD_FRAMESIZE_RAW;
&lt;br&gt;+ &amp;nbsp;d-&amp;gt;private_data-&amp;gt;c2_buffer=NULL;
&lt;br&gt;&amp;nbsp; &amp;nbsp;if(d-&amp;gt;is_atapi)d-&amp;gt;lun=0; /* it should already be; just to make sure */
&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;
&lt;br&gt;&amp;nbsp; &amp;nbsp;if(d-&amp;gt;is_mmc){
&lt;br&gt;- &amp;nbsp; &amp;nbsp;d-&amp;gt;read_audio = scsi_read_mmc2B;
&lt;br&gt;+ &amp;nbsp; &amp;nbsp;d-&amp;gt;private_data-&amp;gt;mmc_use_sectortype_cdda = 0;
&lt;br&gt;+ &amp;nbsp; &amp;nbsp;d-&amp;gt;private_data-&amp;gt;mmc_use_dap = 0;
&lt;br&gt;+ &amp;nbsp; &amp;nbsp;d-&amp;gt;private_data-&amp;gt;mmc_use_channel_selection_all = 1;
&lt;br&gt;+ &amp;nbsp; &amp;nbsp;d-&amp;gt;read_audio = scsi_read_mmc;
&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp;d-&amp;gt;bigendianp=0;
&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp;check_exceptions(d,mmc_list);
&lt;br&gt;+ &amp;nbsp; &amp;nbsp;if (d-&amp;gt;private_data-&amp;gt;mmc_use_c2)
&lt;br&gt;+ &amp;nbsp; &amp;nbsp;{
&lt;br&gt;+ &amp;nbsp; &amp;nbsp; &amp;nbsp; /* 1 bit for every byte */
&lt;br&gt;+ &amp;nbsp; &amp;nbsp; &amp;nbsp; d-&amp;gt;private_data-&amp;gt;data_size += CD_C2BUFFERSIZE;
&lt;br&gt;+ &amp;nbsp; &amp;nbsp;}
&lt;br&gt;&amp;nbsp; &amp;nbsp;}else{
&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp;if(d-&amp;gt;is_atapi){
&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;/* Not MMC maybe still uses 0xbe */
&lt;br&gt;- &amp;nbsp; &amp;nbsp; &amp;nbsp;d-&amp;gt;read_audio = scsi_read_mmc2B;
&lt;br&gt;+ &amp;nbsp; &amp;nbsp; &amp;nbsp;d-&amp;gt;private_data-&amp;gt;mmc_use_sectortype_cdda = 0;
&lt;br&gt;+ &amp;nbsp; &amp;nbsp; &amp;nbsp;d-&amp;gt;private_data-&amp;gt;mmc_use_dap = 0;
&lt;br&gt;+ &amp;nbsp; &amp;nbsp; &amp;nbsp;d-&amp;gt;private_data-&amp;gt;mmc_use_channel_selection_all = 1;
&lt;br&gt;+ &amp;nbsp; &amp;nbsp; &amp;nbsp;d-&amp;gt;read_audio = scsi_read_mmc;
&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;d-&amp;gt;bigendianp=0;
&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;check_exceptions(d,atapi_list);
&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp;}else{
&lt;br&gt;@@ -1725,8 +1776,11 @@
&lt;br&gt;&amp;nbsp; &amp;nbsp;check_cache(d);
&lt;br&gt;&amp;nbsp;
&lt;br&gt;&amp;nbsp; &amp;nbsp;d-&amp;gt;error_retry=1;
&lt;br&gt;- &amp;nbsp;d-&amp;gt;private_data-&amp;gt;sg_hd=realloc(d-&amp;gt;private_data-&amp;gt;sg_hd,d-&amp;gt;nsectors*CD_FRAMESIZE_RAW + SG_OFF + 128);
&lt;br&gt;+ &amp;nbsp;d-&amp;gt;private_data-&amp;gt;sg_hd=realloc(d-&amp;gt;private_data-&amp;gt;sg_hd,d-&amp;gt;nsectors*d-&amp;gt;private_data-&amp;gt;data_size + SG_OFF + 128);
&lt;br&gt;&amp;nbsp; &amp;nbsp;d-&amp;gt;private_data-&amp;gt;sg_buffer=((unsigned char *)d-&amp;gt;private_data-&amp;gt;sg_hd)+SG_OFF;
&lt;br&gt;+ &amp;nbsp;/* TODO: Should get reallocated? &amp;nbsp;But where should the initial allocation
&lt;br&gt;+ &amp;nbsp; * be in that case? &amp;nbsp;Never gets free()d. */
&lt;br&gt;+ &amp;nbsp;d-&amp;gt;private_data-&amp;gt;c2_buffer=malloc(d-&amp;gt;nsectors*(CD_C2BUFFERSIZE));
&lt;br&gt;&amp;nbsp; &amp;nbsp;d-&amp;gt;report_all=1;
&lt;br&gt;&amp;nbsp; &amp;nbsp;return(0);
&lt;br&gt;&amp;nbsp;}
&lt;br&gt;Index: interface/low_interface.h
&lt;br&gt;===================================================================
&lt;br&gt;--- interface/low_interface.h	(revision 16022)
&lt;br&gt;+++ interface/low_interface.h	(working copy)
&lt;br&gt;@@ -100,8 +100,17 @@
&lt;br&gt;&amp;nbsp;struct cdda_private_data {
&lt;br&gt;&amp;nbsp; &amp;nbsp;struct sg_header *sg_hd;
&lt;br&gt;&amp;nbsp; &amp;nbsp;unsigned char *sg_buffer; /* points into sg_hd */
&lt;br&gt;+ &amp;nbsp;unsigned char *c2_buffer;
&lt;br&gt;&amp;nbsp; &amp;nbsp;clockid_t clock;
&lt;br&gt;&amp;nbsp; &amp;nbsp;int last_milliseconds;
&lt;br&gt;+ &amp;nbsp;int data_size;
&lt;br&gt;+
&lt;br&gt;+ &amp;nbsp;int mmc_has_c2;
&lt;br&gt;+ &amp;nbsp;int mmc_use_c2;
&lt;br&gt;+
&lt;br&gt;+ &amp;nbsp;int mmc_use_sectortype_cdda;
&lt;br&gt;+ &amp;nbsp;int mmc_use_dap;
&lt;br&gt;+ &amp;nbsp;int mmc_use_channel_selection_all;
&lt;br&gt;&amp;nbsp;};
&lt;br&gt;&amp;nbsp;
&lt;br&gt;&amp;nbsp;#define MAX_RETRIES 8
&lt;br&gt;&lt;/tt&gt;&lt;hr align=&quot;left&quot; width=&quot;300&quot; /&gt;&lt;br /&gt;_______________________________________________
&lt;br&gt;Paranoia-dev mailing list
&lt;br&gt;&lt;a href=&quot;http://old.nabble.com/user/SendEmail.jtp?type=post&amp;post=23691953&amp;i=0&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;Paranoia-dev@...&lt;/a&gt;
&lt;br&gt;&lt;a href=&quot;http://lists.xiph.org/mailman/listinfo/paranoia-dev&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;http://lists.xiph.org/mailman/listinfo/paranoia-dev&lt;/a&gt;&lt;br&gt;&lt;p&gt;From forum: &lt;a href=&quot;http://old.nabble.com/Cd-Paranoia---Dev-f467.html&quot; embed=&quot;fixTarget[467]&quot; target=&quot;_top&quot; &gt;Cd-Paranoia - Dev&lt;/a&gt;&lt;/p&gt;</content>
	<link rel="alternate" type="text/html" href="http://old.nabble.com/C2-error-support.-tp23670067p23691953.html" />
</entry>

<entry>
	<id>tag:old.nabble.com,2006:post-23670067</id>
	<title>C2 error support.</title>
	<published>2009-05-22T05:57:24Z</published>
	<updated>2009-05-22T05:57:24Z</updated>
	<author>
		<name>Kurt Roeckx</name>
	</author>
	<content type="html">Hi,
&lt;br&gt;&lt;br&gt;I'm looking into adding support for reading the C2 error
&lt;br&gt;information, and probably some other things like CD-TEXT,
&lt;br&gt;CD+MIDI, CD+G, ISRC, whatever info I can read from the disc.
&lt;br&gt;&lt;br&gt;It looks like I need to extend the API for this. &amp;nbsp;For instance,
&lt;br&gt;for the C2 error information you get 1 bit per read byte
&lt;br&gt;to indicate if there was an error reading that byte or not.
&lt;br&gt;&lt;br&gt;I see several ways to do this:
&lt;br&gt;- Create new versions of exising functions with extra parameters
&lt;br&gt;&amp;nbsp; (and different name)
&lt;br&gt;- Create functions that return the extra info from the last
&lt;br&gt;&amp;nbsp; call.
&lt;br&gt;- Setting reading C2/subchannel info default to off, and return
&lt;br&gt;&amp;nbsp; the data exactly like the drive returns it, so just after the
&lt;br&gt;&amp;nbsp; main data. &amp;nbsp;It looks like this atleast requires a new function
&lt;br&gt;&amp;nbsp; to set the options.
&lt;br&gt;- Read the data by default, if supported by the drive, and instead
&lt;br&gt;&amp;nbsp; of adding it after the main data of each sector, change it so
&lt;br&gt;&amp;nbsp; that the main data of all sectors are still returned first,
&lt;br&gt;&amp;nbsp; and then the other data.
&lt;br&gt;&lt;br&gt;The R-W subchannels can contain interleaved/error corrected
&lt;br&gt;info like CD-TEXT, and not all drives support returning
&lt;br&gt;that data deinterleaved and error corrected, but most do
&lt;br&gt;support reading the RAW data. &amp;nbsp;So we might need to implement
&lt;br&gt;that ourself.
&lt;br&gt;&lt;br&gt;So I'm wondering what you think the best option is. &amp;nbsp;I'm currently
&lt;br&gt;in favour of the second option.
&lt;br&gt;&lt;br&gt;&lt;br&gt;Kurt
&lt;br&gt;&lt;br&gt;_______________________________________________
&lt;br&gt;Paranoia-dev mailing list
&lt;br&gt;&lt;a href=&quot;http://old.nabble.com/user/SendEmail.jtp?type=post&amp;post=23670067&amp;i=0&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;Paranoia-dev@...&lt;/a&gt;
&lt;br&gt;&lt;a href=&quot;http://lists.xiph.org/mailman/listinfo/paranoia-dev&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;http://lists.xiph.org/mailman/listinfo/paranoia-dev&lt;/a&gt;&lt;br&gt;&lt;p&gt;From forum: &lt;a href=&quot;http://old.nabble.com/Cd-Paranoia---Dev-f467.html&quot; embed=&quot;fixTarget[467]&quot; target=&quot;_top&quot; &gt;Cd-Paranoia - Dev&lt;/a&gt;&lt;/p&gt;</content>
	<link rel="alternate" type="text/html" href="http://old.nabble.com/C2-error-support.-tp23670067p23670067.html" />
</entry>

<entry>
	<id>tag:old.nabble.com,2006:post-23625555</id>
	<title>Re: span argument ?</title>
	<published>2009-05-19T15:25:12Z</published>
	<updated>2009-05-19T15:25:12Z</updated>
	<author>
		<name>xiphmont</name>
	</author>
	<content type="html">On Tue, May 19, 2009 at 6:20 PM, drew bodker
&lt;br&gt;&amp;lt;&lt;a href=&quot;http://old.nabble.com/user/SendEmail.jtp?type=post&amp;post=23625555&amp;i=0&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;dbodker@...&lt;/a&gt;&amp;gt; wrote:
&lt;br&gt;&amp;gt; Hello,
&lt;br&gt;&amp;gt;
&lt;br&gt;&amp;gt; Is there a Span argument that will consolidate all tracks to one wav file?
&lt;br&gt;&lt;br&gt;Yes. &amp;nbsp;cdparanoia 1-
&lt;br&gt;&lt;br&gt;Monty
&lt;br&gt;_______________________________________________
&lt;br&gt;Paranoia mailing list
&lt;br&gt;&lt;a href=&quot;http://old.nabble.com/user/SendEmail.jtp?type=post&amp;post=23625555&amp;i=1&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;Paranoia@...&lt;/a&gt;
&lt;br&gt;&lt;a href=&quot;http://lists.xiph.org/mailman/listinfo/paranoia&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;http://lists.xiph.org/mailman/listinfo/paranoia&lt;/a&gt;&lt;br&gt;&lt;p&gt;From forum: &lt;a href=&quot;http://old.nabble.com/Cd-Paranoia---General-f468.html&quot; embed=&quot;fixTarget[468]&quot; target=&quot;_top&quot; &gt;Cd-Paranoia - General&lt;/a&gt;&lt;/p&gt;</content>
	<link rel="alternate" type="text/html" href="http://old.nabble.com/span-argument---tp23625477p23625555.html" />
</entry>

<entry>
	<id>tag:old.nabble.com,2006:post-23625477</id>
	<title>span argument ?</title>
	<published>2009-05-19T15:20:11Z</published>
	<updated>2009-05-19T15:20:11Z</updated>
	<author>
		<name>drew bodker</name>
	</author>
	<content type="html">&lt;!DOCTYPE HTML PUBLIC &quot;-//W3C//DTD HTML 4.0 TRANSITIONAL//EN&quot;&gt;
&lt;HTML&gt;
&lt;HEAD&gt;
  &lt;META HTTP-EQUIV=&quot;Content-Type&quot; CONTENT=&quot;text/html; CHARSET=UTF-8&quot;&gt;
  &lt;META NAME=&quot;GENERATOR&quot; CONTENT=&quot;GtkHTML/3.26.0&quot;&gt;
&lt;/HEAD&gt;
&lt;BODY&gt;
Hello,&lt;BR&gt;
&lt;BR&gt;
Is there a Span argument that will consolidate all tracks to one wav file?&amp;nbsp; &lt;BR&gt;
&lt;BR&gt;
Thanks,&lt;BR&gt;
&lt;BR&gt;
drew&lt;BR&gt;
&lt;TABLE CELLSPACING=&quot;0&quot; CELLPADDING=&quot;0&quot; WIDTH=&quot;100%&quot;&gt;
&lt;TR&gt;
&lt;TD&gt;
&lt;BR&gt;
&lt;/TD&gt;
&lt;/TR&gt;
&lt;/TABLE&gt;
&lt;/BODY&gt;
&lt;/HTML&gt;
&lt;br /&gt;_______________________________________________
&lt;br&gt;Paranoia mailing list
&lt;br&gt;&lt;a href=&quot;http://old.nabble.com/user/SendEmail.jtp?type=post&amp;post=23625477&amp;i=0&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;Paranoia@...&lt;/a&gt;
&lt;br&gt;&lt;a href=&quot;http://lists.xiph.org/mailman/listinfo/paranoia&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;http://lists.xiph.org/mailman/listinfo/paranoia&lt;/a&gt;&lt;br&gt;&lt;p&gt;From forum: &lt;a href=&quot;http://old.nabble.com/Cd-Paranoia---General-f468.html&quot; embed=&quot;fixTarget[468]&quot; target=&quot;_top&quot; &gt;Cd-Paranoia - General&lt;/a&gt;&lt;/p&gt;</content>
	<link rel="alternate" type="text/html" href="http://old.nabble.com/span-argument---tp23625477p23625477.html" />
</entry>

<entry>
	<id>tag:old.nabble.com,2006:post-21878698</id>
	<title>Re: cdparanoia, sector offset and last track</title>
	<published>2009-02-06T11:00:43Z</published>
	<updated>2009-02-06T11:00:43Z</updated>
	<author>
		<name>Paul C. Bryan</name>
	</author>
	<content type="html">Okay, thanks this makes sense. The end flag I was referring to was the
&lt;br&gt;i_end_case function in paranoia.c.
&lt;br&gt;&lt;br&gt;-----Original Message-----
&lt;br&gt;From: &lt;a href=&quot;http://old.nabble.com/user/SendEmail.jtp?type=post&amp;post=21878698&amp;i=0&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;xiphmont@...&lt;/a&gt;
&lt;br&gt;To: Paul C. Bryan &amp;lt;&lt;a href=&quot;http://old.nabble.com/user/SendEmail.jtp?type=post&amp;post=21878698&amp;i=1&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;email@...&lt;/a&gt;&amp;gt;
&lt;br&gt;Cc: &lt;a href=&quot;http://old.nabble.com/user/SendEmail.jtp?type=post&amp;post=21878698&amp;i=2&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;paranoia@...&lt;/a&gt;
&lt;br&gt;Subject: Re: [Paranoia] cdparanoia, sector offset and last track
&lt;br&gt;Date: Fri, 6 Feb 2009 13:56:36 -0500
&lt;br&gt;&lt;br&gt;On Fri, Feb 6, 2009 at 1:41 PM, Paul C. Bryan &amp;lt;&lt;a href=&quot;http://old.nabble.com/user/SendEmail.jtp?type=post&amp;post=21878698&amp;i=3&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;email@...&lt;/a&gt;&amp;gt; wrote:
&lt;br&gt;&amp;gt; So the &amp;quot;end&amp;quot; flag isn't set until the last (corrected) sector has been
&lt;br&gt;&amp;gt; read?
&lt;br&gt;&lt;br&gt;I'm not sure what you mean by the 'end flag'. &amp;nbsp;The :^D in the status line?
&lt;br&gt;&lt;br&gt;Oh, BTW, if the sector offset causes reads past the end of the
&lt;br&gt;physical session and this generates read errors, the code will
&lt;br&gt;eventually force a skip and fill in areas it couldn't read with
&lt;br&gt;zeros.... so it is in fact possible that the end of the disc could be
&lt;br&gt;'padded' with zeros when a positive offset is used... but this is more
&lt;br&gt;of a last-ditch strategy for dealing with an unreadable area than it
&lt;br&gt;is intentional padding.
&lt;br&gt;&lt;br&gt;Monty
&lt;br&gt;&lt;br&gt;_______________________________________________
&lt;br&gt;Paranoia mailing list
&lt;br&gt;&lt;a href=&quot;http://old.nabble.com/user/SendEmail.jtp?type=post&amp;post=21878698&amp;i=4&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;Paranoia@...&lt;/a&gt;
&lt;br&gt;&lt;a href=&quot;http://lists.xiph.org/mailman/listinfo/paranoia&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;http://lists.xiph.org/mailman/listinfo/paranoia&lt;/a&gt;&lt;br&gt;&lt;p&gt;From forum: &lt;a href=&quot;http://old.nabble.com/Cd-Paranoia---General-f468.html&quot; embed=&quot;fixTarget[468]&quot; target=&quot;_top&quot; &gt;Cd-Paranoia - General&lt;/a&gt;&lt;/p&gt;</content>
	<link rel="alternate" type="text/html" href="http://old.nabble.com/cdparanoia%2C-sector-offset-and-last-track-tp21864807p21878698.html" />
</entry>

<entry>
	<id>tag:old.nabble.com,2006:post-21878623</id>
	<title>Re: cdparanoia, sector offset and last track</title>
	<published>2009-02-06T10:56:36Z</published>
	<updated>2009-02-06T10:56:36Z</updated>
	<author>
		<name>xiphmont</name>
	</author>
	<content type="html">On Fri, Feb 6, 2009 at 1:41 PM, Paul C. Bryan &amp;lt;&lt;a href=&quot;http://old.nabble.com/user/SendEmail.jtp?type=post&amp;post=21878623&amp;i=0&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;email@...&lt;/a&gt;&amp;gt; wrote:
&lt;br&gt;&amp;gt; So the &amp;quot;end&amp;quot; flag isn't set until the last (corrected) sector has been
&lt;br&gt;&amp;gt; read?
&lt;br&gt;&lt;br&gt;I'm not sure what you mean by the 'end flag'. &amp;nbsp;The :^D in the status line?
&lt;br&gt;&lt;br&gt;Oh, BTW, if the sector offset causes reads past the end of the
&lt;br&gt;physical session and this generates read errors, the code will
&lt;br&gt;eventually force a skip and fill in areas it couldn't read with
&lt;br&gt;zeros.... so it is in fact possible that the end of the disc could be
&lt;br&gt;'padded' with zeros when a positive offset is used... but this is more
&lt;br&gt;of a last-ditch strategy for dealing with an unreadable area than it
&lt;br&gt;is intentional padding.
&lt;br&gt;&lt;br&gt;Monty
&lt;br&gt;_______________________________________________
&lt;br&gt;Paranoia mailing list
&lt;br&gt;&lt;a href=&quot;http://old.nabble.com/user/SendEmail.jtp?type=post&amp;post=21878623&amp;i=1&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;Paranoia@...&lt;/a&gt;
&lt;br&gt;&lt;a href=&quot;http://lists.xiph.org/mailman/listinfo/paranoia&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;http://lists.xiph.org/mailman/listinfo/paranoia&lt;/a&gt;&lt;br&gt;&lt;p&gt;From forum: &lt;a href=&quot;http://old.nabble.com/Cd-Paranoia---General-f468.html&quot; embed=&quot;fixTarget[468]&quot; target=&quot;_top&quot; &gt;Cd-Paranoia - General&lt;/a&gt;&lt;/p&gt;</content>
	<link rel="alternate" type="text/html" href="http://old.nabble.com/cdparanoia%2C-sector-offset-and-last-track-tp21864807p21878623.html" />
</entry>

<entry>
	<id>tag:old.nabble.com,2006:post-21878369</id>
	<title>Re: cdparanoia, sector offset and last track</title>
	<published>2009-02-06T10:41:20Z</published>
	<updated>2009-02-06T10:41:20Z</updated>
	<author>
		<name>Paul C. Bryan</name>
	</author>
	<content type="html">So the &amp;quot;end&amp;quot; flag isn't set until the last (corrected) sector has been
&lt;br&gt;read?
&lt;br&gt;&lt;br&gt;-----Original Message-----
&lt;br&gt;From: &lt;a href=&quot;http://old.nabble.com/user/SendEmail.jtp?type=post&amp;post=21878369&amp;i=0&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;xiphmont@...&lt;/a&gt;
&lt;br&gt;To: Paul C. Bryan &amp;lt;&lt;a href=&quot;http://old.nabble.com/user/SendEmail.jtp?type=post&amp;post=21878369&amp;i=1&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;email@...&lt;/a&gt;&amp;gt;
&lt;br&gt;Cc: &lt;a href=&quot;http://old.nabble.com/user/SendEmail.jtp?type=post&amp;post=21878369&amp;i=2&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;paranoia@...&lt;/a&gt;
&lt;br&gt;Subject: Re: [Paranoia] cdparanoia, sector offset and last track
&lt;br&gt;Date: Fri, 6 Feb 2009 13:23:35 -0500
&lt;br&gt;&lt;br&gt;On Thu, Feb 5, 2009 at 7:50 PM, Paul C. Bryan &amp;lt;&lt;a href=&quot;http://old.nabble.com/user/SendEmail.jtp?type=post&amp;post=21878369&amp;i=3&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;email@...&lt;/a&gt;&amp;gt; wrote:
&lt;br&gt;&amp;gt; Dear fellow users and Monty, o admired king of cdparanoia:
&lt;br&gt;&amp;gt;
&lt;br&gt;&amp;gt; I've dug into the code a bit, and I *think* the way cdparanoia works is
&lt;br&gt;&amp;gt; it will not try to read past what it thinks is the last sector of the
&lt;br&gt;&amp;gt; last track. If you set a positive sector offset, this would mean it pads
&lt;br&gt;&amp;gt; the last track with zeroes. Am I correct?
&lt;br&gt;&lt;br&gt;Actually, passing an offset (with -t or -O) is supposed to be handled
&lt;br&gt;as a case of 'the drive is reporting boundaries incorrectly'. &amp;nbsp;The
&lt;br&gt;information returned by the TOC query is adjusted by the provided
&lt;br&gt;offset, so reads are done as if the CDROM drive had reported a table
&lt;br&gt;of contents with the adjusted offsets. &amp;nbsp;The hardware may balk at this,
&lt;br&gt;of course...
&lt;br&gt;&lt;br&gt;Monty
&lt;br&gt;&lt;br&gt;_______________________________________________
&lt;br&gt;Paranoia mailing list
&lt;br&gt;&lt;a href=&quot;http://old.nabble.com/user/SendEmail.jtp?type=post&amp;post=21878369&amp;i=4&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;Paranoia@...&lt;/a&gt;
&lt;br&gt;&lt;a href=&quot;http://lists.xiph.org/mailman/listinfo/paranoia&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;http://lists.xiph.org/mailman/listinfo/paranoia&lt;/a&gt;&lt;br&gt;&lt;p&gt;From forum: &lt;a href=&quot;http://old.nabble.com/Cd-Paranoia---General-f468.html&quot; embed=&quot;fixTarget[468]&quot; target=&quot;_top&quot; &gt;Cd-Paranoia - General&lt;/a&gt;&lt;/p&gt;</content>
	<link rel="alternate" type="text/html" href="http://old.nabble.com/cdparanoia%2C-sector-offset-and-last-track-tp21864807p21878369.html" />
</entry>

<entry>
	<id>tag:old.nabble.com,2006:post-21878036</id>
	<title>Re: cdparanoia, sector offset and last track</title>
	<published>2009-02-06T10:23:35Z</published>
	<updated>2009-02-06T10:23:35Z</updated>
	<author>
		<name>xiphmont</name>
	</author>
	<content type="html">On Thu, Feb 5, 2009 at 7:50 PM, Paul C. Bryan &amp;lt;&lt;a href=&quot;http://old.nabble.com/user/SendEmail.jtp?type=post&amp;post=21878036&amp;i=0&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;email@...&lt;/a&gt;&amp;gt; wrote:
&lt;br&gt;&amp;gt; Dear fellow users and Monty, o admired king of cdparanoia:
&lt;br&gt;&amp;gt;
&lt;br&gt;&amp;gt; I've dug into the code a bit, and I *think* the way cdparanoia works is
&lt;br&gt;&amp;gt; it will not try to read past what it thinks is the last sector of the
&lt;br&gt;&amp;gt; last track. If you set a positive sector offset, this would mean it pads
&lt;br&gt;&amp;gt; the last track with zeroes. Am I correct?
&lt;br&gt;&lt;br&gt;Actually, passing an offset (with -t or -O) is supposed to be handled
&lt;br&gt;as a case of 'the drive is reporting boundaries incorrectly'. &amp;nbsp;The
&lt;br&gt;information returned by the TOC query is adjusted by the provided
&lt;br&gt;offset, so reads are done as if the CDROM drive had reported a table
&lt;br&gt;of contents with the adjusted offsets. &amp;nbsp;The hardware may balk at this,
&lt;br&gt;of course...
&lt;br&gt;&lt;br&gt;Monty
&lt;br&gt;_______________________________________________
&lt;br&gt;Paranoia mailing list
&lt;br&gt;&lt;a href=&quot;http://old.nabble.com/user/SendEmail.jtp?type=post&amp;post=21878036&amp;i=1&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;Paranoia@...&lt;/a&gt;
&lt;br&gt;&lt;a href=&quot;http://lists.xiph.org/mailman/listinfo/paranoia&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;http://lists.xiph.org/mailman/listinfo/paranoia&lt;/a&gt;&lt;br&gt;&lt;p&gt;From forum: &lt;a href=&quot;http://old.nabble.com/Cd-Paranoia---General-f468.html&quot; embed=&quot;fixTarget[468]&quot; target=&quot;_top&quot; &gt;Cd-Paranoia - General&lt;/a&gt;&lt;/p&gt;</content>
	<link rel="alternate" type="text/html" href="http://old.nabble.com/cdparanoia%2C-sector-offset-and-last-track-tp21864807p21878036.html" />
</entry>

<entry>
	<id>tag:old.nabble.com,2006:post-21864807</id>
	<title>cdparanoia, sector offset and last track</title>
	<published>2009-02-05T16:50:52Z</published>
	<updated>2009-02-05T16:50:52Z</updated>
	<author>
		<name>Paul C. Bryan</name>
	</author>
	<content type="html">Dear fellow users and Monty, o admired king of cdparanoia:
&lt;br&gt;&lt;br&gt;I've dug into the code a bit, and I *think* the way cdparanoia works is
&lt;br&gt;it will not try to read past what it thinks is the last sector of the
&lt;br&gt;last track. If you set a positive sector offset, this would mean it pads
&lt;br&gt;the last track with zeroes. Am I correct?
&lt;br&gt;&lt;br&gt;Paul
&lt;br&gt;&lt;br&gt;_______________________________________________
&lt;br&gt;Paranoia mailing list
&lt;br&gt;&lt;a href=&quot;http://old.nabble.com/user/SendEmail.jtp?type=post&amp;post=21864807&amp;i=0&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;Paranoia@...&lt;/a&gt;
&lt;br&gt;&lt;a href=&quot;http://lists.xiph.org/mailman/listinfo/paranoia&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;http://lists.xiph.org/mailman/listinfo/paranoia&lt;/a&gt;&lt;br&gt;&lt;p&gt;From forum: &lt;a href=&quot;http://old.nabble.com/Cd-Paranoia---General-f468.html&quot; embed=&quot;fixTarget[468]&quot; target=&quot;_top&quot; &gt;Cd-Paranoia - General&lt;/a&gt;&lt;/p&gt;</content>
	<link rel="alternate" type="text/html" href="http://old.nabble.com/cdparanoia%2C-sector-offset-and-last-track-tp21864807p21864807.html" />
</entry>

<entry>
	<id>tag:old.nabble.com,2006:post-21574572</id>
	<title>Re: cdparanoia 10.2 crashes system during drive detect</title>
	<published>2009-01-20T16:07:47Z</published>
	<updated>2009-01-20T16:07:47Z</updated>
	<author>
		<name>xiphmont</name>
	</author>
	<content type="html">&amp;gt; I recently attempted to upgrade from cdparanoia 9.8 (which I've been using
&lt;br&gt;&amp;gt; successfully for years on a variety of systems) to 10.2. &amp;nbsp;Alas, 10.2 seems
&lt;br&gt;&amp;gt; to be causing hard, 100% reproducible crashes during drive detection, even
&lt;br&gt;&amp;gt; running the static binary from the xiph website.
&lt;br&gt;&amp;gt;
&lt;br&gt;&amp;gt; I've done my homework on the website (bug reports, &amp;quot;troubleshooting&amp;quot; section,
&lt;br&gt;&amp;gt; mailing list) and googled of course, but have not seen any mention of this.
&lt;br&gt;&lt;br&gt;Ah, tripping a bug in the kernel is never fun to debug. &amp;nbsp;I have a few
&lt;br&gt;guesses as to what may be going wrong, and the kernel having an
&lt;br&gt;overinflated idea of what DMA transfer sizes the Thinkpad can handle
&lt;br&gt;is high on the list.
&lt;br&gt;&lt;br&gt;I'm going to be doing a sweep of the various bug reports that have
&lt;br&gt;come in since 10.2 for an upcoming release soon and will have a few
&lt;br&gt;things for you to try if you're still there and still willing.
&lt;br&gt;&lt;br&gt;Thanks for the report! &amp;nbsp;Reports are important!
&lt;br&gt;&lt;br&gt;Monty
&lt;br&gt;_______________________________________________
&lt;br&gt;Paranoia mailing list
&lt;br&gt;&lt;a href=&quot;http://old.nabble.com/user/SendEmail.jtp?type=post&amp;post=21574572&amp;i=0&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;Paranoia@...&lt;/a&gt;
&lt;br&gt;&lt;a href=&quot;http://lists.xiph.org/mailman/listinfo/paranoia&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;http://lists.xiph.org/mailman/listinfo/paranoia&lt;/a&gt;&lt;br&gt;&lt;p&gt;From forum: &lt;a href=&quot;http://old.nabble.com/Cd-Paranoia---General-f468.html&quot; embed=&quot;fixTarget[468]&quot; target=&quot;_top&quot; &gt;Cd-Paranoia - General&lt;/a&gt;&lt;/p&gt;</content>
	<link rel="alternate" type="text/html" href="http://old.nabble.com/cdparanoia-10.2-crashes-system-during-drive-detect-tp21235386p21574572.html" />
</entry>

<entry>
	<id>tag:old.nabble.com,2006:post-21472181</id>
	<title>Re: SATA or external drive recommendations?</title>
	<published>2009-01-14T22:36:04Z</published>
	<updated>2009-01-14T22:36:04Z</updated>
	<author>
		<name>xiphmont</name>
	</author>
	<content type="html">On Thu, Jan 15, 2009 at 12:53 AM, Eric Altendorf
&lt;br&gt;&amp;lt;&lt;a href=&quot;http://old.nabble.com/user/SendEmail.jtp?type=post&amp;post=21472181&amp;i=0&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;ericaltendorf@...&lt;/a&gt;&amp;gt; wrote:
&lt;br&gt;&amp;gt; Ping -- does anyone have recommendations on drives?
&lt;br&gt;&amp;gt;
&lt;br&gt;&amp;gt; As detailed below, the drive I recently bought tests bad with
&lt;br&gt;&amp;gt; cdparanoia, and indeed generates spectactularly bad rips even on clean
&lt;br&gt;&amp;gt; CDs, full of staticky artifacts. &amp;nbsp;I'd like to get a drive that will
&lt;br&gt;&amp;gt; work, but don't want to get burned again.
&lt;br&gt;&lt;br&gt;Sadly-- there's generally no way to tell without actually trying out
&lt;br&gt;the drive. &amp;nbsp;Some very expensive drives have in the past caused major
&lt;br&gt;problems, and some cheap/free drives have been among the best rippers
&lt;br&gt;I've ever owned.
&lt;br&gt;&lt;br&gt;I just picked up some new Pioneer DVR-2910 drives, which are now the
&lt;br&gt;only SATA drives I have personally. &amp;nbsp;They come recommended by others,
&lt;br&gt;I should be able to give a report in a few days.
&lt;br&gt;&lt;br&gt;Monty
&lt;br&gt;_______________________________________________
&lt;br&gt;Paranoia mailing list
&lt;br&gt;&lt;a href=&quot;http://old.nabble.com/user/SendEmail.jtp?type=post&amp;post=21472181&amp;i=1&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;Paranoia@...&lt;/a&gt;
&lt;br&gt;&lt;a href=&quot;http://lists.xiph.org/mailman/listinfo/paranoia&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;http://lists.xiph.org/mailman/listinfo/paranoia&lt;/a&gt;&lt;br&gt;&lt;p&gt;From forum: &lt;a href=&quot;http://old.nabble.com/Cd-Paranoia---General-f468.html&quot; embed=&quot;fixTarget[468]&quot; target=&quot;_top&quot; &gt;Cd-Paranoia - General&lt;/a&gt;&lt;/p&gt;</content>
	<link rel="alternate" type="text/html" href="http://old.nabble.com/SATA-or-external-drive-recommendations--tp21111565p21472181.html" />
</entry>

<entry>
	<id>tag:old.nabble.com,2006:post-21471847</id>
	<title>Re: SATA or external drive recommendations?</title>
	<published>2009-01-14T21:53:57Z</published>
	<updated>2009-01-14T21:53:57Z</updated>
	<author>
		<name>Bugzilla from ericaltendorf@gmail.com</name>
	</author>
	<content type="html">Ping -- does anyone have recommendations on drives?
&lt;br&gt;&lt;br&gt;As detailed below, the drive I recently bought tests bad with
&lt;br&gt;cdparanoia, and indeed generates spectactularly bad rips even on clean
&lt;br&gt;CDs, full of staticky artifacts. &amp;nbsp;I'd like to get a drive that will
&lt;br&gt;work, but don't want to get burned again.
&lt;br&gt;&lt;br&gt;thanks.
&lt;br&gt;&lt;br&gt;--eric
&lt;br&gt;&lt;br&gt;On Sat, Dec 20, 2008 at 6:42 PM, Eric Altendorf &amp;lt;&lt;a href=&quot;http://old.nabble.com/user/SendEmail.jtp?type=post&amp;post=21471847&amp;i=0&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;ericaltendorf@...&lt;/a&gt;&amp;gt; wrote:
&lt;div class='shrinkable-quote'&gt;&lt;br&gt;&amp;gt; I just spent the last 6 hours or so testing various things to
&lt;br&gt;&amp;gt; determine why I was getting obvious and really awful skips and other
&lt;br&gt;&amp;gt; audible defects with scratched CDs in cdparanoia.
&lt;br&gt;&amp;gt;
&lt;br&gt;&amp;gt; Turns out it is probably due to my new drive being one of the crappy
&lt;br&gt;&amp;gt; ones with a cache that cdparanoia doesn't know how to model (yet),
&lt;br&gt;&amp;gt; since 'cdparanoia -A' fairly reliably returns &amp;quot;PARANOIA MAY NOT BE
&lt;br&gt;&amp;gt; TRUSTWORTHY WITH THIS DRIVE!&amp;quot;. &amp;nbsp;I've sent several analysis logs to
&lt;br&gt;&amp;gt; paranoia-dev, so hopefully that will help, but I have a whole bunch of
&lt;br&gt;&amp;gt; CDs I'd like to rip ASAP, so I would probably rather not wait and
&lt;br&gt;&amp;gt; instead just get a new drive that doesn't suck.
&lt;br&gt;&amp;gt;
&lt;br&gt;&amp;gt; I had a PATA drive that worked fine, but I had to replace my mobo and
&lt;br&gt;&amp;gt; accidentally got one without enough PATA connectors, so I bought a new
&lt;br&gt;&amp;gt; SATA drive. &amp;nbsp;It's the new SATA that won't rip reliably. &amp;nbsp;So, I'm
&lt;br&gt;&amp;gt; looking for a SATA that works well with cdparanoia, or an external.
&lt;br&gt;&amp;gt; Thanks!
&lt;br&gt;&amp;gt;
&lt;br&gt;&amp;gt; frustrated,
&lt;br&gt;&amp;gt;
&lt;br&gt;&amp;gt; --eric
&lt;br&gt;&amp;gt;
&lt;/div&gt;_______________________________________________
&lt;br&gt;Paranoia mailing list
&lt;br&gt;&lt;a href=&quot;http://old.nabble.com/user/SendEmail.jtp?type=post&amp;post=21471847&amp;i=1&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;Paranoia@...&lt;/a&gt;
&lt;br&gt;&lt;a href=&quot;http://lists.xiph.org/mailman/listinfo/paranoia&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;http://lists.xiph.org/mailman/listinfo/paranoia&lt;/a&gt;&lt;br&gt;&lt;p&gt;From forum: &lt;a href=&quot;http://old.nabble.com/Cd-Paranoia---General-f468.html&quot; embed=&quot;fixTarget[468]&quot; target=&quot;_top&quot; &gt;Cd-Paranoia - General&lt;/a&gt;&lt;/p&gt;</content>
	<link rel="alternate" type="text/html" href="http://old.nabble.com/SATA-or-external-drive-recommendations--tp21111565p21471847.html" />
</entry>

<entry>
	<id>tag:old.nabble.com,2006:post-21455320</id>
	<title>Re: rip multiple tracks to single file</title>
	<published>2009-01-14T04:43:17Z</published>
	<updated>2009-01-14T04:43:17Z</updated>
	<author>
		<name>Paolo Saggese-6</name>
	</author>
	<content type="html">On Wednesday 14 January 2009 08:17, &lt;a href=&quot;http://old.nabble.com/user/SendEmail.jtp?type=post&amp;post=21455320&amp;i=0&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;xiphmont@...&lt;/a&gt; wrote:
&lt;br&gt;&lt;br&gt;&amp;gt; &amp;gt; i don't want, for example, tracks 2 and 3, just 1 and 4 into one file.
&lt;br&gt;&amp;gt; 
&lt;br&gt;&amp;gt; Ah. &amp;nbsp;Then you want an audio editor, sorry... Audacity will do a quick job of it.
&lt;br&gt;&lt;br&gt;rip the single tracks then use the &amp;quot;shnjoin&amp;quot; function from 
&lt;br&gt;&lt;br&gt;&lt;a href=&quot;http://etree.org/shnutils/shntool/&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;http://etree.org/shnutils/shntool/&lt;/a&gt;&lt;br&gt;&lt;br&gt;shnjoin [OPTIONS] file1 file2 ...
&lt;br&gt;&lt;br&gt;&amp;quot;shntool&amp;quot; is the &amp;quot;Swiss army knife&amp;quot; of audio files. Very handy!
&lt;br&gt;&lt;br&gt;&lt;br&gt;BTW: is there an easy way to get a toc or cue file for a CD ripped 
&lt;br&gt;in &amp;quot;batch&amp;quot; mode (-B)?
&lt;br&gt;&lt;br&gt;(I mean a &amp;quot;real&amp;quot; toc from the CD complete with pregaps, indexes, 
&lt;br&gt;cdtext if present, etc).
&lt;br&gt;&lt;br&gt;&lt;br&gt;Ciao,
&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; Paolo.
&lt;br&gt;&lt;br&gt;--
&lt;br&gt;_______________________________________________
&lt;br&gt;Paranoia mailing list
&lt;br&gt;&lt;a href=&quot;http://old.nabble.com/user/SendEmail.jtp?type=post&amp;post=21455320&amp;i=1&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;Paranoia@...&lt;/a&gt;
&lt;br&gt;&lt;a href=&quot;http://lists.xiph.org/mailman/listinfo/paranoia&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;http://lists.xiph.org/mailman/listinfo/paranoia&lt;/a&gt;&lt;br&gt;&lt;p&gt;From forum: &lt;a href=&quot;http://old.nabble.com/Cd-Paranoia---General-f468.html&quot; embed=&quot;fixTarget[468]&quot; target=&quot;_top&quot; &gt;Cd-Paranoia - General&lt;/a&gt;&lt;/p&gt;</content>
	<link rel="alternate" type="text/html" href="http://old.nabble.com/rip-multiple-tracks-to-single-file-tp21449037p21455320.html" />
</entry>

<entry>
	<id>tag:old.nabble.com,2006:post-21451080</id>
	<title>Re: rip multiple tracks to single file</title>
	<published>2009-01-13T23:17:36Z</published>
	<updated>2009-01-13T23:17:36Z</updated>
	<author>
		<name>xiphmont</name>
	</author>
	<content type="html">On Wed, Jan 14, 2009 at 2:13 AM, scar &amp;lt;&lt;a href=&quot;http://old.nabble.com/user/SendEmail.jtp?type=post&amp;post=21451080&amp;i=0&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;scar@...&lt;/a&gt;&amp;gt; wrote:
&lt;div class='shrinkable-quote'&gt;&lt;br&gt;&amp;gt; -----BEGIN PGP SIGNED MESSAGE-----
&lt;br&gt;&amp;gt; Hash: SHA256
&lt;br&gt;&amp;gt;
&lt;br&gt;&amp;gt; &lt;a href=&quot;http://old.nabble.com/user/SendEmail.jtp?type=post&amp;post=21451080&amp;i=1&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;xiphmont@...&lt;/a&gt; @ 01/13/2009 10:57 PM:
&lt;br&gt;&amp;gt;&amp;gt; The span argument, by default, rips into one file unless -B is used.
&lt;br&gt;&amp;gt;&amp;gt;
&lt;br&gt;&amp;gt;&amp;gt; cdparanoia 1-4
&lt;br&gt;&amp;gt;&amp;gt;
&lt;br&gt;&amp;gt;&amp;gt; ...rips tracks one through four into one file.
&lt;br&gt;&amp;gt;&amp;gt;
&lt;br&gt;&amp;gt;
&lt;br&gt;&amp;gt; i don't want, for example, tracks 2 and 3, just 1 and 4 into one file.
&lt;/div&gt;&lt;br&gt;Ah. &amp;nbsp;Then you want an audio editor, sorry... Audacity will do a quick job of it.
&lt;br&gt;&lt;br&gt;Monty
&lt;br&gt;_______________________________________________
&lt;br&gt;Paranoia mailing list
&lt;br&gt;&lt;a href=&quot;http://old.nabble.com/user/SendEmail.jtp?type=post&amp;post=21451080&amp;i=2&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;Paranoia@...&lt;/a&gt;
&lt;br&gt;&lt;a href=&quot;http://lists.xiph.org/mailman/listinfo/paranoia&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;http://lists.xiph.org/mailman/listinfo/paranoia&lt;/a&gt;&lt;br&gt;&lt;p&gt;From forum: &lt;a href=&quot;http://old.nabble.com/Cd-Paranoia---General-f468.html&quot; embed=&quot;fixTarget[468]&quot; target=&quot;_top&quot; &gt;Cd-Paranoia - General&lt;/a&gt;&lt;/p&gt;</content>
	<link rel="alternate" type="text/html" href="http://old.nabble.com/rip-multiple-tracks-to-single-file-tp21449037p21451080.html" />
</entry>

<entry>
	<id>tag:old.nabble.com,2006:post-21451043</id>
	<title>Re: rip multiple tracks to single file</title>
	<published>2009-01-13T23:13:21Z</published>
	<updated>2009-01-13T23:13:21Z</updated>
	<author>
		<name>scar</name>
	</author>
	<content type="html">-----BEGIN PGP SIGNED MESSAGE-----
&lt;br&gt;Hash: SHA256
&lt;br&gt;&lt;br&gt;&lt;a href=&quot;http://old.nabble.com/user/SendEmail.jtp?type=post&amp;post=21451043&amp;i=0&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;xiphmont@...&lt;/a&gt; @ 01/13/2009 10:57 PM:
&lt;br&gt;&amp;gt; The span argument, by default, rips into one file unless -B is used.
&lt;br&gt;&amp;gt; 
&lt;br&gt;&amp;gt; cdparanoia 1-4
&lt;br&gt;&amp;gt; 
&lt;br&gt;&amp;gt; ...rips tracks one through four into one file.
&lt;br&gt;&amp;gt; 
&lt;br&gt;&lt;br&gt;i don't want, for example, tracks 2 and 3, just 1 and 4 into one file.
&lt;br&gt;-----BEGIN PGP SIGNATURE-----
&lt;br&gt;&lt;br&gt;iEYEAREIAAYFAkltkI4ACgkQXhfCJNu98qBuAgCffg5evQjKmyyrVhJhqfHJ0PlB
&lt;br&gt;PVgAoPneqZ4wSEF82BOcQqqzMb0GRN7g
&lt;br&gt;=UiOx
&lt;br&gt;-----END PGP SIGNATURE-----
&lt;br&gt;&lt;br&gt;_______________________________________________
&lt;br&gt;Paranoia mailing list
&lt;br&gt;&lt;a href=&quot;http://old.nabble.com/user/SendEmail.jtp?type=post&amp;post=21451043&amp;i=1&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;Paranoia@...&lt;/a&gt;
&lt;br&gt;&lt;a href=&quot;http://lists.xiph.org/mailman/listinfo/paranoia&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;http://lists.xiph.org/mailman/listinfo/paranoia&lt;/a&gt;&lt;br&gt;&lt;p&gt;From forum: &lt;a href=&quot;http://old.nabble.com/Cd-Paranoia---General-f468.html&quot; embed=&quot;fixTarget[468]&quot; target=&quot;_top&quot; &gt;Cd-Paranoia - General&lt;/a&gt;&lt;/p&gt;</content>
	<link rel="alternate" type="text/html" href="http://old.nabble.com/rip-multiple-tracks-to-single-file-tp21449037p21451043.html" />
</entry>

<entry>
	<id>tag:old.nabble.com,2006:post-21450513</id>
	<title>Re: rip multiple tracks to single file</title>
	<published>2009-01-13T21:57:43Z</published>
	<updated>2009-01-13T21:57:43Z</updated>
	<author>
		<name>xiphmont</name>
	</author>
	<content type="html">The span argument, by default, rips into one file unless -B is used.
&lt;br&gt;&lt;br&gt;cdparanoia 1-4
&lt;br&gt;&lt;br&gt;...rips tracks one through four into one file.
&lt;br&gt;&lt;br&gt;Monty
&lt;br&gt;_______________________________________________
&lt;br&gt;Paranoia mailing list
&lt;br&gt;&lt;a href=&quot;http://old.nabble.com/user/SendEmail.jtp?type=post&amp;post=21450513&amp;i=0&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;Paranoia@...&lt;/a&gt;
&lt;br&gt;&lt;a href=&quot;http://lists.xiph.org/mailman/listinfo/paranoia&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;http://lists.xiph.org/mailman/listinfo/paranoia&lt;/a&gt;&lt;br&gt;&lt;p&gt;From forum: &lt;a href=&quot;http://old.nabble.com/Cd-Paranoia---General-f468.html&quot; embed=&quot;fixTarget[468]&quot; target=&quot;_top&quot; &gt;Cd-Paranoia - General&lt;/a&gt;&lt;/p&gt;</content>
	<link rel="alternate" type="text/html" href="http://old.nabble.com/rip-multiple-tracks-to-single-file-tp21449037p21450513.html" />
</entry>

<entry>
	<id>tag:old.nabble.com,2006:post-21450485</id>
	<title>Re: rip multiple tracks to single file</title>
	<published>2009-01-13T21:53:20Z</published>
	<updated>2009-01-13T21:53:20Z</updated>
	<author>
		<name>J.B. Nicholson-Owens</name>
	</author>
	<content type="html">scar wrote:
&lt;br&gt;&amp;gt; maybe i need to rip each track individually and use some other utility
&lt;br&gt;&amp;gt; to concatenate the wav files? &amp;nbsp;any other ideas? &amp;nbsp;thanks.
&lt;br&gt;&lt;br&gt;You could rip each track to a separate file, then use declick at 
&lt;br&gt;&lt;a href=&quot;http://home.snafu.de/wahlm/dl8hbs/declick.html&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;http://home.snafu.de/wahlm/dl8hbs/declick.html&lt;/a&gt;&amp;nbsp;(you'll probably need to 
&lt;br&gt;compile this) to trim the silence from both ends of each file:
&lt;br&gt;&lt;br&gt;&amp;nbsp; &amp;nbsp;find ~/Where-I-keep-ripped-tracks/ -type f -iname '*.wav' -print0 | 
&lt;br&gt;xargs -0 declick -s -e
&lt;br&gt;&lt;br&gt;Then you could use sox to concatenate the files to a single larger file:
&lt;br&gt;&lt;br&gt;&amp;nbsp; &amp;nbsp;sox 1.wav 2.wav 3.wav big-audio-file.wav
&lt;br&gt;&lt;br&gt;and end up with a single file that is the concatenation of all the 
&lt;br&gt;tracks you ripped.
&lt;br&gt;&lt;br&gt;Good luck.
&lt;br&gt;_______________________________________________
&lt;br&gt;Paranoia mailing list
&lt;br&gt;&lt;a href=&quot;http://old.nabble.com/user/SendEmail.jtp?type=post&amp;post=21450485&amp;i=0&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;Paranoia@...&lt;/a&gt;
&lt;br&gt;&lt;a href=&quot;http://lists.xiph.org/mailman/listinfo/paranoia&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;http://lists.xiph.org/mailman/listinfo/paranoia&lt;/a&gt;&lt;br&gt;&lt;p&gt;From forum: &lt;a href=&quot;http://old.nabble.com/Cd-Paranoia---General-f468.html&quot; embed=&quot;fixTarget[468]&quot; target=&quot;_top&quot; &gt;Cd-Paranoia - General&lt;/a&gt;&lt;/p&gt;</content>
	<link rel="alternate" type="text/html" href="http://old.nabble.com/rip-multiple-tracks-to-single-file-tp21449037p21450485.html" />
</entry>

<entry>
	<id>tag:old.nabble.com,2006:post-21449037</id>
	<title>rip multiple tracks to single file</title>
	<published>2009-01-13T14:44:40Z</published>
	<updated>2009-01-13T14:44:40Z</updated>
	<author>
		<name>scar</name>
	</author>
	<content type="html">-----BEGIN PGP SIGNED MESSAGE-----
&lt;br&gt;Hash: SHA256
&lt;br&gt;&lt;br&gt;is it possible to rip several tracks that are not next to each other
&lt;br&gt;into a single file?
&lt;br&gt;&lt;br&gt;i tried this:
&lt;br&gt;&lt;br&gt;cdparanoia -w &amp;quot;1,2,4,6,8,10&amp;quot; 1.wav
&lt;br&gt;&lt;br&gt;but it only ripped the first track.
&lt;br&gt;&lt;br&gt;maybe i need to rip each track individually and use some other utility
&lt;br&gt;to concatenate the wav files? &amp;nbsp;any other ideas? &amp;nbsp;thanks.
&lt;br&gt;-----BEGIN PGP SIGNATURE-----
&lt;br&gt;&lt;br&gt;iEYEAREIAAYFAkltGVYACgkQXhfCJNu98qAC8wCfR1+WSdHDvUjpN4EGZJUgA1O4
&lt;br&gt;zB4AoMkEFFHOOtflAhyhtWDnb3BL5Hg5
&lt;br&gt;=Mda1
&lt;br&gt;-----END PGP SIGNATURE-----
&lt;br&gt;&lt;br&gt;_______________________________________________
&lt;br&gt;Paranoia mailing list
&lt;br&gt;&lt;a href=&quot;http://old.nabble.com/user/SendEmail.jtp?type=post&amp;post=21449037&amp;i=0&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;Paranoia@...&lt;/a&gt;
&lt;br&gt;&lt;a href=&quot;http://lists.xiph.org/mailman/listinfo/paranoia&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;http://lists.xiph.org/mailman/listinfo/paranoia&lt;/a&gt;&lt;br&gt;&lt;p&gt;From forum: &lt;a href=&quot;http://old.nabble.com/Cd-Paranoia---General-f468.html&quot; embed=&quot;fixTarget[468]&quot; target=&quot;_top&quot; &gt;Cd-Paranoia - General&lt;/a&gt;&lt;/p&gt;</content>
	<link rel="alternate" type="text/html" href="http://old.nabble.com/rip-multiple-tracks-to-single-file-tp21449037p21449037.html" />
</entry>

<entry>
	<id>tag:old.nabble.com,2006:post-21317179</id>
	<title>Failed to configure on Solaris 7</title>
	<published>2009-01-06T11:21:04Z</published>
	<updated>2009-01-06T11:21:04Z</updated>
	<author>
		<name>Roland Haeder-3</name>
	</author>
	<content type="html">Hi,
&lt;br&gt;&lt;br&gt;I'm not able to configure latest version cdparanoia-III-10.2 on my solaris box.
&lt;br&gt;&lt;br&gt;I have gcc 3.4.2 from sunfreeware.com even the simple check for ANSI C header files has failed but other libs doesn't fail here.
&lt;br&gt;&lt;br&gt;Attached is config.log for details. I have aborted it after some always-successfull tests.
&lt;br&gt;&lt;br&gt;Roland
&lt;br&gt;_______________________________________________________________________
&lt;br&gt;Sensationsangebot verlängert: WEB.DE FreeDSL - Telefonanschluss + DSL
&lt;br&gt;für nur 16,37 Euro/mtl.!* &lt;a href=&quot;http://dsl.web.de/?ac=OM.AD.AD008K15039B7069a&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;http://dsl.web.de/?ac=OM.AD.AD008K15039B7069a&lt;/a&gt;&lt;br&gt;&lt;br&gt;&lt;br /&gt; &lt;br /&gt;_______________________________________________
&lt;br&gt;Paranoia mailing list
&lt;br&gt;&lt;a href=&quot;http://old.nabble.com/user/SendEmail.jtp?type=post&amp;post=21317179&amp;i=0&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;Paranoia@...&lt;/a&gt;
&lt;br&gt;&lt;a href=&quot;http://lists.xiph.org/mailman/listinfo/paranoia&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;http://lists.xiph.org/mailman/listinfo/paranoia&lt;/a&gt;&lt;br&gt;&lt;div class=&quot;small&quot;&gt;&lt;br/&gt;&lt;img src=&quot;http://old.nabble.com/images/icon_attachment.gif&quot; &gt; &lt;strong&gt;config.log&lt;/strong&gt; (10K) &lt;a href=&quot;http://old.nabble.com/attachment/21317179/0/config.log&quot; target=&quot;_top&quot;&gt;Download Attachment&lt;/a&gt;&lt;/div&gt;&lt;p&gt;From forum: &lt;a href=&quot;http://old.nabble.com/Cd-Paranoia---General-f468.html&quot; embed=&quot;fixTarget[468]&quot; target=&quot;_top&quot; &gt;Cd-Paranoia - General&lt;/a&gt;&lt;/p&gt;</content>
	<link rel="alternate" type="text/html" href="http://old.nabble.com/Failed-to-configure-on-Solaris-7-tp21317179p21317179.html" />
</entry>

</feed>
