mirror of
https://github.com/ZLMediaKit/ZLMediaKit.git
synced 2024-11-26 04:31:37 +08:00
解决win32下大文件点播不了问题 (#1188)
This commit is contained in:
parent
434d6a73a1
commit
bb9695a247
@ -200,11 +200,11 @@ int MP4FileDisk::onWrite(const void *data, size_t bytes) {
|
|||||||
return bytes == fwrite(data, 1, bytes, _file.get()) ? 0 : ferror(_file.get());
|
return bytes == fwrite(data, 1, bytes, _file.get()) ? 0 : ferror(_file.get());
|
||||||
}
|
}
|
||||||
|
|
||||||
int MP4FileDisk::onSeek(size_t offset) {
|
int MP4FileDisk::onSeek(uint64_t offset) {
|
||||||
return fseek64(_file.get(), offset, SEEK_SET);
|
return fseek64(_file.get(), offset, SEEK_SET);
|
||||||
}
|
}
|
||||||
|
|
||||||
size_t MP4FileDisk::onTell() {
|
uint64_t MP4FileDisk::onTell() {
|
||||||
return ftell64(_file.get());
|
return ftell64(_file.get());
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -221,11 +221,11 @@ size_t MP4FileMemory::fileSize() const{
|
|||||||
return _memory.size();
|
return _memory.size();
|
||||||
}
|
}
|
||||||
|
|
||||||
size_t MP4FileMemory::onTell(){
|
uint64_t MP4FileMemory::onTell(){
|
||||||
return _offset;
|
return _offset;
|
||||||
}
|
}
|
||||||
|
|
||||||
int MP4FileMemory::onSeek(size_t offset){
|
int MP4FileMemory::onSeek(uint64_t offset){
|
||||||
if (offset > _memory.size()) {
|
if (offset > _memory.size()) {
|
||||||
return -1;
|
return -1;
|
||||||
}
|
}
|
||||||
|
@ -62,14 +62,14 @@ public:
|
|||||||
/**
|
/**
|
||||||
* 获取文件读写位置
|
* 获取文件读写位置
|
||||||
*/
|
*/
|
||||||
virtual size_t onTell() = 0;
|
virtual uint64_t onTell() = 0;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* seek至文件某处
|
* seek至文件某处
|
||||||
* @param offset 文件偏移量
|
* @param offset 文件偏移量
|
||||||
* @return 是否成功(0成功)
|
* @return 是否成功(0成功)
|
||||||
*/
|
*/
|
||||||
virtual int onSeek(size_t offset) = 0;
|
virtual int onSeek(uint64_t offset) = 0;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* 从文件读取一定数据
|
* 从文件读取一定数据
|
||||||
@ -108,8 +108,8 @@ public:
|
|||||||
void closeFile();
|
void closeFile();
|
||||||
|
|
||||||
protected:
|
protected:
|
||||||
size_t onTell() override;
|
uint64_t onTell() override;
|
||||||
int onSeek(size_t offset) override;
|
int onSeek(uint64_t offset) override;
|
||||||
int onRead(void *data, size_t bytes) override;
|
int onRead(void *data, size_t bytes) override;
|
||||||
int onWrite(const void *data, size_t bytes) override;
|
int onWrite(const void *data, size_t bytes) override;
|
||||||
|
|
||||||
@ -134,13 +134,13 @@ public:
|
|||||||
string getAndClearMemory();
|
string getAndClearMemory();
|
||||||
|
|
||||||
protected:
|
protected:
|
||||||
size_t onTell() override;
|
uint64_t onTell() override;
|
||||||
int onSeek(size_t offset) override;
|
int onSeek(uint64_t offset) override;
|
||||||
int onRead(void *data, size_t bytes) override;
|
int onRead(void *data, size_t bytes) override;
|
||||||
int onWrite(const void *data, size_t bytes) override;
|
int onWrite(const void *data, size_t bytes) override;
|
||||||
|
|
||||||
private:
|
private:
|
||||||
size_t _offset = 0;
|
uint64_t _offset = 0;
|
||||||
string _memory;
|
string _memory;
|
||||||
};
|
};
|
||||||
|
|
||||||
|
Loading…
Reference in New Issue
Block a user