Pmmlabs / OpenPeriscope

Unofficial Periscope client
GNU General Public License v2.0
74 stars 30 forks source link

Unable to download public or private vids #127

Open schammoona opened 5 years ago

schammoona commented 5 years ago

After getting 1.9 version I havent been able to download any kind of vids.

This is what I get when downloading private ones:

[https @ 026b56a0] the user-agent option is deprecated, please use user_agent option Last message repeated 1 times [https @ 0276dc20] the user-agent option is deprecated, please use user_agent option [hls,applehttp @ 026b4b20] Failed to open segment of playlist 0 Last message repeated 2501 times [hls,applehttp @ 026b4b20] Error when loading first segment 'https://prod-fastly-eu-central-1.video.periscope.tv/Transcoding/v1/hls/lJkMfp_lj3SfzE-Q-2zrLNAymkgB3vbBzOwoEFysL8kCPr2XBD0y-xm6JgVPVgMkOE-Udze8eHl_/non_transcode/eu-central-1/periscope-replay-direct-prod-eu-central-1-private/k0_chunk_1558270707415326136_0_a.ts' https://api.periscope.tv/api/v2/replayPlaylist.m3u8?agent=Periscope%2F2699+%28iPhone%3B+iOS+8.1.2%3B+Scale%2F2.00%29&broadcast_id=1lPKqolpjPwJb&cookie=XsKKBHsiVXNlcklkIjoiMW1NRVBSbNpb24iOiJ2V2pRQjNZa2tVZU1JXzFSX0gyd2thUUZjMllaX2t3dThJUlozclhZmVyc2lvbiI6MX1FoEvRQaFNKa2IwRulPU7l3j2wVPp1gUJDKqzda6kdaA%3D%3D: Invalid data found when processing input

And this when downloading public videos:

[https @ 001b5540] the user-agent option is deprecated, please use user_agent option [https @ 001f8840] the user-agent option is deprecated, please use user_agent option [mpegts @ 001da0e0] Invalid timestamps stream=1, pts=8195490, dts=8199180, size=709 [hls,applehttp @ 001b4b60] Invalid timestamps stream=1, pts=8195490, dts=8199180, size=722 [h264 @ 001fbf00] Increasing reorder buffer to 1 [mpegts @ 001da0e0] Invalid timestamps stream=1, pts=8202960, dts=8206650, size=525 [hls,applehttp @ 001b4b60] Invalid timestamps stream=1, pts=8202960, dts=8206650, size=543 [mpegts @ 001da0e0] Invalid timestamps stream=1, pts=8210520, dts=8214210, size=709 [hls,applehttp @ 001b4b60] Invalid timestamps stream=1, pts=8210520, dts=8214210, size=662 [mpegts @ 001da0e0] Invalid timestamps stream=1, pts=8217990, dts=8221680, size=709 [hls,applehttp @ 001b4b60] Invalid timestamps stream=1, pts=8217990, dts=8221680, size=701 [mpegts @ 001da0e0] Invalid timestamps stream=1, pts=8225460, dts=8229150, size=893 [hls,applehttp @ 001b4b60] Invalid timestamps stream=1, pts=8225460, dts=8229150, size=770 [mpegts @ 001da0e0] Invalid timestamps stream=1, pts=8233020, dts=8236710, size=893 [hls,applehttp @ 001b4b60] Invalid timestamps stream=1, pts=8233020, dts=8236710, size=853 [mpegts @ 001da0e0] Invalid timestamps stream=1, pts=8240490, dts=8244180, size=1077 [hls,applehttp @ 001b4b60] Invalid timestamps stream=1, pts=8240490, dts=8244180, size=1001 [mpegts @ 001da0e0] Invalid timestamps stream=1, pts=8247960, dts=8251650, size=893 [hls,applehttp @ 001b4b60] Invalid timestamps stream=1, pts=8247960, dts=8251650, size=817 [mpegts @ 001da0e0] Invalid timestamps stream=1, pts=8255520, dts=8259210, size=709

