SageTV Community

SageTV Community (http://forums.sagetv.com/forums/index.php)
-   SageTV for unRAID/Docker (http://forums.sagetv.com/forums/forumdisplay.php?f=59)
-   -   r5000 insists on recording to nonexistent var/media/tv? (http://forums.sagetv.com/forums/showthread.php?t=65074)

btrcp2000 10-08-2017 08:19 AM

r5000 insists on recording to nonexistent var/media/tv?
 
flipped the switch on my new unraid server last night, everything seems good except the r5000 boxes are looking to write to var/media/tv, which is not a directory. It should be unraid/sagemedia/tv, but I cannot find anywhere to change a setting like that, nor have i ever had to tell the r5000s where to go.

They are set up on a Windows7 VM (but NOT as part of a win7 sage network encoder setup), and the sage.prop in the docker is given the ip:port to find them. Sage was able to find and configure them without issue, but it cannot record.

I guess that directory is a standard one and cannot be changed, how can I workaround?

BobPhoenix 10-08-2017 08:32 AM

So you have two recording directories showing in SageTV Detailed Setup screen? /unraid/sagemedia/tv and /var/media/tv showing?

btrcp2000 10-08-2017 09:09 AM

No, just the var one. Thought about adding the other just to see what would happen, but figured i would touch base with smarter people first.

KarylFStein 10-08-2017 09:37 AM

The docker container maps certain directories within the docker like /var/media. By default /var/media inside the docker = /mnt/user/sagemedia on the server. In other words SageTV thinks it's writing to /var/media/tv but it's really writing to /mnt/user/sagemedia/tv. I don't know how the R5000s work, but if SageTV is handling writing the stream then you should be OK.

btrcp2000 10-08-2017 10:12 AM

1 Attachment(s)
I think I understand that, but it's definitely not usable as a sage tuner as it is not recording anything. The attached is what I am seeing on the VM

KarylFStein 10-08-2017 10:57 AM

Like I said, I don't know how the R5000s work. Are you running some capture software on a Windows VM and SageTV talks to that application telling it where to write the stream data? If so maybe you could modify the VM to mount the unRAID location /mnt/user/sagemedia/tv as C:\var\media\tv.

btrcp2000 10-08-2017 12:26 PM

LOL, me neither! It's always been magic to me.

Haven't tried this as this is now in production and it's football sunday, but what would happen if in sage.prop i changed this:

seeker/default_linux_recording_paths=/var/media/tv

to this:

seeker/default_linux_recording_paths=/UNRAID/sagemedia/tv

Just to bring you up to speed, here's what i know about how r5000 works. Yes, there is software on the win7 VM, which is what the screen shot is showing. If you look close, you can see in the two instances that the r5000 software is set to record to the C drive, but it has never actually used that, so i assumed that somehow sage just takes full control of it. in order for sage to find it, the lines below are manually pasted into properties, and are where some things are configured, but nothing jumps out to me that this issue is coming from the encoder config.

mmc/encoders/12346/1/0/available_channels=
mmc/encoders/12346/1/0/brightness=-1
mmc/encoders/12346/1/0/broadcast_standard=
mmc/encoders/12346/1/0/contrast=-1
mmc/encoders/12346/1/0/device_name=
mmc/encoders/12346/1/0/hue=-1
mmc/encoders/12346/1/0/last_channel=172
mmc/encoders/12346/1/0/provider_id=0
mmc/encoders/12346/1/0/saturation=-1
mmc/encoders/12346/1/0/sharpness=-1
mmc/encoders/12346/1/0/tuning_mode=
mmc/encoders/12346/1/0/tuning_plugin=
mmc/encoders/12346/1/0/tuning_plugin_port=0
mmc/encoders/12346/1/0/video_crossbar_index=0
mmc/encoders/12346/1/0/video_crossbar_type=1
mmc/encoders/12346/11/0/available_channels=
mmc/encoders/12346/11/0/brightness=-1
mmc/encoders/12346/11/0/broadcast_standard=
mmc/encoders/12346/11/0/contrast=-1
mmc/encoders/12346/11/0/device_name=
mmc/encoders/12346/11/0/hue=-1
mmc/encoders/12346/11/0/last_channel=181
mmc/encoders/12346/11/0/provider_id=4625944739122553707
mmc/encoders/12346/11/0/saturation=-1
mmc/encoders/12346/11/0/sharpness=-1
mmc/encoders/12346/11/0/tuning_mode=Cable
mmc/encoders/12346/11/0/tuning_plugin=
mmc/encoders/12346/11/0/tuning_plugin_port=0
mmc/encoders/12346/11/0/video_crossbar_index=0
mmc/encoders/12346/11/0/video_crossbar_type=11
mmc/encoders/12346/audio_capture_device_name=
mmc/encoders/12346/audio_capture_device_num=0
mmc/encoders/12346/capture_config=2058
mmc/encoders/12346/default_device_quality=
mmc/encoders/12346/delay_to_wait_after_tuning=0
mmc/encoders/12346/device_class=
mmc/encoders/12346/encoder_merit=10
mmc/encoders/12346/encoding_host=192.168.1.101\:6970
mmc/encoders/12346/encoding_host_login_md5=
mmc/encoders/12346/fast_network_encoder_switch=false
mmc/encoders/12346/forced_video_storage_path_prefix=
mmc/encoders/12346/last_cross_index=0
mmc/encoders/12346/last_cross_type=11
mmc/encoders/12346/live_audio_input=
mmc/encoders/12346/minimum_bitrate_error_threshold_bps=0
mmc/encoders/12346/multicast_host=
mmc/encoders/12346/never_stop_encoding=false
mmc/encoders/12346/video_capture_device_name=Dish \#1 523E
mmc/encoders/12346/video_capture_device_num=0
mmc/encoders/12346/video_compressor=
mmc/encoders/12346/video_encoding_params=Best

btrcp2000 10-08-2017 04:12 PM

Changed the recording path and the video storage path both to the new path as shown below. No error now but also not recording anything either. Hoping g to fix this, could be an unraid deal breaker since I am in a 2 yr dish contract

btrcp2000 10-08-2017 04:32 PM

Changed the recording path and the video storage path both to the new path as shown below. No error now but also not recording anything either. Hoping g to fix this, could be an unraid deal breaker since I am in a 2 yr dish contract

BobPhoenix 10-08-2017 05:11 PM

Don't think it has anything to do with R5000 per say. You just have something setup incorrectly. I had (and will again once I get my Colossus back to mostly reliable recordings again) a Colossus attached to an encoding VM and the rest of the tuners in an unRAID docker. I have another server where this is still the way I went for my HDPVRs since I get reliable 5.1 sound recordings from Windows but not the docker. I will be turning the Colossus one back once I get reliable HDMI recordings again. Looking like I need a new card currently - what fixed problem with first Colossus card on second currently and will likely be on third next week if latest change doesn't fix Colossus server.

I did setup a little differently.
  1. First and foremost I have no users defined on unRAID the shares are WIDE open. Guests can read/write/delete all files.
  2. I have recording drives outside of the array (the different part of the equation but shouldn't make a difference) and mounted with Unassigned Devices plugin with them auto mounted and shared.
  3. The mounts are /mnt/disks/Recording1, /mnt/disks/Recording2, /mnt/disks/Recording3.
  4. In the docker I have host path /mnt/disks assigned to "Path 2" - SageTV Media Directory (for recordings, etc).
  5. In SageTV properties I have recording paths of "/var/media/Recording1", "/var/media/Recording2" & "/var/media/Recording3".
  6. I removed the existing /var/media/??? entries from the recording directory property line and the default property line.
  7. Default line is blank so Sage won't force it back in the recording directories property line (not sure why linux is forced into this but Windows is not).
  8. Windows VM is running Win7 pro but should work with any version.
  9. Have Adminstrative user setup on Windows so that I can use it as the user in Service mode with SageTV.
  10. In SageTV on Windows I have the following recording directories defined. \\ServerName\Recording1, \\ServerName\Recording2, \\ServerName\Recording3.
  11. When I setup the Windows VM I added the Colossus as a tuner to the VM instance of SageTV so that I could test it out and make sure it was able to record before I connected the Docker SageTV to it.
  12. Set the property in SageTV VM to be an encoding server:"enable_encoding_server=true"
  13. Set the property in SageTV VM to "network_encoder_discovery=false" so that my HDHRs don't get shared out from the encoding server since unRAID docker picks them up natively.
  14. Left the VM setup with a tuner and recording directories even though I shouldn't need to leave the encoders defined and maybe not the recording directories either.
  15. Last I defined my Colossus to the docker SageTV. It records fine no problems recording to my shared recordings directories. But I get AAC audio ~50% of the time and Dolby Digital (like I want) the rest. The AAC audio doesn't play on my HD300s and the video is best described as stop motion video.
That is what I have two of my servers defined as not really sure what steps are required above and what are just quirks of how I wanted this to be setup. For instance you should be able to record directly to the array. I had that setup for a while but I like to have my recording drives separate from my array so that the array drives can spin down. I would record to my cache drive but don't want to ware out my SSDs too quickly (I record 1-2TB every 360 hours). I could setup a spinner mounted to the recording drive share on the cache drive so recordings go to the spinner and mover moves them to the array. But I have a lot of old drives available for recording drives that I would have to put into the array to provide enough storage. As it is I can go several months+ before the recording drives are full. Then I can add larger drives to the array and move the recordings to the array at that time - after I save the money to get the 8TB drives.


So long read (sorry about that) short. I'm sure you can get it to work just setup the VM to be independent first and get your R5000s recording correctly to the Recording drive(s)/directory you have defined on unRAID. Once you have the VM working then turn it into an encoding server and setup the unRAID SageTV docker to connect to IT.

btrcp2000 10-09-2017 08:22 AM

Thanks so much for all that detail. Unfortunately, I'm still stuck. I think the r5000 encoding software simply cannot deal with the fact that both var/media/tv and mnt/user/sagemedia/tv mean something entirely different in linux world vs Windows.

Here's what I have tried (disregard my comment about changing the path making the error go away. satellite had lost signal in a storm and wasn't producing any file at all).

Changing the both the container and host paths in Sage Docker to mnt/user/sagemedia/tv results in error on Win VM that it cannot find that path. This happens with or without a Sage instance acting as a network encoder on the Win VM (it is possible to point the Docker sage.prop directly to the networked tuners via the cut/paste mmc/encoder lines per nextcomwireless' instructions).

There has to be a way to make this work.

btrcp2000 10-09-2017 09:41 AM

Tried mapping the sagemedia/tv share to a drive on the Windows VM, and pointing sage.prop to it with this:

mmc/encoders/12347/forced_video_storage_path_prefix=R:\

Got a general playback failure and the encoder line was changed to this (including the reversed order of :\)

mmc/encoders/12347/forced_video_storage_path_prefix=R\:mmc/encoders/12347/last_cross_index\=0

symbolic link next, but I don't think the sage docker looks at any of these settings. it is somehow brute forcing sage to only look at /var/ directories, which the r5000 software can't see

BobPhoenix 10-09-2017 03:24 PM

Did you try to setup your Windows VM with the R5000 first. Setup the tuner in the VM instance of SageTV and setup recording directories in it first. Your recording director(y|ies) would be a UNC path in the Windows VM so: "\\unRAIDServerName\Share to record to".

Once you have it setup in your Windows VM and it records. THEN and only THEN set your property to be an encoding server on the Windows VM. Now connect to your docker and setup the R5000 in the docker. Hopefully if you follow this sequence it will work. Trying to do it ALL at once is most likely causing your problems.

Basically unless you can get it setup to work as a local recorder to the Windows VM and let SageTV Windows turn it into a network encoder I don't think you will get it to work.

btrcp2000 10-09-2017 06:26 PM

I don;t think I have tried that combo yet. I had not set the vm sage instance up to record to a drive. I thought docker sage would come to vm sage and somehow take over its tuner, but it sounds as though docker sage is supposed to tell vm sage what to record, and docker sage's wiz.bin will keep track of what was recorded and where it is?

Regardless, I can't experiment anymore until i figure out why the USB card disappeared entirely from the VM. It's the same one you helped me with earlier on the limetech forums (VIA Technologies, Inc. VL805 USB 3.0 Host Controller [1106:3483]). Still shows up in System Devices on unraid, and the vfio-pci line still appears in flash, but the VM doesn't see anything. Also tried plugging the r5000 into the motherboard's usb, which is seen by the libvirt hotplug tool, but no response form the VM when attached. Frustrating.

btrcp2000 10-09-2017 10:01 PM

I'm in a downward spiral now. Tried removing the vfio-pci line so I could reboot and add it back but now I can't even reach the web interface.

Fuzzy 10-10-2017 06:01 AM

You do NOT have to have an instance of sagetv running in the VM to act as a network encoder - the r5000hd software already acts as a network encoder. The issue is that sage simply passes the recording path that it wants the recording written to to the network encoder (in this case, as far as sage knows, that path is /var/media/tv/show-0123456.mpg). The r5000hd software get this, and tries to record to that file. Since /var/media/tv/ doesn't exist from the windows install, this doesn't work. I personally don't know how r5000hd.exe deals with that path - whether it tried writing to C:\var\media\tv, or C:\Program Files (x86)\nextcommwireless\var\media\tv, etc - not sure). What I do know, however, is that the r5000hd software DOES support recording to UNC paths. So, if you added your recording share as a UNC path to sage, and removed /var/media/tv, then it likely would work (sage would be sending //SERVER/SHARE/FOLDER/show-0123456.mpg to the network encoder, which it should be able to record to).

Removing /var/media/tv is currently blocked from within the UI (a restriction leftover from the original linux builds being for OEM systems), but after you add the UNC path recording folder, you should be able to stop it, and remove the /var/media/tv from the Sage.properties file.

btrcp2000 10-10-2017 06:45 PM

unraid up again. sure wish i knew what i did, but anyway...

First attempt with r5000 installed alone on the VM, no sage instance acting as networked encoder.

If I add a directory in the placeshifter UI by Specifying \\UNRAID\sagemedia\tv, it immediately gets adjusted to /opt/sagetv/server/\\UNRAID\sagemedia\tv

I have also seen this:

failed to open file for SageTV:
/tmp/sagetv_shares/unraid/sagemedia/tv/show-123456.mpg
error: system cannot find the file specified

btrcp2000 10-11-2017 09:42 AM

I have tried a million different things and I think the root issue comes down to the fact that Docker Sage insists on prepending stuff to the recording directory.

I currently have docker sage and windows VM sage, with both r5000 boxes installed to the windows VM. One of the boxes is set up as a localdomain tuner to WinVM Sage, and is able to record just fine. The other is setup as a networked encoder to Docker Sage. The recording path for WinVm Sage is \\UNRAID\sagemedia\tv and it stays that way. The path for Docker Sage is entered that way, but immediately gets prepended to "/opt/sagetv/server/\\UNRAID\sagemedia\tv", even if I stop docker sage and adjust the prop file, it will revert upon restarting.

Really seems like there should be a way to stop this, but I am out of ideas. I would be willing to pay someone to get me past this, whether it's fixing it as is, or something else entirely to get these boxes to work. Otherwise, I will need to give up on Unraid for a few years.

Anybody?

jusjoken 10-11-2017 12:28 PM

Have you tried changing that path in the properties directly or only in the UI?

k

btrcp2000 10-11-2017 12:40 PM

both. in the UI I have tried "specifying" and typing in \\UNRAID\sagemedia\tv, as well as using the Up navigation button to get to it, as well as editing sage.prop.


All times are GMT -6. The time now is 09:21 PM.

Powered by vBulletin® Version 3.8.7
Copyright ©2000 - 2019, vBulletin Solutions, Inc.
Copyright 2003-2005 SageTV, LLC. All rights reserved.