小编gru*_*uvy的帖子

ffmpeg剪辑音频间隔,包括开始和结束时间

我试图在两个起始点之间剪辑MP3,例如从10秒开始到16秒结束(时间间隔为6秒).

我正在使用此命令:

ffmpeg -ss 10 -i input.mp3 -t 6 output.mp3

结果output.mp3包含我指定的6秒,然后是8或9秒的空音频.我的命令有问题吗?

编辑:

ffmpeg -ss 10 -t 6 -i input.mp3 output.mp3说,-t is not an input option, keeping it for the next output; consider fixing your command line.并给我一个文件,从10秒开始有8秒的音频,然后是9或10秒的静音.

ffmpeg -ss 10 -to 16 -i input.mp3 output.mp3 生成一个长度是原始文件长度两倍的文件 - 基本上重复相同的音频文件.

测试输出:

我使用Quicktime,最后它有静音.finder中输出文件的描述就像14秒.当我使用VLC时,它会播放正确的6秒并停止,即使它在VLC文件浏览器中的持续时间为14.我的MPlayer无法正常工作.我也在Finder中做了预览音频,它正常播放6秒然后停止.但是MP3的圆形导引杆还没有到达终点.它还说14秒而不是6秒.

我的目标是通过REST API将这个6秒文件传输到前端.我希望用户能够正确下载此文件.理想情况下,它不会有不一致的元数据(14秒而不是6秒).

audio mp3 ffmpeg

48
推荐指数
2
解决办法
6万
查看次数

使用nodejs从API调用缓存数据的正确方法

我正在使用node.js来编写一个Web服务,它调用了一些API用于某些数据但是我受限于每月多次调用的API,所以我希望缓存我从API检索的数据,以便我可以服务它使用缓存数据,并以定时间隔从API重新获取数据.

这是解决这个问题的好方法吗?我应该使用什么缓存框架?我查看了node-redis,但我认为密钥值存储不适合数据.

谢谢!

api caching redis node.js

18
推荐指数
1
解决办法
8396
查看次数

cypress.io 等待相同的别名

cy.server();
cy.route('POST', 'my/api').as('myApi');
...
cy.wait('@myApi');
...
cy.route('POST', 'my/api').as('myApi');
cy.wait('@myApi');
Run Code Online (Sandbox Code Playgroud)

当我的应用程序在同一个测试中两次调用相同的 API 时,根据上面的代码,第二个cy.wait立即完成,因为它看到第一个 API 已经完成。为了解决这个问题,我在所有路由别名后面附加了一个随机数。这是正确的方法吗?

cypress

8
推荐指数
1
解决办法
1651
查看次数

如何使用node-mongodb-native连接到Heroku?

我对如何连接到Heroku上的MongoLab感到非常困惑.要使用uri连接到Heroku,我试图效仿这个例子:http: //experiencecraftsmanship.wordpress.com/2012/01/06/heroku-node-js-mongodb-featuring-the-native-driver/

我看了他的web.js和deep.js. 他们都做了类似的事情:

connect.createServer(
    require( 'connect-jsonrpc' )( contacts )
).listen( port );
Run Code Online (Sandbox Code Playgroud)

但那么只有'contacts'中的数据库查询才能传递到这个服务器呢?我是否允许为每个数据库访问方法执行多个connect.createServer?

以下是我在本地连接到MongoDB时的代码的一部分.我不确定如何修改它以连接到Heroku上的MongoLab.

有人可以教我如何修改我的代码连接?或解释一些这些概念?我不知道为什么我发布的那个网站的作者使用了这么多的回调来进行数据库调用,当我的方法看起来很简单时(我是JavaScript的新手,回调不好).

var app = module.exports = express.createServer(
  form({ keepExtensions: true })
);

var Db = require('mongodb').Db;
var Server = require('mongodb').Server;
var client = new Db('blog', new Server('127.0.0.1', 27017, {}));

var posts;
var getAllPosts = function(err, collection) {
  collection.find().toArray(function(err, results) {
    posts = results;
    console.log(results);
    client.close();
  });
}