Bramengton commented 5 years ago

parameter

user-agent

is depricated first fix from @kewalsk was correct: '-headers', 'Cookie: sid='+loginTwitter.cookie+'; User-Agent: Periscope/2699 (iPhone; iOS 8.1.2; Scale/2.00)',

kewalsk commented 5 years ago

user-agent option is deprecated, please use user_agent option

This is warning only, easy to change by just replacing '-user-agent' with '-user_agent' in line 1691. In my opinion it doesn't matter at all. Broadcasts are downloaded both public and privates.

Error when loading first segment ... Invalid data found when processing input

This is the real problem you have. Hard to say what happened without detailed debug logs but I suppose the private broadcast was just deleted before you started.

first fix from @kewalsk was correct:

Actually I changed it later and removed User-Agent from this place - it was wrong, because it should be sent as the separate header, not as the cookie. It shouldn't have any negative consequences but it's just not necessary at all. The correct line is: '-headers', 'Cookie: sid='+loginTwitter.cookie+'\r\n', and was commited by @Pmmlabs in last change.

schammoona commented 5 years ago

Error when loading first segment ... Invalid data found when processing input

This is the real problem you have. Hard to say what happened without detailed debug logs but I suppose the private broadcast was just deleted before you started.

This happens on every private broadcast. They are all still up. Tried with two Windows platforms and my friend said this was his case too.

I wouldnt mind the warnings either, but nothing gets downloaded at the moment. 1.8 version works fine with public ones.

EDIT: Public broadcasts seem to work fine now. The warning comes but the file gets downloaded.

How could I provide a better log whats happened with private dl?

EDIT2: This is what I get now when trying to dl a private live: [hls,applehttp @ 00763980] Failed to open segment of playlist 0

The folder gets created but not the vid file.

kewalsk commented 5 years ago

Turn on the debug checkbox: image and try to download any private. attach the logs from Downloading section first - we will see what is there.

schammoona commented 5 years ago

ffmpeg version N-86877-g8e275a7 (OpenPeriscope set-up) Copyright (c) 2000-2017 the FFmpeg developers built with gcc 4.9.3 (GCC) configuration: --pkg-config=pkg-config --arch=x86 --target-os=mingw32 --disable-w32threads --cross-prefix=i686-w64-mingw32- --extra-cflags=-I./openssl-1.0.1t/dist/include --extra-ldflags=-L./openssl-1.0.1t/dist/lib --disable-debug --disable-programs --enable-ffmpeg --disable-doc --disable-encoders --disable-decoders --disable-hwaccels --disable-demuxers --disable-muxers --disable-parsers --disable-bsfs --disable-devices --disable-filters --disable-protocols --enable-protocol='hls,http,https,tcp,tls_openssl,file' --enable-openssl --enable-decoder='h264,aac' --enable-demuxer='hls,mpegts,dnxhd' --enable-muxer='mp4,mpegts' --enable-parser='h264,aac' --enable-bsf=aac_adtstoasc libavutil 55. 69.100 / 55. 69.100 libavcodec 57.102.100 / 57.102.100 libavformat 57. 76.100 / 57. 76.100 libavdevice 57. 7.100 / 57. 7.100 libavfilter 6. 95.100 / 6. 95.100 libswscale 4. 7.101 / 4. 7.101 libswresample 2. 8.100 / 2. 8.100 Splitting the commandline. Reading option '-loglevel' ... matched as option 'loglevel' (set logging level) with argument 'debug'. Reading option '-headers' ... matched as AVOption 'headers' with argument 'Cookie: sid=XsKKBHsiVXNlcklkIjoiMW1NRVBSbm5rdmxLRyIsIlNlc3Npb24iOiJ2V2pRQjNZa2tVZU1JXzFSX0gyd2thUUZjMllaX2t3dThJUlozclhZOWNFIiwiVmVyc2lvbiI6MX1FoEvRQaFNKa2IwRulPU7l3j2wVPp1gUJDKqzda6kdaA==

