Hmm… I’ll take a look at this tonight.
I was not able to reproduce the problem. Setting tempfile.tempdir in my ~/surlatablo2.conf worked for me.
Ok… I did a bunch of testing. confdata is read and exec’d from the conf file. I can print data and conf info after reading from the file. All works fine. I can pull down recordings and transcode.
But as soon as I add the below line to the conf file the exec function doesnt work(as if the conf file doesnt exist). I get “First Things” banner and exit.
tempfile.tempdir = ‘/media/usb1/SurLaTablo/transcode’
Watch those single quotes. You need the normal single quote not the lquot rquot’s.
I tend to b think unless specify preformatted text - either </> from the menu or enclosing in back tick - it’s a Discourse thing.
Code Formatting
Inline code formatting
Surround a section of code with backticks (`) inline code formatting.
Typing:
`var x = 10;`
Results in:
var x = 10;
This can also be done as `var x = 10;` inline.
Present entire line as code by prefixing four (4) spaces (an extra newline before this)
Typing :
[1234]var this = “is a line”;
Results in :
var this = "is a line";
yep…missed that. Cut and paste error! Thx
btw, I’ve made the same “cut and paste” mistake from forums/websites so… so many times. And yet I still fight it for a bit instead of thinking of the “quote” problem first.
All works. But now I am struggling with zapping commercials. Has anyone used avconv on Rapsbian to do it? I also tried with a static version of FFMPEG on Raspbian. Every time it shows its removing commercials but then never creates the new file. I put the -strict -2 options in the conf file as below.
xcoders_list = [ ‘Mp4zap1’, ‘Mp4zap2’, ‘Mp4Wzap1’, ‘Mp4Wzap2’, ‘Mp4W’, ‘Mp4z’, ‘Mp4’, ‘Shrink’, ‘Glow’, ‘h265’ ]
for xcoder in xcoders_list:
if TRANSCODER_OPTS[xcoder][‘options’][0:2] != [ ‘-strict’, ‘-2’ ]:
TRANSCODER_OPTS[xcoder][‘options’][:0] = [ ‘-strict’, ‘-2’ ]
When I run the below :
./surlatablo-2.3.py -n -c --zapcommercials -k ‘/media/usb1/SurLaTablo/transcode’ -q Last\ Man\ Standing\ -\ s08e05 Mp4zap1
I get …
Preserved temporary (.ts) file location: [/media/usb1/SurLaTablo/transcode/TabloDA2GK2.ts]
Working on: [/media/usb1/media/TV/Last Man Standing/Season 8/Last Man Standing - s08e05 - The Office; Mysterious Ways]
Retrieving Tablo Data (1050501): [####################] 99% Elapsed seconds 210.0
Searching for commercials: [####################] 100% Elapsed seconds 2.0
Removing commercials (z1): [####################] 100% Elapsed seconds 0.0
Here is the output with -d.
./surlatablo-2.3.py -n -c -d --zapcommercials -k ‘/media/usb1/SurLaTablo/transcode’ -q Last\ Man\ Standing\ -\ s08e05 Mp4zap1
(1050501) Last Man Standing - s08e05 - The Office; Mysterious Ways
Thursday, January 16, 2020 at 07:00 PM
WFLD-DT(FOX) - 720p [1:01:17]
${genres}
Description:
Mike debates what to get Vanessa for a business anniversary gift; Kristin and
Mandy try to get out of Kyle's Outdoor Man HR orientation; Vanessa is secretly
obsessed with Jen's new video game.
Preserved temporary (.ts) file location: [/media/usb1/SurLaTablo/transcode/Tablo1ozy2a.ts]
Working on: [/media/usb1/media/TV/Last Man Standing/Season 8/Last Man Standing - s08e05 - The Office; Mysterious Ways]
[ /media/usb1/media/TV/Last Man Standing/Season 8/Last Man Standing - s08e05 - The Office; Mysterious Ways ]
RETRIEVE FROM TABLO
[ -> /media/usb1/SurLaTablo/transcode/Tablo1ozy2a.ts]
[’/usr/bin/avconv’, ‘-i’, ‘/media/usb1/SurLaTablo/transcode/Tablo1ozy2a.ts’, ‘-vf’, ‘blackdetect=d=.03:pic_th=1:pix_th=0.10’, ‘-an’, ‘-f’, ‘null’, ‘-’]
Mp4zap1
[’/usr/bin/avconv’, ‘-threads’, ‘auto’, ‘-i’, ‘/media/usb1/SurLaTablo/transcode/Tablo1ozy2a.ts’, ‘-strict’, ‘-2’, ‘-preset’, ‘ultrafast’, ‘-metadata:s:a:0’, ‘language=eng’, ‘-metadata’, ‘title=The Office; Mysterious Ways’, ‘-metadata’, ‘media_type=10’, ‘-metadata’, ‘album=Last Man Standing’, ‘-metadata’, ‘show=Last Man Standing’, ‘-metadata’, ‘season_number=8’, ‘-metadata’, ‘episode_sort=5’, ‘-metadata’, ‘episode_id=s08e05’, ‘-metadata’, ‘hd_video=1’, ‘-metadata’, ‘network=WFLD-DT’, ‘-metadata’, ‘genre=’, ‘-metadata’, “synopsis=Mike debates what to get Vanessa for a business anniversary gift; Kristin and Mandy try to get out of Kyle’s Outdoor Man HR orientation; Vanessa is secretly obsessed with Jen’s new video game.”, ‘-metadata’, “description=Mike debates what to get Vanessa for a business anniversary gift; Kristin and Mandy try to get out of Kyle’s Outdoor Man HR orientation; Vanessa is secretly obsessed with Jen’s new video game.”, ‘-metadata’, “comment=Mike debates what to get Vanessa for a business anniversary gift; Kristin and Mandy try to get out of Kyle’s Outdoor Man HR orientation; Vanessa is secretly obsessed with Jen’s new video game.”, u’/media/usb1/media/TV/Last Man Standing/Season 8/Last Man Standing - s08e05 - The Office; Mysterious Ways-z.mp4’]
After “Removing commercials”, there should have been the final ffmpeg full transcode to take the partial ts files and smoosh them together. It’s a full (time consuming) transcode. While not really a problem, --zapcommercials is redundant when using Mp4zap1 as a transcoder (the latter being the preferred way).
It is quite possible that it’s due to differences between ffmpeg and the old fork called avconv. Your “Searching for commercials” step was way too short time wise. It’s possible the problem begins there.
You can redirect the output of the non-debug run to a file. It will produce a lot of output. But might help identify the actual problem.
Here’s what I’d normally expect to see (I’m using something similar to the options you used):
surlatablo.py -n -y -q "Blacklist.*Brockton" --zapcommercials -k /mnt/media/tmp -c Mp4zap1
## (2013120) The Blacklist - s06e18 - The Brockton College Killer ##
Friday, April 26, 2019 at 07:00 PM
KXAS-DT(NBC) - 1080i [1:01:16]
Tablo: 192.168.1.203
Description:
The task force is drawn into the investigation of an old case that has gained
notoriety due to a popular true crime podcast; Red visits Dom Wilkinson for
help making a difficult decision; Ressler makes a discovery about Katarina
Rostova's past.
James Spader;Megan Boone;Diego Klattenhoff;Harry Lennix;Ryan Eggold;Mozhan Marnò;Hisham Tawfiq;Amir Arison
Preserved temporary (.ts) file location: [/mnt/media/tmp/TabloXoUkQU.ts]
Working on: [./TV/The Blacklist/Season 6/The Blacklist - s06e18 - The Brockton College Killer]
Retrieving Tablo Data (2013120): [####################] 100% Elapsed seconds 152.0
Searching for commercials: [####################] 100% Elapsed seconds 75.0
Removing commercials (z1): [####################] 100% Elapsed seconds 7.0
Transcoding (Mp4zap1, -z.mp4): [####################] 100% Elapsed seconds 123.0
Thanks! That definitely creates more output to review. It clearly does see the black detect for commercials. I never see more than 1x TS file created in the working directory. And I don’t see it putting the resulting TS files back together.
Stream mapping:
Stream #0:0 -> #0:0 (h264 (native) -> wrapped_avframe (native))
Press [q] to stop, [?] for help
Output #0, null, to ‘pipe:’:
Metadata:
encoder : Lavf58.35.102
Stream #0:0: Video: wrapped_avframe, yuv420p, 1280x720 [SAR 1:1 DAR 16:9], q=2-31, 200 kb/s, 29.97 fps, 29.97 tbn, 29.97 tbc
Metadata:
encoder : Lavc58.65.103 wrapped_avframe
[blackdetect @ 0x3b0c2f0] black_start:17.9179 black_end:18.7521 black_duration:0.834167
[blackdetect @ 0x3b0c2f0] black_start:23.7571 black_end:23.9573 black_duration:0.2002
[blackdetect @ 0x3b0c2f0] black_start:536.136 black_end:536.77 black_duration:0.633967
[blackdetect @ 0x3b0c2f0] black_start:597.063 black_end:597.13 black_duration:0.0667333
[blackdetect @ 0x3b0c2f0] black_start:597.163 black_end:597.197 black_duration:0.0333667
[blackdetect @ 0x3b0c2f0] black_start:597.23 black_end:597.297 black_duration:0.0667333
[blackdetect @ 0x3b0c2f0] black_start:611.744 black_end:611.778 black_duration:0.0333667
[blackdetect @ 0x3b0c2f0] black_start:626.759 black_end:626.793 black_duration:0.0333667
[blackdetect @ 0x3b0c2f0] black_start:676.743 black_end:676.976 black_duration:0.233567
[blackdetect @ 0x3b0c2f0] black_start:1082.41 black_end:1083.85 black_duration:1.43477
[blackdetect @ 0x3b0c2f0] black_start:1113.85 black_end:1113.88 black_duration:0.0333667
[blackdetect @ 0x3b0c2f0] black_start:1128.86 black_end:1128.89 black_duration:0.0333667
[blackdetect @ 0x3b0c2f0] black_start:1158.89 black_end:1158.99 black_duration:0.1001
[blackdetect @ 0x3b0c2f0] black_start:1258.76 black_end:1260.73 black_duration:1.96863
[blackdetect @ 0x3b0c2f0] black_start:1280.68 black_end:1280.81 black_duration:0.133467
[blackdetect @ 0x3b0c2f0] black_start:1615.98 black_end:1616.78 black_duration:0.8008
[blackdetect @ 0x3b0c2f0] black_start:1646.78 black_end:1646.81 black_duration:0.0333667
[blackdetect @ 0x3b0c2f0] black_start:1657.96 black_end:1658.02 black_duration:0.0667333
[blackdetect @ 0x3b0c2f0] black_start:1676.81 black_end:1676.84 black_duration:0.0333667
[blackdetect @ 0x3b0c2f0] black_start:1706.84 black_end:1706.87 black_duration:0.0333667
[blackdetect @ 0x3b0c2f0] black_start:1755.32 black_end:1755.49 black_duration:0.166833
[blackdetect @ 0x3b0c2f0] black_start:1771.74 black_end:1771.77 black_duration:0.0333667
[blackdetect @ 0x3b0c2f0] black_start:1776.84 black_end:1777.04 black_duration:0.2002
[blackdetect @ 0x3b0c2f0] black_start:1813.61 black_end:1814.11 black_duration:0.5005
[blackdetect @ 0x3b0c2f0] black_start:2299.76 black_end:2300.93 black_duration:1.16783
[blackdetect @ 0x3b0c2f0] black_start:2330.93 black_end:2330.96 black_duration:0.0333667
[blackdetect @ 0x3b0c2f0] black_start:2345.94 black_end:2346.01 black_duration:0.0667333
[blackdetect @ 0x3b0c2f0] black_start:2500.8 black_end:2503.77 black_duration:2.96963
[blackdetect @ 0x3b0c2f0] black_start:2523.72 black_end:2523.95 black_duration:0.233567
[blackdetect @ 0x3b0c2f0] black_start:2914.11 black_end:2914.81 black_duration:0.7007
[blackdetect @ 0x3b0c2f0] black_start:2944.81 black_end:2944.84 black_duration:0.0333667
[blackdetect @ 0x3b0c2f0] black_start:2974.84 black_end:2974.87 black_duration:0.0333667
[blackdetect @ 0x3b0c2f0] black_start:2989.85 black_end:2989.89 black_duration:0.0333667
[blackdetect @ 0x3b0c2f0] black_start:3004.87 black_end:3004.9 black_duration:0.0333667
[blackdetect @ 0x3b0c2f0] black_start:3034.83 black_end:3034.87 black_duration:0.0333667
[blackdetect @ 0x3b0c2f0] black_start:3044.84 black_end:3046.64 black_duration:1.8018
[blackdetect @ 0x3b0c2f0] black_start:3053.45 black_end:3053.48 black_duration:0.0333667
[blackdetect @ 0x3b0c2f0] black_start:3056.59 black_end:3056.62 black_duration:0.0333667
[blackdetect @ 0x3b0c2f0] black_start:3057.29 black_end:3057.32 black_duration:0.0333667
[blackdetect @ 0x3b0c2f0] black_start:3061.59 black_end:3061.79 black_duration:0.2002
[blackdetect @ 0x3b0c2f0] black_start:3384.88 black_end:3385.68 black_duration:0.8008
[blackdetect @ 0x3b0c2f0] black_start:3445.64 black_end:3445.68 black_duration:0.0333667
[blackdetect @ 0x3b0c2f0] black_start:3475.67 black_end:3475.71 black_duration:0.0333667
[blackdetect @ 0x3b0c2f0] black_start:3490.69 black_end:3490.72 black_duration:0.0333667
[blackdetect @ 0x3b0c2f0] black_start:3520.65 black_end:3520.75 black_duration:0.1001
[blackdetect @ 0x3b0c2f0] black_start:3617.38 black_end:3618.78 black_duration:1.4014
[blackdetect @ 0x3b0c2f0] black_start:3622.79 black_end:3623.85 black_duration:1.06773
frame=110170 fps= 67 q=-0.0 Lsize=N/A time=01:01:16.00 bitrate=N/A speed=2.22x
video:43896kB audio:0kB subtitle:0kB other streams:0kB global headers:0kB muxing overhead: unknown
Elapsed seconds 1657.0
[(‘0’, ‘0’, ‘.00001’), (‘17.9179’, ‘18.7521’, ‘0.834167’), (‘23.7571’, ‘23.9573’, ‘0.2002’), (‘536.136’, ‘536.77’, ‘0.633967’), (‘597.063’, ‘597.13’, ‘0.0667333’), (‘597.163’, ‘597.197’, ‘0.0333667’), (‘597.23’, ‘597.297’, ‘0.0667333’), (‘611.744’, ‘611.778’, ‘0.0333667’), (‘626.759’, ‘626.793’, ‘0.0333667’), (‘676.743’, ‘676.976’, ‘0.233567’), (‘1082.41’, ‘1083.85’, ‘1.43477’), (‘1113.85’, ‘1113.88’, ‘0.0333667’), (‘1128.86’, ‘1128.89’, ‘0.0333667’), (‘1158.89’, ‘1158.99’, ‘0.1001’), (‘1258.76’, ‘1260.73’, ‘1.96863’), (‘1280.68’, ‘1280.81’, ‘0.133467’), (‘1615.98’, ‘1616.78’, ‘0.8008’), (‘1646.78’, ‘1646.81’, ‘0.0333667’), (‘1657.96’, ‘1658.02’, ‘0.0667333’), (‘1676.81’, ‘1676.84’, ‘0.0333667’), (‘1706.84’, ‘1706.87’, ‘0.0333667’), (‘1755.32’, ‘1755.49’, ‘0.166833’), (‘1771.74’, ‘1771.77’, ‘0.0333667’), (‘1776.84’, ‘1777.04’, ‘0.2002’), (‘1813.61’, ‘1814.11’, ‘0.5005’), (‘2299.76’, ‘2300.93’, ‘1.16783’), (‘2330.93’, ‘2330.96’, ‘0.0333667’), (‘2345.94’, ‘2346.01’, ‘0.0667333’), (‘2500.8’, ‘2503.77’, ‘2.96963’), (‘2523.72’, ‘2523.95’, ‘0.233567’), (‘2914.11’, ‘2914.81’, ‘0.7007’), (‘2944.81’, ‘2944.84’, ‘0.0333667’), (‘2974.84’, ‘2974.87’, ‘0.0333667’), (‘2989.85’, ‘2989.89’, ‘0.0333667’), (‘3004.87’, ‘3004.9’, ‘0.0333667’), (‘3034.83’, ‘3034.87’, ‘0.0333667’), (‘3044.84’, ‘3046.64’, ‘1.8018’), (‘3053.45’, ‘3053.48’, ‘0.0333667’), (‘3056.59’, ‘3056.62’, ‘0.0333667’), (‘3057.29’, ‘3057.32’, ‘0.0333667’), (‘3061.59’, ‘3061.79’, ‘0.2002’), (‘3384.88’, ‘3385.68’, ‘0.8008’), (‘3445.64’, ‘3445.68’, ‘0.0333667’), (‘3475.67’, ‘3475.71’, ‘0.0333667’), (‘3490.69’, ‘3490.72’, ‘0.0333667’), (‘3520.65’, ‘3520.75’, ‘0.1001’), (‘3617.38’, ‘3618.78’, ‘1.4014’), (‘3622.79’, ‘3623.85’, ‘1.06773’), (‘3677’, ‘3677’, ‘.00001’)]
Elapsed seconds 504.0
Mp4zap1
[’/usr/local/bin/ffmpeg’, ‘-threads’, ‘auto’, ‘-i’, ‘/media/usb1/SurLaTablo/transcode/TabloR1tYQf.ts’, ‘-strict’, ‘-2’, ‘-preset’, ‘ultrafast’, ‘-metadata:s:a:0’, ‘language=eng’, ‘-metadata’, ‘title=The Office; Mysterious Ways’, ‘-metadata’, ‘media_type=10’, ‘-metadata’, ‘album=Last Man Standing’, ‘-metadata’, ‘show=Last Man Standing’, ‘-metadata’, ‘season_number=8’, ‘-metadata’, ‘episode_sort=5’, ‘-metadata’, ‘episode_id=s08e05’, ‘-metadata’, ‘hd_video=1’, ‘-metadata’, ‘network=WFLD-DT’, ‘-metadata’, ‘genre=’, ‘-metadata’, “synopsis=Mike debates what to get Vanessa for a business anniversary gift; Kristin and Mandy try to get out of Kyle’s Outdoor Man HR orientation; Vanessa is secretly obsessed with Jen’s new video game.”, ‘-metadata’, “description=Mike debates what to get Vanessa for a business anniversary gift; Kristin and Mandy try to get out of Kyle’s Outdoor Man HR orientation; Vanessa is secretly obsessed with Jen’s new video game.”, ‘-metadata’, “comment=Mike debates what to get Vanessa for a business anniversary gift; Kristin and Mandy try to get out of Kyle’s Outdoor Man HR orientation; Vanessa is secretly obsessed with Jen’s new video game.”, u’/media/usb1/media/TV/Last Man Standing/Season 8/Last Man Standing - s08e05 - The Office; Mysterious Ways-z.mp4’]
ffmpeg version N-51386-gb55c6b8c40-static https://johnvansickle.com/ffmpeg/ Copyright © 2000-2020 the FFmpeg developers
built with gcc 6.3.0 (Debian 6.3.0-18+deb9u1) 20170516
configuration: --enable-gpl --enable-version3 --enable-static --disable-debug --disable-ffplay --disable-indev=sndio --disable-outdev=sndio --cc=gcc-6 --enable-fontconfig --enable-frei0r --enable-gnutls --enable-gmp --enable-libgme --enable-gray --enable-libfribidi --enable-libass --enable-libfreetype --enable-libmp3lame --enable-libopencore-amrnb --enable-libopencore-amrwb --enable-librubberband --enable-libsoxr --enable-libspeex --enable-libsrt --enable-libvorbis --enable-libopus --enable-libtheora --enable-libvidstab --enable-libvo-amrwbenc --enable-libvpx --enable-libwebp --enable-libx264 --enable-libxml2 --enable-libxvid --enable-libzimg
libavutil 56. 38.100 / 56. 38.100
libavcodec 58. 65.103 / 58. 65.103
libavformat 58. 35.102 / 58. 35.102
libavdevice 58. 9.103 / 58. 9.103
libavfilter 7. 71.100 / 7. 71.100
libswscale 5. 6.100 / 5. 6.100
libswresample 3. 6.100 / 3. 6.100
libpostproc 55. 6.100 / 55. 6.100
Elapsed seconds 0.0
Hmmm… thanks for capturing the output. I wasn’t able to find anything last night, but will continue to poke at this as I’m able.
I redid with FFMPEG 4.2.2.(static). Similar results but this time i have a -zap.ts file in the transcode directory.
ls transcode/
TabloACWtfY-zap.ts TabloBXcA0p.ts
but it is empty…
rw-r–r-- 1 pwade pwade 0 Jan 28 10:00 TabloACWtfY-zap.ts
-rw-r–r-- 1 pwade pwade 1149973252 Jan 28 10:40 TabloBXcA0p.ts
Is your tempdir space big enough to hold a few copies of the full ts?
A couple of days ago I suddenly started seeing errors when trying to retrieve shows from Tablo. The same kind of error shows up for different kind of shows. There doesn’t seem to be anything they have in common. It doesn’t always happen but more and more shows fail to download with this error.
Traceback (most recent call last):
File “/mnt/HD/HD_a2/Tablo/scripts/surlatablo.py”, line 3285, in
doConvert(sl, options, basedirs, filename_pats, transcoder_names)
File “/mnt/HD/HD_a2/Tablo/scripts/surlatablo.py”, line 1849, in doConvert
ts_url = ts_url.format(ts)
UnicodeDecodeError: ‘ascii’ codec can’t decode byte 0x9c in position 21: ordinal not in range(128)
I’m wondering what may have changed. I’ve been using surlatablo 2.3 for months without any issue.
I’ve seen issues in applications elsewhere and apps here when programs have extended ASCII or ucode characters in titles or descriptions.
Particularly the em dash is a pita
Generally speaking, SurLaTablo does ok with this (dumbing things way down for non-Linux platforms especially). So… help to know the metadata. Not terribly hard. If you know the show and can get the line out of the SurLaTablo cache database. Then I can at least replicate the issue on my end and find out where there’s a fix I need to put into place.
Not sure where the cache db is on linux but I can run the -i option to get the metadata as well, right?
“/recordings/series/seasons/1840596”: {
“object_id”: 1840596,
“path”: “/recordings/series/seasons/1840596”,
“season”: {
“name”: “5”,
“number”: 5
},
“season_counts”: {
“airing_count”: 0,
“failed_count”: 0,
“protected_count”: 0,
“unwatched_count”: 0,
“watched_and_protected_count”: 0
},
“series_path”: “/recordings/series/1493853”
},
“/recordings/series/episodes/1895193”: {
“airing_details”: {
“channel”: {
“channel”: {
“call_sign”: “KPIX-TV”,
“call_sign_src”: “KPIX-TV”,
“major”: 5,
“minor”: 1,
“network”: “CBS”,
“resolution”: “hd_1080”
},
“object_id”: 1624712,
“path”: “/recordings/channels/1624712”
},
“channel_path”: “/recordings/channels/1624712”,
“datetime”: “2020-01-28T08:37Z”,
“duration”: 3600,
“show_title”: “The Late Late Show With James Corden”
},
“episode”: {
“description”: “Sting talks and performs; actress Caitriona Balfe.”,
“number”: 64,
“orig_air_date”: “2020-01-27”,
“season_number”: 5,
“title”: “Sting; Caitriona Balfe”,
“tms_id”: “EP019952930737”
},
“object_id”: 1895193,
“path”: “/recordings/series/episodes/1895193”,
“qualifiers”: [
“cc”
],
“season_path”: “/recordings/series/seasons/1840596”,
“series_path”: “/recordings/series/1493853”,
“snapshot_image”: {
“has_title”: false,
“image_id”: 1905679
},
“user_info”: {
“position”: 0,
“protected”: false,
“watched”: false
},
“video_details”: {
“airing_offsets”: {
“end”: -120,
“source”: “show”,
“start”: 0
},
“audio”: “aac”,
“clean”: true,
“cloud”: false,
“comskip”: {
“error”: null,
“state”: “processing”
},
“duration”: 3557,
“error”: null,
“height”: 720,
“recorded_offsets”: {
“end”: -56,
“start”: -15
},
“schedule_offsets”: {
“deprecated”: true,
“end”: -56,
“start”: -15
},
“seek”: 15,
“size”: 1699487744,
“state”: “finished”,
“uploading”: false,
“warnings”: ,
“width”: 1280
}
},
“/recordings/series/1493853”: {
“genres”: [
“Talk”,
“Comedy”
],
“guide_path”: “/guide/series/245054”,
“keep”: {
“count”: null,
“rule”: “none”
},
“object_id”: 1493853,
“path”: “/recordings/series/1493853”,
“series”: {
“awards”: ,
“background_image”: {
“has_title”: false,
“image_id”: 1847455
},
“cast”: [
“James Corden”
],
“cover_image”: {
“has_title”: true,
“image_id”: 1847454
},
“description”: “Broadway, television and film star James Corden takes over the reins of the late-late-night franchise at CBS from fellow U.K. import Craig Ferguson. The British performer \u2014 whose previous hosting gigs include five years of The Brit Awards \u2014 puts his charm, warmth and creative instincts to use as he interviews celebrities and newsmakers, and hosts musical performances in his post-"Late Show" time slot.”,
“episode_runtime”: 3600,
“orig_air_date”: “2015-03-23”,
“series_rating”: “tv14”,
“thumbnail_image”: {
“has_title”: true,
“image_id”: 1847453
},
“title”: “The Late Late Show With James Corden”,
“tms_id”: “SH019952930000”,
“tms_series_id”: “11060317”
},
“show_counts”: {
“airing_count”: 5,
“failed_count”: 0,
“protected_count”: 0,
“unwatched_count”: 5,
“watched_and_protected_count”: 0
},
“user_info”: {
“up_next”: “/recordings/series/episodes/1893002”
}
},
My guess based on that is the “description” … I’ll have to look into this tonight.
The dreaded em dash
Python source code u"\u2014"
Copied and Pasted from the description for The Late Late Show With James Corden it has those silly long dashes in there.
The British performer — whose previous hosting gigs include five years of The Brit Awards — puts his charm, warmth and creative instincts to use as he interviews celebrities and newsmakers, and hosts musical performances in his post-“Late Show” time slot.
The \u2014 is presumably an escape sequence not getting translated, or getting translated when it shouldn’t :shrug:
It may not be the \u2014 character because I have other shows successfully downloaded with the same character in the description.