有人可以解释一下snd_pcm_writei
snd_pcm_sframes_t snd_pcm_writei(snd_pcm_t *pcm, const void *buffer,
snd_pcm_uframes_t size)
Run Code Online (Sandbox Code Playgroud)
作品?
我像这样使用它:
for (int i = 0; i < 1; i++) {
f = snd_pcm_writei(handle, buffer, frames);
...
}
Run Code Online (Sandbox Code Playgroud)
http://pastebin.com/m2f28b578上的完整源代码
这是否意味着,我不应该给出snd_pcm_writei()所有帧的数量buffer,而只是
sample_rate*latency = frames
?
因此,如果我有例如:sample_rate = 44100 latency = 0.5 [s] all_frames = 100000
帧的,我应该给的数目snd_pcm_writei()是
sample_rate*latency = frames 44100*0.5 = 22050
以及for循环的迭代次数应该是多少?
(int)100000/22050 = 4; 框架= 22050
还有一个,但只有
100000 mod 22050 = 11800
帧?
它是如何工作的?
路易丝
http://www.alsa-project.org/alsa-doc/alsa-lib/group___p_c_m.html#gf13067c0ebde29118ca05af76e5b17a9
问题在底部。
根据官方的 Mediawiki 安全指南,我必须
<Directory "/Library/MediaWiki/web/images">
# Ignore .htaccess files
AllowOverride None
# Serve HTML as plaintext, don't execute SHTML
AddType text/plain .html .htm .shtml .phtml .php .php3 .php4 .php5 .php7
# Don't run arbitrary PHP code.
php_admin_flag engine off
# If you've other scripting languages, disable them too.
</Directory>
Run Code Online (Sandbox Code Playgroud)
但是使用 Apache 2.4.29 和 PHP 7.1.15 我得到
Invalid command 'php_admin_flag', perhaps misspelled or defined by a module not included in the server configuration
Run Code Online (Sandbox Code Playgroud)
根据这篇文章,解决方案是
您不能将 php_admin_value/php_admin_flag …
我想要一个状态栏,所以我开始制作一个只有状态栏的小程序,这样我就可以看到它是如何工作的。
现在我只想能够在其中获取一些文本,但它显示的是一个随机字符。
有人可以看到我的代码有什么问题吗?
#include <gtk/gtk.h>
int main (int argc, char *argv[]) {
GtkWidget *window, *statusbar, *vbox;
gchar *info;
gtk_init(&argc, &argv);
window = gtk_window_new(GTK_WINDOW_TOPLEVEL);
gtk_widget_set_size_request(window, 250, -1);
g_signal_connect(G_OBJECT(window), "destroy", G_CALLBACK(gtk_main_quit), NULL);
statusbar = gtk_statusbar_new();
/* stack for info messages */
g_object_set_data(G_OBJECT(statusbar), "info", (gpointer) "1");
g_object_set_data(G_OBJECT(statusbar), "info", (gpointer) "2");
g_object_set_data(G_OBJECT(statusbar), "info", (gpointer) "3");
/* stack for warning messages */
g_object_set_data(G_OBJECT(statusbar), "warning", (gpointer) "A");
g_object_set_data(G_OBJECT(statusbar), "warning", (gpointer) "B");
g_object_set_data(G_OBJECT(statusbar), "warning", (gpointer) "C");
/* get id for the message at the top of the …Run Code Online (Sandbox Code Playgroud) 在我之前的文章中,我学习了如何从ffmpeg一个文件中提取持续时间.
ffmpeg -i file.mp4 2>&1 | grep Duration | awk '{print $2}' | tr -d ,
Run Code Online (Sandbox Code Playgroud)
这会产生类似的东西00:08:07.98.
我想最终得到的是一个脚本,我可以说
get_duration.sh *
Run Code Online (Sandbox Code Playgroud)
它会添加所有持续时间长度并输出类似的东西04:108:1107.198.
它不必将分钟转换为小时等等.这会很好但是=)
我可以列出所有的长度
for f in *; do
ffmpeg -i "$f" 2>&1 | grep Duration | awk '{print $2}' | tr -d ,;
done
Run Code Online (Sandbox Code Playgroud)
但是如何添加这些奇怪的格式化数字呢?
如果我执行此命令
svn co https://ltfat.svn.sourceforge.net/svnroot/ltfat ltfat
Run Code Online (Sandbox Code Playgroud)
我会得到最新的回复,即908.
但我真的想要回归901.
有人知道我该怎么做吗?
很多爱,路易丝
这是我遇到的问题的简化示例:
#include <stdio.h>
#include <stdlib.h>
void f2(int** a) {
printf("a: %i\n", **a);
}
void f1(int* a) {
f2(&a);
}
int main() {
int a = 3;
f1(&a); // prints "a: 3"
f2(???);
return 0;
}
Run Code Online (Sandbox Code Playgroud)
问题是,我想能够使用f2()两个main()和f1().
可以在不使用全局变量的情况下完成吗?
如果我这样做ls -o,我得到
-rw-rw-r-- 1 louise 347967 Aug 28 2017 Screenshot from 2017-08-28 09-33-01.png
-rw-rw-r-- 1 louise 377739 Aug 29 2017 Screenshot from 2017-08-29 10-39-49.png
-rw-rw-r-- 1 louise 340682 Aug 29 2017 Screenshot from 2017-08-29 10-40-02.png
Run Code Online (Sandbox Code Playgroud)
我真的想删除前 3 列,所以我得到
347967 Aug 28 2017 Screenshot from 2017-08-28 09-33-01.png
377739 Aug 29 2017 Screenshot from 2017-08-29 10-39-49.png
340682 Aug 29 2017 Screenshot from 2017-08-29 10-40-02.png
Run Code Online (Sandbox Code Playgroud)
ls不能这样做,似乎。这里还有其他关于删除多列的问题,但不是从一开始。