小编rya*_*yan的帖子

使用libavcodec将音频编码到aac

我正在使用libavcodec(截至3/3/10的最新git)将原始pcm编码为aac(启用了libfaac支持).我通过每次使用codec_context-> frame_size样本重复调用avcodec_encode_audio来完成此操作.前四个调用成功返回,但第五个调用永远不会返回.当我使用gdb中断时,堆栈已损坏.

如果我使用audacity将pcm数据导出到.wav文件,那么我可以使用命令行ffmpeg转换为aac而没有任何问题,所以我确定这是我做错了.

我写了一个小的测试程序来复制我的问题.它从文件中读取测试数据,可在此处获取:http: //birdie.protoven.com/audio.pcm(签名16位LE pcm约2秒)

如果我直接使用FAAC,我可以完成所有工作,但如果我可以使用libavcodec,那么代码会更清晰一些,因为我也编码视频,并将两者写入mp4.

ffmpeg版本信息:

FFmpeg version git-c280040, Copyright (c) 2000-2010 the FFmpeg developers
  built on Mar  3 2010 15:40:46 with gcc 4.4.1
  configuration: --enable-libfaac --enable-gpl --enable-nonfree --enable-version3 --enable-postproc --enable-pthreads --enable-debug=3 --enable-shared
  libavutil     50.10. 0 / 50.10. 0
  libavcodec    52.55. 0 / 52.55. 0
  libavformat   52.54. 0 / 52.54. 0
  libavdevice   52. 2. 0 / 52. 2. 0
  libswscale     0.10. 0 /  0.10. 0
  libpostproc   51. 2. 0 / 51. 2. 0
Run Code Online (Sandbox Code Playgroud)

有没有我没有设置的东西,或者在我的编解码器环境中设置不正确,也许?任何帮助是极大的赞赏!

这是我的测试代码: …

c audio ffmpeg aac libavcodec

13
推荐指数
1
解决办法
2万
查看次数

使用 Nginx 进行 https SSL 证书验证失败,使用自定义构建的 libcurl+openssl,但适用于系统 curl

我正在使用 libcurl 通过 https 与两个单独的 Web 服务器通信。

第一个服务器在 64 位 Ubuntu 10.04 上运行 Lighttpd 1.4.26-1。Lightty 是针对 openssl 版本 0.9.8k 构建的。

第二台服务器在 32 位 Ubuntu 10.04 上运行 Nginx 0.7.65。Nginx 是针对 openssl 版本 0.9.8k 构建的。

这两个服务器使用相同的证书,并且 DNS 在它们之间循环。我使用 /etc/hosts 来管理我正在击中的两个中的哪一个。

我正在使用针对 openssl 1.0.0c 构建的 libcurl 7.21.2 版。

有了这个,libcurl 可以成功地向 lightty 服务器发出 https 请求,但不能向 nginx 服务器发出请求。我可以使用 curl 命令行界面来复制它。这是 curl -v 的输出:

* About to connect() to <hostname> port 443 (#0)
*   Trying <ip>... connected
* Connected to <hostname> (<ip>) port 443 (#0)
* …
Run Code Online (Sandbox Code Playgroud)

ssl https openssl nginx libcurl

2
推荐指数
1
解决办法
2731
查看次数

标签 统计

aac ×1

audio ×1

c ×1

ffmpeg ×1

https ×1

libavcodec ×1

libcurl ×1

nginx ×1

openssl ×1

ssl ×1