Comments (9)
I ran into this error last night. My /tmp
dir and the final destination are on different mount points in my case. Looking at the code I discovered that the temp_dir function looks at the TMPDIR
env var.
I then created a tmp
directory on the same mount point as the final destination and then when I ran this it worked:
env -i PATH=$PATH TMPDIR=/opt/tmp/ reddsaver --data-dir /opt/stuff
from reddsaver.
https://v.redd.it/h465tu5issh61/ https://v.redd.it/3x0biapyj5d61/ https://v.redd.it/em4lv7ixeuf61/ https://v.redd.it/i91gkjmw8mk61/ https://v.redd.it/ugwfb0q5o2p61/
Edit: https://v.redd.it/a899lmobkpl61
from reddsaver.
Hi, Can you share your OS info? Also - Can you run it with RUST_LOG=debug reddsaver -d ~/reddit/image -e user.env
and paste the output here (removing any sensitive information)? That would help with debugging the issue.
from reddsaver.
OS is Arch Linux
Edit: This is only the last part, not the full log
[2022-01-04T04:13:26Z DEBUG hyper::proto::h1::io] read 16384 bytes
[2022-01-04T04:13:26Z DEBUG hyper::proto::h1::io] read 16384 bytes
[2022-01-04T04:13:26Z DEBUG hyper::proto::h1::io] read 6272 bytes
[2022-01-04T04:13:26Z DEBUG hyper::proto::h1::io] read 10882 bytes
[2022-01-04T04:13:26Z DEBUG hyper::proto::h1::conn] incoming body completed
[2022-01-04T04:13:26Z DEBUG hyper::proto::h1::io] read 16384 bytes
[2022-01-04T04:13:26Z DEBUG reddsaver::download] Bytes length of the data: 1320322
[2022-01-04T04:13:26Z DEBUG hyper::proto::h1::io] read 16384 bytes
[2022-01-04T04:13:26Z DEBUG reddsaver::download] Created a file: /home/wavy/reddit/images/blackmagicfuckery/img-1a0ead8ec3f572fa3e9adaa839ef7893.mp4..mp4
[2022-01-04T04:13:26Z INFO reddsaver::download] Successfully saved media: /home/wavy/reddit/images/blackmagicfuckery/img-1a0ead8ec3f572fa3e9adaa839ef7893.mp4..mp4 from url https://v.redd.it/n1olrcmt9ju71/DASH_audio.mp4
[2022-01-04T04:13:26Z DEBUG reddsaver::download] Media type: RedditVideoWithAudio
[2022-01-04T04:13:26Z DEBUG reddsaver::download] Media files: 2
[2022-01-04T04:13:26Z DEBUG reddsaver::download] Locally skipped items: 0
[2022-01-04T04:13:26Z DEBUG reddsaver::download] Assembling components together
[2022-01-04T04:13:26Z DEBUG reddsaver::download] Executing command: "ffmpeg" "-i" "/home/wavy/reddit/images/blackmagicfuckery/img-44f5a045a48f97ce18e4abdce5ab9fb4.mp4..mp4" "-i" "/home/wavy/reddit/images/blackmagicfuckery/img-1a0ead8ec3f572fa3e9adaa839ef7893.mp4..mp4" "-c" "copy" "-map" "1:a" "-map" "0:v" "/tmp/.tmp9rp9h0/combined.mp4"
[2022-01-04T04:13:26Z DEBUG reddsaver::download] Successfully combined into temporary file: "/tmp/.tmp9rp9h0/combined.mp4"
[2022-01-04T04:13:26Z DEBUG reddsaver::download] Renaming file: /tmp/.tmp9rp9h0/combined.mp4 -> /home/wavy/reddit/images/blackmagicfuckery/img-44f5a045a48f97ce18e4abdce5ab9fb4.mp4
[2022-01-04T04:13:26Z DEBUG hyper::proto::h1::io] read 16384 bytes
[2022-01-04T04:13:26Z DEBUG hyper::proto::h1::io] read 16384 bytes
Error: IoError(Os { code: 18, kind: Other, message: "Invalid cross-device link" })
from reddsaver.
Btw I checked the downloaded files and sometimes the audio is not merged with the video.
from reddsaver.
The issue seems to be happening when trying to combine the video with audio. Currently the audio and video is downloaded separately and then combined using ffmpeg into /tmp
and then moved to the target location (and delete the individual audio, video components) - are /tmp
and /home/wavy
on different filesystems? or do you have any non-standard filesystem or partitioning scheme?
from reddsaver.
I don't think so
Here is my "tree -L 1 /" output
/
├── bin -> usr/bin
├── boot
├── dev
├── etc
├── home
├── lib -> usr/lib
├── lib64 -> usr/lib
├── lost+found
├── mnt
├── opt
├── proc
├── root
├── run
├── sbin -> usr/bin
├── srv
├── sys
├── timeshift
├── tmp
├── usr
└── var
and here is my fdisk -l output
Device Start End Sectors Size Type
/dev/nvme0n1p1 2048 1048576 1046529 511M EFI System
/dev/nvme0n1p2 1050624 1000215182 999164559 476.4G Linux filesystem
from reddsaver.
Interesting. Can you share few Reddit video links on your saved list (including ones that didn't get merged correctly)? I can try to see if I can reproduce this on a Arch Linux system.
from reddsaver.
This is great, thanks @bradym. I will add this info to a troubleshooting section on the README.
from reddsaver.
Related Issues (20)
- [Feature Request] Support more formats and hosts HOT 2
- [feature request] Interactive request for credentials HOT 7
- README docker instructions work only for image owner HOT 1
- [Feature request] Save comments for context HOT 3
- [Feature request] Functionality to save upvoted posts. HOT 2
- Unable to get access token HOT 9
- Picks up Windows USERNAME instead of the variable from env HOT 8
- [Feature Request] Option to change output format HOT 1
- Feature: Download and merge audio track for videos HOT 4
- --human-readable flag tries to create invalid filenames on Windows HOT 2
- The unsave flag is more destructive than it appears and could use a warning. HOT 3
- Windows username env fix doesn't work in Windows PowerShell (in contrast to the Command Prompt) HOT 2
- Error: EnvVarNotPresent(NotPresent) HOT 1
- Header user-agent is missing
- Three videos being saved for each video
- Missing field: "access_token" HOT 2
- error at launch: missing field `access_token` HOT 5
- Failure when reddit password includes a dollar sign HOT 1
- reddsaver: error while loading shared libraries: libssl.so.1.1: cannot open shared object file: No such file or directory HOT 1
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from reddsaver.