[pulseaudio-discuss] About My Blog Space
Hi Col, According to your advice, I'm setting my blog up, to track my status and some thoughts during this GSoC project. The URL is http://zhengrong.wordpress.com I'll make everything related to PulseAudio into the category PulseAudio, so hopefully it would only output the correct RSS. There's already one post there. :D --deng ___ pulseaudio-discuss mailing list pulseaudio-discuss@lists.freedesktop.org http://lists.freedesktop.org/mailman/listinfo/pulseaudio-discuss
Re: [pulseaudio-discuss] My attempt to reduce latency with pacat and tvtime
On Mon, 2012-05-21 at 21:09 +0600, Alexander E. Patrakov wrote: 2012/5/21 Pierre-Louis Bossart pierre-louis.boss...@linux.intel.com: I am not sure if there's really a problem. Increasing the audio latency doesn't necessarily result in A/V sync issues. As long as the A/V sync is done by querying how many samples are queued instead of using the number of samples pushed into PulseAudio, you should be able to use pretty much whatever buffer size you want. It's the same issue with ALSA, if you use large buffers and base the A/V on the number of samples written to the ring buffer, A/V sync will be off. Use snd_pcm_delay() and you'll be fine. Dear Pierre-Louis, this thread is based on a misunderstanding. The original poster, instead of asking someone to fix the original problem (see below), asks you about workarounds, and you don't see the big picture. Thanks for that explanation. Yes, the issue is that tvtime does not handle A/V sync and yes, admittedly I'm trying to fix the problem somewhere other than where it should be fixed ideally. But I thought this might be a case where it would be easiest to fix the problem in PulseAudio. -- | Steven Elliott | http://selliott.org | sellio...@austin.rr.com | ___ pulseaudio-discuss mailing list pulseaudio-discuss@lists.freedesktop.org http://lists.freedesktop.org/mailman/listinfo/pulseaudio-discuss
Re: [pulseaudio-discuss] My attempt to reduce latency with pacat and tvtime
On Mon, 2012-05-21 at 18:15 -0500, Pierre-Louis Bossart wrote: 1) TVtime (that's what the original poster uses): doesn't handle audio at all (but I was told that there is a fork that does), assumes that there is a zero-latency analog wire coming from the TV tuner audio output to the sound card's TV input. That's why the OP asks about module-loopback and/or parec|pacat solution, as a replacement of the said wire. Due to the now-invalid assumption about the wire, zero latency is needed. Because the audio chain is external to tvtime, there is no possibility for any A/V sync queries. Isn't the simplest solution to add a fixed delay for the video in TVtime, and apply the same fixed delay in module-loopback? That's an interesting idea. I suppose the audio frames would have to be queued up and then rendered after the appropriate delay. I'm not sure if that would be simpler than my patch or not. I'd have to know more about how tvtime handles audio. One concern is that tvtime has not had a release since 2005. Also, are there other programs that don't maintain A/V sync? Perhaps it would benefit them as well. Any attempts to emulate the behavior of an zero-latency analog wire with PulseAudio aren't very likely to succeed :-) Fair enough. My hope was just to keep it low enough. -- | Steven Elliott | http://selliott.org | sellio...@austin.rr.com | ___ pulseaudio-discuss mailing list pulseaudio-discuss@lists.freedesktop.org http://lists.freedesktop.org/mailman/listinfo/pulseaudio-discuss
Re: [pulseaudio-discuss] [PATCH] pactl: Added unloading modules by name
On Mon, 2012-05-21 at 15:37 +0200, poljari...@gmail.com wrote: +CHECK_VALIDITY(c-pstream, name *name pa_utf8_valid(name) !strchr(name, '/'), tag, PA_ERR_INVALID); Is this check copied from somewhere? Especially the slash check seems odd here. There's a whole bunch of characters that aren't allowed in module names, so what's so special about slash that it needs to be checked here? I'd only check that name is not NULL. Otherwise the the name comparison later will make sure that invalid module names won't match anything. In some cases it may be more efficient to fail fast with invalid module names, but that's optimizing for the uncommon case. Yes, this is copied from the module load command, I thought that this check is mandatory for handling modules by names. Ok. The check in the module loading command is probably done because the name will be used when accessing the file system. With module unloading there's no need to worry about that. + +/* Traverse the module list and unload all modules with the matching name */ +for (m = pa_idxset_first(c-protocol-core-modules, idx); m; m = pa_idxset_next(c-protocol-core-modules, idx)) { PA_IDXSET_FOREACH is more convenient (and easier to read). This is also used in command_extension() so I copied it from there. I will make a cosmetic patch for that too. +if (strcmp(name, m-name) == 0) { Same thing as the for(). I will work on this, and send a better patch. Thanks! -- Tanu ___ pulseaudio-discuss mailing list pulseaudio-discuss@lists.freedesktop.org http://lists.freedesktop.org/mailman/listinfo/pulseaudio-discuss