我用谷歌搜索了这个主题,但找不到我要找的东西......以下“发生”在我身上:
\n\n我将文件存储在 NTFS-USB 硬盘上,由于空间问题,我将它们移至 ext3 系统......不知何故,文件名(据我所知内容仍然没问题)编码搞砸了......我的文件现在看起来像下面这样:
\n\nKk\xc3\x83\xc2\xbcken <--- should have an "\xc3\xbc"\nJ\xc3\x83\xc2\xa4ger <--- should be an "\xc3\xa4"\nZw\xc3\x83\xc2\xb6lf <--- should be an "\xc3\xb6"\nf\xc3\x83\xc2\xbcnfte <-- should be an "\xc3\xbc"\netc ....\nRun Code Online (Sandbox Code Playgroud)\n\n这些只是例子,但已经给了我我的第一个问题\n为什么“\xc3\xbc”有两种不同的表示形式?\n(也许我搞砸了,在我搞砸之前,现在我混合了x个不同的编码层?:))
\n\n我尝试了以下命令:
\n\nconvmv -r -f UTF-8 -t ISO-8859-1 *\nRun Code Online (Sandbox Code Playgroud)\n\n此命令适用于某些文件(例如Zw\xc3\x83\xc2\xb6lf),但不适用于所有文件:
iso-8859-1 doesn\'t cover all needed characters for: "f\xc3\x83\xc2\xbcnfte"\nRun Code Online (Sandbox Code Playgroud)\n\n所以我猜它一定是另一种编码——但是是哪种?我怎样才能找到这个?
\n\n还有什么方法可以解决这一切吗?
\n我有一个 ts 文件列表,这些文件将被连接起来,稍后进行修剪并将其编码为 mp4。
所有这些都工作正常...但是我现在遇到的问题是文件被重新编码...这不是我想要的,因为 ts 已经是 h264 和 mp3,所以只需将其打包成 mp4 就可以了好的。实际上,这是有效的:
ffmpeg -i file.ts -c copy file.mp4
Run Code Online (Sandbox Code Playgroud)
但这不是:
ffmpeg -i videohls-1935m-index.ts -y -filter_complex \
[0:v]trim=0:10,setpts=PTS-STARTPTS[v0]; \
[0:a]atrim=0:10,asetpts=PTS-STARTPTS[a0]; \
[0:v]trim=30:90,setpts=PTS-STARTPTS[v1]; \
[0:a]atrim=30:90,asetpts=PTS-STARTPTS[a1]; \
[0:v]trim=100:200,setpts=PTS-STARTPTS[v2]; \
[0:a]atrim=100:200,asetpts=PTS-STARTPTS[a2]; \
[0:v]trim=250:350,setpts=PTS-STARTPTS[v3]; \
[0:a]atrim=250:350,asetpts=PTS-STARTPTS[a3]; \
[v0][a0][v1][a1][v2][a2][v3][a3]concat=n=4:v=1:a=1[out] \
-map [out] \
-c copy \
videohls-1935m-index.mp4
Run Code Online (Sandbox Code Playgroud)
显然它不会“复制”编解码器,因为输出来自映射到 [out] 的虚拟出口(或类似的东西......老实说,我不知道它到底是如何工作的,但我知道就是这样) ,所以它没有一个“编解码器”……所以它不能复制它。
这意味着我有两个问题:
如何避免这种情况以保持视频质量?
我有一个简体中文文本,当读取为 UTF-8 开头时, MandarinTools\xc2\xb4\xc3\x93\xc2\xba\xc3\x9c\xc2\xbe\xc3\x83\xc3\x92\xc3\x94\xc3\x87\xc2\xb0\xc2\xbf\xc2\xaa\xc3\x8a\xc2\xbc的在线工具(修复损坏的中文电子邮件的第一个搜索结果)将其修复为正确的,但不清楚它是如何修复的那。通过使用在线工具和十六进制编辑器,我知道每个字符都被编码为固定长度的 32 位:\xe4\xbb\x8e\xe5\xbe\x88\xe4\xb9\x85\xe4\xbb\xa5\xe5\x89\x8d\xe5\xbc\x80\xe5\xa7\x8b
c2b4 c393 \xe4\xbb\x8e\nc2ba c39c \xe5\xbe\x88\nc2be c383 \xe4\xb9\x85\nc392 c394 \xe4\xbb\xa5\nc387 c2b0 \xe5\x89\x8d\nc2bf c2aa \xe5\xbc\x80\nc38a c2bc \xe5\xa7\x8b\nRun Code Online (Sandbox Code Playgroud)\n\n这也表明一个字符被编码为 c2**-c3** 范围内的两个 16 位字。对于 UTF-16,这些字符的第一个 16 位字始终为 0。UTF-8 仅使用每个字符 24 位,而代码页 936 此处仅使用每个字符 16 位。\n我可以使用哪种方法来确定正确的编码转换?
\n\nutf-8表示:
\n\ne4bb 8e \xe4\xbb\x8e\ne5be 88 \xe5\xbe\x88\ne4b9 85 \xe4\xb9\x85\ne4bb a5 \xe4\xbb\xa5\ne589 8d \xe5\x89\x8d\ne5bc 80 \xe5\xbc\x80\ne5a7 8b \xe5\xa7\x8b\nRun Code Online (Sandbox Code Playgroud)\n\ncp936表示:
\n\nb4d3 \xe4\xbb\x8e\nbadc \xe5\xbe\x88\nbec3 \xe4\xb9\x85\nd2d4 \xe4\xbb\xa5\nc7b0 \xe5\x89\x8d\nbfaa \xe5\xbc\x80\ncabc \xe5\xa7\x8b\nRun Code Online (Sandbox Code Playgroud)\n 我在使 mydatabase 表显示拉丁字符时遇到问题。(\xc3\xa3、\xc3\xb5、\xc3\xa1、\xc3\xa9、\xc3\xad、\xe2\x80\xa6)。我正在使用带有 Apache 2.4.9 和 MySQL 5.6.17 的 WAMP 服务器。
\n\n我有一个用 HTML 创建的简单表单,并且有一个 PHP 代码,运行查询并创建帐户。这是 PHP 代码:
\n\ninclude(\'config.php\'); //My database data for connection\n\nif(isset($_POST[\'submit\'])) {\n $username = $_POST[\'username\'];\n $password = $_POST[\'password\'];\n $email = $_POST[\'email\'];\n\n $query = "INSERT INTO account SET username = \'".$username."\', password = PASSWORD(\'".$password."\'), email = \'".$email."\'";\n $execute_query = mysqli_query($connection, $query);\n if($execute_query) { \n //Creates the account\n }\n else { \n //If an error occures\n }\n}\nRun Code Online (Sandbox Code Playgroud)\n\n例如,现在我创建一个帐户:
\n\nUsername: Lu\xc3\xads\nPassword: 1234\nE-mail: somemail@mail.com\nRun Code Online (Sandbox Code Playgroud)\n\n当我检查表时,它显示创建的帐户,但用户名显示Lu\xc3\x83s …
我的 Windows 服务器上有一些文件名称中包含某些重音字符。在 Windows 资源管理器上,文件正常显示,但在命令提示符下使用默认设置运行“dir”会显示替换字符。
\n\n例如,字符\xc3\xb6显示如o"列表中所示。当通过 SMB 从其他平台访问这些文件时,这会导致问题,可能是因为编码/代码页冲突。并非所有文件都存在该问题,而且我不知道问题文件来自何处。
例子:
\n\nE:\\folder\\files>dir\n Volume in drive E is data\n Volume Serial Number is 5841-C30E\n\n Directory of E:\\folder\\files \n\n07/05/2016 07:46 PM <DIR> .\n07/05/2016 07:46 PM <DIR> ..\n12/01/2015 11:12 AM 14,105 file with o" character.xlsx\n01/22/2015 05:30 PM 11,598 file with correct \xc3\xb6 character.xlsx\n 2 File(s) 25,703 bytes\n 2 Dir(s) 2,727,491,600,384 bytes free\nRun Code Online (Sandbox Code Playgroud)\n\n我已经更改了文件和目录名称,但您会明白的。
\n\n你知道这些名字是怎么来的吗?也许它们是使用其他平台或工具复制或创建的?
\n\n如何批量查找并重命名所有问题文件?我查看了几个 GUI 重命名实用程序,但它们没有发现问题,并且仅适用于 Windows 资源管理器中显示的名称。
\n\n驱动器上的文件系统是 ReFS,这可能与此有关吗?
\n\n编辑:运行 PowerShell …
我正在尝试通过工具将UTF-8编码转换为ANSI编码。
但它显示西欧 (Windows)-1252而不是ANSI。
它们是同一件事吗?我应该继续这个吗?
有时当我pdftotext这样做时会产生完美的文本。我认为这是因为实际的 unicode 文本数据直接嵌入到 PDF 本身中,并且只需读出即可。
但其他时候(大约一半或更多的文档不只是直接扫描的图像)它会导致〜奇怪的字形〜代替诸如变音符号和重音符号之类的东西,有时甚至是看起来模糊的字母。
\n\n例如,这个约鲁巴语词典 PDF就存在这些问题。如果你运行这个:
\n\npdftotext yoruba.pdf yoruba.txt\nRun Code Online (Sandbox Code Playgroud)\n\n你最终会看到这些词散布在各处:
\n\nexpected actual\n-------- ------\nlairot\xe1\xba\xb9le lairot4ille\nik\xe1\xbb\x8dsil\xe1\xba\xb9 ikljlsil4il\nlog\xc3\xb3 logb\nRun Code Online (Sandbox Code Playgroud)\n\n请注意,重音符号\xc3\xb3变成了字母b。但并不是每个 \xc3\xb3 都变成了 doc 中的 ab。许多人这样做,但不是全部。与\xe1\xba\xb9a相同4il。许多人都变成这样,可能是所有人。大多数时候(我的感觉是)更晦涩的重音符号/变音符号\xe1\xba\xb9会被转换成陌生的字符或字符序列。
为什么是这样?是 OCR 的东西吗?或者PDF实际上是否嵌入了纯文本(即它不是图像的扫描文档)?然而,它在某种程度上没有被正确解码。我想知道这个问题的答案,所以至少我知道这是 OCR 问题或编码/解码问题。
\n\n如果这是一个编码问题,那就很有趣了。那么我的问题是,我可以告诉pdftotext使用一些晦涩的解码技术吗?或者是什么。
我提出这个问题的部分原因是我最近发现了一些网页是用 或 编码的ucs2,latin1有些甚至是用一些奇怪的windows2255或某种编码编码的。因此,我必须修改编码/解码才能正确提取 HTML 文档中的文本。我想知道在这种情况下同样的情况是否也适用于 PDF。
另一个遇到此问题的文档是纳瓦霍词典。我不知道这是 OCR …
我有一个 Ubuntu 服务器,它.png使用 SFTP 托管一些文件。
Force UTF-8当我尝试使用 FileZilla 或 WinSCP 从 Windows 笔记本电脑访问这些文件时,如果选中(Site Manager \xe2\x86\x92 Custom Charset),则文件无法成功传输:
这些文件来自在 Windows Server 上运行的 VisualCron,虽然我已在 VisualCron 中将编码更改为 UTF-8,但我不确定它是否适用,因为这是它们可以开始出现的唯一位置编码不同。
\n\nsshd_config:\n# AcceptEnv LANG LC_*\nSubsystem sftp = /usr/lib/openssh/sftp-server -l INFO\nMatch Group = sftp_users\nChrootDirectory = /ftproot/owners/%u\nForceCommand = internal-sftp\nRun Code Online (Sandbox Code Playgroud)\n请注意,我已注释掉:AcceptEnv LANG LC_*。根据here,这意味着服务器将不允许客户端传递区域设置环境变量。在这种情况下,即使使用VisualCron 的 Windows Server 使用“错误”编码发送文件,服务器也不应该接受它,而应使用 UTF-8。正确的?
LANG = en_US.UTF-8\nlanguage …Run Code Online (Sandbox Code Playgroud)我有一组 AVI 视频(无损视频流;无音频),我的目标是使用 FFmpeg 将它们转换为 AV1 无损。
FFmpeg(包含 librav1e、libaom-av1 和 libsvtav1)在我的 Windows 8.1 机器上运行良好,我可以使用 AV1 与 VP9 中的命令部分将视频转换为 H.264、H.265 和 VP9(全部无损)与 AVC (h.264) 与 HEVC (h.265) 对比:第一部分 - 无损。
但我对该页面上 AV1 的命令行参数感到困惑。我也不知道如何转换ffmpeg 文档中描述的 AV1 选项中描述的 AV1 选项转换为 FFmpeg 命令行(并且找不到任何教程)。
我还检查了libaom AV1 编码指南,叛军联盟的 AV1 视频编解码器编码指南等,但他们根本没有提到 AV1 无损。
您能否为一个或多个编码器(librav1e、libaom-av1、libsvtav1)提供一个示例 FFmpeg 命令行?
我的文本文件存在格式问题。我认为最初是 Windows-1252。然后我尝试使用 Notepad++ 将文件重新格式化为另一种编码格式,做了几次,结果一团糟,就像???A??a?s??A\xc2\xa7???A??a?s??A\xc2\xa0???A??a?s??A\xc2\xb5???A??a?s??A\xc2\xae???A??a?s??A\xc2\xa4????????????. 我不记得我所做的实际操作顺序。我唯一确定的是我在 ANSI、UTF-8 和 Windows-1251 之间切换。所有这些都没有让我的文本恢复到正确的西里尔字母格式,就像以前一样。
那么,有没有办法取回我在该文件中的信息呢?txt 文件是否包含所有信息,而我只需要弄清楚我需要什么编码格式,或者它被替换并且信息永远丢失?最初,我的文件中有一些西里尔文字。
\n