'. Reading option '-user-agent' ... matched as AVOption 'user-agent' with argument 'Periscope/2699 (iPhone; iOS 8.1.2; Scale/2.00)'. Reading option '-i' ... matched as input url with argument 'https://api.periscope.tv/api/v2/replayPlaylist.m3u8?agent=Periscope%2F2699+%28iPhone%3B+iOS+8.1.2%3B+Scale%2F2.00%29&broadcast_id=1BRJjvjbXDaJw&cookie=XsKKBHsiVXNlcklkIjoiMW1NRVBSbm5rdmxLRyIsIlNlc3Npb24iOiJ2V2pRQjNZa2tVZU1JXzFSX0gyd2thUUZjMllaX2t3dThJUlozclhZOWNFIiwiVmVyc2lvbiI6MX1FoEvRQaFNKa2IwRulPU7l3j2wVPp1gUJDKqzda6kdaA%3D%3D'. Reading option '-c' ... matched as option 'c' (codec name) with argument 'copy'. Reading option '-movflags' ... matched as AVOption 'movflags' with argument 'faststart'. Reading option '-pix_fmt' ... matched as option 'pix_fmt' (set pixel format) with argument 'yuv420p'. Reading option '-bsf:a' ... matched as option 'bsf' (A comma-separated list of bitstream filters) with argument 'aac_adtstoasc'. Reading option '-y' ... matched as option 'y' (overwrite output files) with argument '1'. Reading option 'Z:\openperi 1.9\videos\1mMEPRnnkvlKG (jkijk)\2019-05-21_21.40_jkjnjkk.mp4' ... matched as output url. Finished splitting the commandline. Parsing a group of options: global . Applying option loglevel (set logging level) with argument debug. Applying option y (overwrite output files) with argument 1. Successfully parsed a group of options. Parsing a group of options: input url https://api.periscope.tv/api/v2/replayPlaylist.m3u8?agent=Periscope%2F2699+%28iPhone%3B+iOS+8.1.2%3B+Scale%2F2.00%29&broadcast_id=1BRJjvjbXDaJw&cookie=XsKKBHsiVXNlcklkIjoiMW1NRVBSbm5rdmxLRyIsIlNlc3Npb24iOiJ2V2pRQjNZa2tVZU1JXzFSX0gyd2thUUZjMllaX2t3dThJUlozclhZOWNFIiwiVmVyc2lvbiI6MX1FoEvRQaFNKa2IwRulPU7l3j2wVPp1gUJDKqzda6kdaA%3D%3D. Successfully parsed a group of options. Opening an input file: https://api.periscope.tv/api/v2/replayPlaylist.m3u8?agent=Periscope%2F2699+%28iPhone%3B+iOS+8.1.2%3B+Scale%2F2.00%29&broadcast_id=1BRJjvjbXDaJw&cookie=XsKKBHsiVXNlcklkIjoiMW1NRVBSbm5rdmxLRyIsIlNlc3Npb24iOiJ2V2pRQjNZa2tVZU1JXzFSX0gyd2thUUZjMllaX2t3dThJUlozclhZOWNFIiwiVmVyc2lvbiI6MX1FoEvRQaFNKa2IwRulPU7l3j2wVPp1gUJDKqzda6kdaA%3D%3D. [NULL @ 00a14b40] Opening 'https://api.periscope.tv/api/v2/replayPlaylist.m3u8?agent=Periscope%2F2699+%28iPhone%3B+iOS+8.1.2%3B+Scale%2F2.00%29&broadcast_id=1BRJjvjbXDaJw&cookie=XsKKBHsiVXNlcklkIjoiMW1NRVBSbm5rdmxLRyIsIlNlc3Npb24iOiJ2V2pRQjNZa2tVZU1JXzFSX0gyd2thUUZjMllaX2t3dThJUlozclhZOWNFIiwiVmVyc2lvbiI6MX1FoEvRQaFNKa2IwRulPU7l3j2wVPp1gUJDKqzda6kdaA%3D%3D' for reading [https @ 00a151a0] Setting default whitelist 'http,https,tls,rtp,tcp,udp,crypto,httpproxy' [https @ 00a15520] the user-agent option is deprecated, please use user_agent option [https @ 00a151a0] request: GET /api/v2/replayPlaylist.m3u8?agent=Periscope%2F2699+%28iPhone%3B+iOS+8.1.2%3B+Scale%2F2.00%29&broadcast_id=1BRJjvjbXDaJw&cookie=XsKKBHsiVXNlcklkIjoiMW1NRVBSbm5rdmxLRyIsIlNlc3Npb24iOiJ2V2pRQjNZa2tVZU1JXzFSX0gyd2thUUZjMllaX2t3dThJUlozclhZOWNFIiwiVmVyc2lvbiI6MX1FoEvRQaFNKa2IwRulPU7l3j2wVPp1gUJDKqzda6kdaA%3D%3D HTTP/1.1

