如何在不使用FFmpeg的情况下从视频文件中取出音频?
我想用AVMutableComposition它AVURLAsset来解决它.从.mov到.m4a文件的转换.
我正在尝试对NSDictionaries的mutableArray进行排序,目前我可以通过使用一个objectForKey值进行排序来实现这一点,但是这个问题是很多这些值可以是相同的所以我需要让另一个objectForKey来对数组进行排序.我想知道,如果第一个objectForKey比较返回一个相同的值,我怎么能进行第二个objectForKey比较,依此类推......
目前我正在这样做,这有效..但显然只有一个键.
[dataArrayOfDictionaries sortUsingComparator:^ NSComparisonResult(NSDictionary *d1, NSDictionary *d2)
{
NSString *n1 = [d1 objectForKey:@"DESCRIPTION"];
NSString *n2 = [d2 objectForKey:@"DESCRIPTION"];
return [n1 localizedCompare:n2];
} ];
Run Code Online (Sandbox Code Playgroud)
在我的调查中,我试过这个 -
[dataArrayOfDictionaries sortUsingComparator:^ NSComparisonResult(NSDictionary *d1, NSDictionary *d2)
{
NSString *n1 = [d1 objectForKey:@"DESCRIPTION"];
NSString *n2 = [d2 objectForKey:@"DESCRIPTION"];
return [n1 localizedCompare:n2];
n1 = [d1 objectForKey:@"ID"];
n2 = [d2 objectForKey:@"ID"];
return [n1 localizedCompare:n2];
} ];
Run Code Online (Sandbox Code Playgroud)
然而,这不起作用,因为它对描述排序然后完全使用基于ID,我想要它如果描述键是相同的然后通过ID键对这些值进行排序..如果这不起作用然后下去的列表键直到它排序..我希望这是有道理的..任何帮助将非常感激.
我使用以下代码行创建CLBeaconRegion,然后location manager按以下方式调用:
let beaconRegion:CLBeaconRegion = CLBeaconRegion(proximityUUID: beaconUUID as UUID,
identifier: beaconIdentifier)
/// save a beacon region for stopping after.
(beaconInfo as! BeaconInfo).beaconRegion = beaconRegion
/// start monitoring the specified region.
self.locationManager.startMonitoring(for: beaconRegion)
/// start calculating ranges for beacons in the specified region.
self.locationManager.startRangingBeacons(in: beaconRegion)
Run Code Online (Sandbox Code Playgroud)
位置管理器委托内的代码是:
func locationManager(_ manager: CLLocationManager,
didRangeBeacons beacons: [CLBeacon],
in region: CLBeaconRegion) {
/// it may be assumed no beacons that match the specified region are nearby.
if beacons.count == 0 {
print …Run Code Online (Sandbox Code Playgroud)