Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/ios/106.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Python Flatter video_player(仅IOS/AVPlayer)不使用fastapi播放没有扩展名的mp4文件_Python_Ios_Flutter_Video_Fastapi - Fatal编程技术网

Python Flatter video_player(仅IOS/AVPlayer)不使用fastapi播放没有扩展名的mp4文件

Python Flatter video_player(仅IOS/AVPlayer)不使用fastapi播放没有扩展名的mp4文件,python,ios,flutter,video,fastapi,Python,Ios,Flutter,Video,Fastapi,我在mp4文件下面提供代码: import os from starlette.responses import FileResponse return FileResponse( filename_out, media_type="video/mp4", filename=os.path.basename(filename_out) ) 在firefox、chrome和安卓系统中都可以正常工作。不幸的是

我在mp4文件下面提供代码:

import os
from starlette.responses import FileResponse
return FileResponse(
            filename_out,
            media_type="video/mp4",
            filename=os.path.basename(filename_out)
        )

在firefox、chrome和安卓系统中都可以正常工作。不幸的是,它不适用于IOS中的AVPlayer(由Flatter video_player软件包使用)

我找到了这根线

但是,文件扩展名提供了显式的文件名,我对标题的内容感到困惑。有没有类似的经验和解决方案

编辑:文件名为video.mp4,之后是test.client,看起来像:

{'content-type': 'video/mp4', 'content-disposition': 'attachment; filename="video.mp4"', 
'content-length': '5909110', 'last-modified': 'Mon, 10 Feb 2020 21:23:10 GMT', 'etag': 'd4be0ee89866a2fdc6e2c2dc94c4bc21'} 
附件是一个流,可以与普通浏览器播放器和android一起使用,但不能在IOS中使用。我们使用Flitter软件包video_player和_controller.value.initialized在IOS中始终为false,但在使用starlette未提供服务的AWS直接文件时为true:

 _controller = VideoPlayerController.network('urlWithMp4StreamOrAttachment',);

提前感谢,Christian

它与nginx配合使用,请参见此处的一些配置详细信息:


您是否尝试过传递内容类型标题并向文件名添加扩展名\u out变量谢谢,但没有成功,请参见上文。视频是否在mac中的safari浏览器中播放?如果没有播放,请尝试使用inspect元素,它将显示确切的错误。如果它在mac safari中播放,那么请转到iPhone safari并进行检查。它可以给你一些线索。看起来这一系列的东西有问题。更改了标题,但仍然没有成功。{'content-type':'video/mp4','content-range':'bytes 0-1','accept-ranges':'bytes','content-length':'5909110','last modified':'Mon,Feb 2020 21:23:10 GMT','etag':'d4be0ee89866a2fdc6e2c2dc94c4bc21'}您可以始终通过代理为这些文件提供服务,比如nginx(它是为文件服务而优化的)