User-Agent: Periscope/2699 (iPhone; iOS 8.1.2; Scale/2.00)

Accept: /

Range: bytes=0-

Connection: close

Host: api.periscope.tv

Icy-MetaData: 1

Cookie: sid=XsKKBHsiVXNlcklkIjoiMW1NRVBSbm5rdmxLRyIsIlNlc3Npb24iOiJ2V2pRQjNZa2tVZU1JXzFSX0gyd2thUUZjMllaX2t3dThJUlozclhZOWNFIiwiVmVyc2lvbiI6MX1FoEvRQaFNKa2IwRulPU7l3j2wVPp1gUJDKqzda6kdaA==

[https @ 00a15520] the user-agent option is deprecated, please use user_agent option [https @ 00a151a0] request: GET /Transcoding/v1/hls/e381xtGd16OfLlmj9qnQgWBc-0aQFwQC0JR3pYpmQG-PH27aVPvA9vv4vnHUj5pl7ced1A8vH3Rc8kMEmnXQ/non_transcode/eu-central-1/periscope-replay-direct-prod-eu-central-1-private/pp_playlist_16888280009570098935.m3u8?type=replay HTTP/1.1

User-Agent: Periscope/2699 (iPhone; iOS 8.1.2; Scale/2.00)

Accept: /

Range: bytes=0-

Connection: close

Host: prod-fastly-eu-central-1.video.periscope.tv

Icy-MetaData: 1

Cookie: sid=XsKKBHsiVXNlcklkIjoiMW1NRVBSbm5rdmxLRyIsIlNlc3Npb24iOiJ2V2pRQjNZa2tVZU1JXzFSX0gyd2thUUZjMllaX2t3dThJUlozclhZOWNFIiwiVmVyc2lvbiI6MX1FoEvRQaFNKa2IwRulPU7l3j2wVPp1gUJDKqzda6kdaA==

[hls,applehttp @ 00a14b40] Format hls,applehttp probed with size=2048 and score=100 [hls,applehttp @ 00a14b40] HLS request for url 'https://prod-fastly-eu-central-1.video.periscope.tv/Transcoding/v1/hls/e381xtGd16O_fLlmj9qnQgWBc_-0aQFwQC0JR3pYpmQG-PH27aVPvA9vv4vnHUj5pl7ced1A8vH3Rc8kMEmnXQ/non_transcode/eu-central-1/periscope-replay-direct-prod-eu-central-1-private/k0_chunk_1558464027867993698_0_a.ts', offset 0, playlist 0 [hls,applehttp @ 00a14b40] Opening 'https://api.periscope.tv/api/v2/hlsEncryptionKey?stream_name=e381xtGd1O_fLlm9qnQgWBc_-0aQFwQC0JR3pYpmQG-PH27aVPvA9vv4vnUj5pl7ced1A8vH3Rc8kMEmnXQ' for reading [https @ 00a297a0] the user-agent option is deprecated, please use user_agent option [https @ 00a2dd60] request: GET /api/v2/hlsEncryptionKey?stream_name=e381xtGd16OfLlmj9qnQgWBc-0aQFwQC0JR3pYpmQG-PH27aVPvA9vv4vnHUj5pl7ced1A8vH3Rc8kMEmnXQ HTTP/1.1