app.get('/', function(req, response) {
  client.open(function(err, pClient) {
    client.collection('posts', getAllPosts);
  });

  // some code
  response.render('layout', { posts: …
Run Code Online (Sandbox Code Playgroud)

javascript heroku mongodb node.js

5
推荐指数
1
解决办法
3586
查看次数

阻止浏览器搜索ctrl f滚动我的折叠div

通过将包装器div的宽度设置为比内容宽度小很多,我有一个"折叠"的面板.但是,当我ctrl f用来搜索单词时,我的折叠面板会滚动,即.scrollLeft折叠面板的包装div 的属性不再是0.这是一个问题,因为我不希望它被滚动,因为它弄乱了UI.

有没有办法防止搜索在我的折叠面板中自动滚动内容?某种事件我可以锁定(焦点?),这样我可以scrollLeft在浏览器的搜索激活时重置为0,或者我可以设置CSS?

我没有使用jQuery所以jQuery相关的任何东西都不是一个选项.

html javascript css html5 css3

5
推荐指数
1
解决办法
812
查看次数

如何将中文十六进制字符串解码为中文字符或JavaScript?

我正在使用Rails应用程序。

我正在使用返回一些中国省份的API。API以十六进制字符串返回省份,例如:

{ "\xE5\x8C\x97\xE4\xBA\xAC" => "some data" }
Run Code Online (Sandbox Code Playgroud)

我的JavaScript调用了一个返回该哈希值的控制器。我将所有省份字符串放入一个下拉列表,但这些字符串显示为黑色钻石,中间带有问号。我想知道如何将Ruby十六进制字符串转换为实际的中文字符,??? 或者,如果可以,我可以将JavaScript中的十六进制字符串转换为汉字吗?

javascript ruby string encoding ruby-on-rails

5
推荐指数
1
解决办法
1574
查看次数

Angular Material 日期选择器将时间戳设置为表单控制值

                <input
                  [value]="question.timestampToMoment(row.controls[column.name].value)"
                  [formControlName]="column.name"
                  [required]="column.required"
                  matInput
                  [matDatepicker]="picker"
                  (dateChange)="question.onDateChange($event)"
                  placeholder="Choose a date"
                />
Run Code Online (Sandbox Code Playgroud)

我希望FormControl附加到此的datepicker时间戳作为值,以便时间戳可以发送回后端。然后,当值从后端返回时设置此值datepicker时,我需要将其moment从时间戳转换回对象。

我想象timestampToMoment会是这样的:return moment(value * 1000)

但我不知道如何实施onDateChange或任何其他方式来完成这项工作。用途.datepickermoment.js

angular-material2 angular

5
推荐指数
1
解决办法
5663
查看次数

如何在不重新加载或重新呈现页面的情况下将node.js后端的JSON返回到前端?

我正在使用node.js.

我想按下一个搜索按钮,对后端的另一台服务器进行一些休息api调用,然后将json返回到前端,并在前端重新加载一个div,这样我就不必刷新页面了.现在我知道我可以用jQuery或只是Javascript dom操作重新加载一个div.

但是如何让它在服务器端调用方法呢?我可以有一个提交按钮,它会发出一个帖子请求,我可以抓住它并从那里进行api调用,但是从node.js那边,当我返回时,我将不得不再次渲染页面.如何在不重新渲染或刷新页面的情况下将JSON从后端返回到前端?

谢谢.

javascript jquery post dom node.js

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

aws cdk 2.0 init 应用程序无法构建,并出现更漂亮的问题,来自 jest-snapshot

节点:v16.7.0
cdk:2.0.0(内部版本 4b6ce31)

包.json:

  "devDependencies": {
    "@types/jest": "^26.0.10",
    "@types/node": "10.17.27",
    "aws-cdk": "2.0.0",
    "jest": "^26.4.2",
    "ts-jest": "^26.2.0",
    "ts-node": "^9.0.0",
    "typescript": "^3.9.7"
  },
  "dependencies": {
    "aws-cdk-lib": "2.0.0",
    "constructs": "^10.0.0",
    "source-map-support": "^0.5.16"
  }
Run Code Online (Sandbox Code Playgroud)

npm run build/watch 堆栈跟踪:

node_modules/@types/prettier/index.d.ts:41:54 - error TS2315: Type 'IsTuple' is not generic.

41 type IndexProperties<T extends { length: number }> = IsTuple<T> extends true
                                                        ~~~~~~~~~~

node_modules/@types/prettier/index.d.ts:53:6 - error TS2456: Type alias 'IsTuple' circularly references itself.

53 type IsTuple<T> = T extends [] ? true : T extends [infer First, …
Run Code Online (Sandbox Code Playgroud)

node.js typescript jestjs prettier aws-cdk

4
推荐指数
1
解决办法
2366
查看次数

播放控制器不接受JSON POST

我正在开发Play 1.2.4.
我已经设置了这样的路线:

POST    /index    Application.index(format:'json')
Run Code Online (Sandbox Code Playgroud)

控制器是这样的:

public static void index(String json) {

    Logger.info("content type: %s", request.contentType);
    Logger.info("json string: %s", json);
    MyObj obj = new Gson().fromJson(json, MyObj.class);
    ...
    ...
}
Run Code Online (Sandbox Code Playgroud)

我的卷曲请求是这样的:

curl -v -H "Content-Type: application/json" -X POST -d '{"name":"John Smith","email":"email@email.com","value1":"Value one","value2":"Value two","urls":[{"url":"http://www.google.ca"},{"url":"http://www.msn.ca"}]}' http://localhost:9000/index
Run Code Online (Sandbox Code Playgroud)

MyObj有以下字段:

public String name;
public String email;
public String value1;
public String value2;
public String[] urls;
Run Code Online (Sandbox Code Playgroud)

但是,控制器接收NULL以进行输入.我究竟做错了什么?有人可以告诉我如何使用JSON POST请求并将其转换为对象(特别是url数组)?谢谢!

java post json controller playframework

3
推荐指数
1
解决办法
3413
查看次数

python unittest导入类子目录

我有一个像这样结构的项目:

|tools/
|-- test/
|   |-- __init__.py
|   |-- test_class1.py
|   |-- test_class2.py
|   
|-- tools/
|-- __init__.py
|   |-- class1.py
|   |-- class2.py
|   
|-- test_runner (Python script that calls unittest.TestLoader().discover('test'))
|-- README.md
Run Code Online (Sandbox Code Playgroud)

我想运行test_runner并让它执行test文件夹中的所有测试.我的个人测试会有这样的一行:from test_class import TestClass测试适当的类.

test_runner 看起来像这样:

#!/usr/bin/env python

import unittest
import sys
import os
sys.path.append(os.path.realpath(__file__) + '/tools') 

suite = unittest.TestLoader().discover('test')
results = unittest.TextTestRunner(verbosity=2).run(suite)
if len(results.errors) > 0 or len(results.failures) > 0:
    sys.exit(1)
sys.exit()
Run Code Online (Sandbox Code Playgroud)

现在这不起作用,我的测试文件无法导入相应的类.如果我这样做,我可以让它工作,export PYTHONPATH=/path/to/file但我希望通过脚本实现这一点.

我也尝试sys.path.insert(0, os.path.dirname(__file__) …

python unit-testing python-import python-2.7 python-unittest

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