mirror of
https://github.com/bggRGjQaUbCoE/PiliPlus.git
synced 2026-04-20 03:06:59 +08:00
* tweak
* Reapply "opt: audio uri" (#1833)
This reverts commit 8e726f49b2.
* opt: player
* opt: player
* refa: create player
* refa: player
* opt: UaType
* fix: sb seek preview
* opt: setSub
* fix: screenshot
* opt: unnecessary final player state
* opt: player track
* opt FileSource constructor [skip ci]
* fixes
* fix: dispose player
* fix: quote
* update
* fix: multi ua & remove unused loop
* remove unneeded check [skip ci]
---------
Co-authored-by: dom <githubaccount56556@proton.me>
40 lines
857 B
Dart
40 lines
857 B
Dart
import 'package:PiliPlus/utils/path_utils.dart';
|
|
import 'package:path/path.dart' as path;
|
|
|
|
sealed class DataSource {
|
|
final String videoSource;
|
|
final String? audioSource;
|
|
|
|
DataSource({
|
|
required this.videoSource,
|
|
required this.audioSource,
|
|
});
|
|
}
|
|
|
|
class NetworkSource extends DataSource {
|
|
NetworkSource({
|
|
required super.videoSource,
|
|
required super.audioSource,
|
|
});
|
|
}
|
|
|
|
class FileSource extends DataSource {
|
|
final String dir;
|
|
final bool isMp4;
|
|
|
|
FileSource({
|
|
required this.dir,
|
|
required this.isMp4,
|
|
required String typeTag,
|
|
}) : super(
|
|
videoSource: path.join(
|
|
dir,
|
|
typeTag,
|
|
isMp4 ? PathUtils.videoNameType1 : PathUtils.videoNameType2,
|
|
),
|
|
audioSource: isMp4
|
|
? null
|
|
: path.join(dir, typeTag, PathUtils.audioNameType2),
|
|
);
|
|
}
|