User-Agent: Periscope/2699 (iPhone; iOS 8.1.2; Scale/2.00)

Accept: /

Connection: close

Host: api.periscope.tv

Icy-MetaData: 1

Cookie: sid=XsKKBHsiVXNlcklkIjoiMW1NRVBSbm5rdmxLRyIsIlNlc3Npb24iOiJ2V2pRQjNZa2tVZU1JXzFSX0gyd2thUUZjMllaX2t3dThJUlozclhZOWNFIiwiVmVyc2lvbiI6MX1FoEvRQaFNKa2IwRulPU7l3j2wVPp1gUJDKqzda6kdaA==

[AVIOContext @ 00a56f20] Statistics: 16 bytes read, 0 seeks [hls,applehttp @ 00a14b40] Opening 'crypto+https://prod-fastly-eu-central-1.video.periscope.tv/Transcoding/v1/hls/e381xtGd16O_fLlmj9qnQgWBc_-0aQFwQC0JR3pYpmQG-PH27aVPvA9vv4vnHUj5pl7ced1A8vH3Rc8kMEmnXQ/non_transcode/eu-central-1/periscope-replay-direct-prod-eu-central-1-private/k0_chunk_1558464027867993698_0_a.ts' for reading [hls,applehttp @ 00a14b40] Failed to open segment of playlist 0 [hls,applehttp @ 00a14b40] HLS request for url 'https://prod-fastly-eu-central-1.video.periscope.tv/Transcoding/v1/hls/e381xtGd16O_fLlmj9qnQgWBc_-0aQFwQC0JR3pYpmQG-PH27aVPvA9vv4vnHUj5pl7ced1A8vH3Rc8kMEmnXQ/non_transcode/eu-central-1/periscope-replay-direct-prod-eu-central-1-private/k0_chunk_1558464027868323597_1_a.ts', offset 0, playlist 0 [hls,applehttp @ 00a14b40] Opening 'crypto+https://prod-fastly-eu-central-1.video.periscope.tv/Transcoding/v1/hls/e381xtGd16O_fLlmj9qnQgWBc_-0aQFwQC0JR3pYpmQG-PH27aVPvA9vv4vnHUj5pl7ced1A8vH3Rc8kMEmnXQ/non_transcode/eu-central-1/periscope-replay-direct-prod-eu-central-1-private/k0_chunk_1558464027868323597_1_a.ts' for reading [hls,applehttp @ 00a14b40] Failed to open segment of playlist 0 [hls,applehttp @ 00a14b40] HLS request for url 'https://prod-fastly-eu-central-1.video.periscope.tv/Transcoding/v1/hls/e381xtGd16O_fLlmj9qnQgWBc_-0aQFwQC0JR3pYpmQG-PH27aVPvA9vv4vnHUj5pl7ced1A8vH3Rc8kMEmnXQ/non_transcode/eu-central-1/periscope-replay-direct-prod-eu-central-1-private/k0_chunk_1558464027869292319_2_a.ts', offset 0, playlist 0 [hls,applehttp @ 00a14b40] Opening 'crypto+https://prod-fastly-eu-central-1.video.periscope.tv/Transcoding/v1/hls/e381xtGd16O_fLlmj9qnQgWBc_-0aQFwQC0JR3pYpmQG-PH27aVPvA9vv4vnHUj5pl7ced1A8vH3Rc8kMEmnXQ/non_transcode/eu-central-1/periscope-replay-direct-prod-eu-central-1-private/k0_chunk_1558464027869292319_2_a.ts' for reading [hls,applehttp @ 00a14b40] Failed to open segment of playlist 0 [hls,applehttp @ 00a14b40] Error when loading first segment 'https://prod-fastly-eu-central-1.video.periscope.tv/Transcoding/v1/hls/e381xtGd16O_fLlmj9qnQgWBc_-0aQFwQC0JR3pYpmQG-PH27aVPvA9vv4vnHUj5pl7ced1A8vH3Rc8kMEmnXQ/non_transcode/eu-central-1/periscope-replay-direct-prod-eu-central-1-private/k0_chunk_1558464027867993698_0_a.ts' [AVIOContext @ 00a31700] Statistics: 1098 bytes read, 0 seeks https://api.periscope.tv/api/v2/replayPlaylist.m3u8?agent=Periscope%2F2699+%28iPhone%3B+iOS+8.1.2%3B+Scale%2F2.00%29&broadcast_id=1BRJjvjbXDaJw&cookie=XsKKBHsiVXNlcklkIjoiMW1NRVBSbm5rdmxLRyIsIlNlc3Npb24iOiJ2V2pRQjNZa2tVZU1JXzFSX0gyd2thUUZjMllaX2t3dThJUlozclhZOWNFIiwiVmVyc2lvbiI6MX1FoEvRQaFNKa2IwRulPU7l3j2wVPp1gUJDKqzda6kdaA%3D%3D: Invalid data found when processing input

kewalsk commented 5 years ago

You probably have old ffmpeg version. Try the current stable build, I'm using 4.1.3.

schammoona commented 5 years ago

You probably have old ffmpeg version. Try the current stable build, I'm using 4.1.3.

Sorry but I'm really noobie with these things. How do I set the Openperiscope to use the newer version? I downloaded it but I couldnt find that executable directly from openperi files.

kewalsk commented 5 years ago

Just download the build as zip file and extract it to the folder where you have OpenPeriscope installed (overwrite files there). Double check the version number in first line of logs (debug checkbox on).

schammoona commented 5 years ago

Just download the build as zip file and extract it to the folder where you have OpenPeriscope installed (overwrite files there). Double check the version number in first line of logs (debug checkbox on).

Hey!

There was nothing to overwrite! Here are pics how the installation folder looked at start: pericurrent

Here is how it looked after straight unpacking like you said: pericurrent1

And here's my stupid try to take the folders and files from the zip straight to the installation folder: pericurrent2

None of these changed anything when downloading a private vid!

Where have I gone wrong lol

kewalsk commented 5 years ago

OK. The important files are in bin folder, actually only one is needed - ffmpeg.exe, move it to the OpenPeriscope folder.

schammoona commented 5 years ago

OK. The important files are in bin folder, actually only one is needed - ffmpeg.exe, move it to the OpenPeriscope folder.

It's there now. Same log as earlier.

kewalsk commented 5 years ago

If your first line in logs is

ffmpeg version N-86877-g8e275a7 (OpenPeriscope set-up) Copyright (c) 2000-2017 the FFmpeg developers

then the old version of ffmpeg.exe is still in use. You should have something like:

ffmpeg version 4.1.3 Copyright (c) 2000-2019 the FFmpeg developers

if this is the case then find all ffmpeg.exe, delete them and then extract downloaded zip with static build and move ffmpeg.exe from bin folder to the OpenPeriscope folder. If this will not help then you are doing something wrong. You may try to download something after deleting ffmpeg.exe - it shouln't work at all:

FFMpeg not found. On Windows, place the static build into OpenPeriscope directory.

kewalsk commented 5 years ago

OK, I have checked it and this is true only for not release version. If you start OpenPeriscope.exe then it includes ffmpeg.exe inside and you cannot change it - sorry.

The only option I can see is to follow instruction to build application.

schammoona commented 5 years ago

I hope there's going to be a fix :P

alfabetico commented 5 years ago

why was released 1.9 version if this not work?

jh222 commented 5 years ago

I hope a fixed version is getting posted at some point. 1.9 isn't working.

schammoona commented 5 years ago

No updates on this matter yet?

humildade200000 commented 4 years ago

@Pmmlabs hey bro openperiscope live private OFF