0

ここでは、Microsoft のサンプル アプリを使用しています。

http://msdn.microsoft.com/en-us/library/hh394041(v=vs.92).aspx

ユーザーがアプリ内の複数のビデオをコレクションに記録できるようにするアプリを開発するための出発点として。

これを達成するための最良の方法は何ですか?この例では、fileSink オブジェクトを使用して、分離ストレージ内のキャプチャ ソースとファイル名を指定していることに気付きました。

 Private Sub StartVideoRecording()
    Try
        ' Connect fileSink to captureSource.
        If captureSource.VideoCaptureDevice IsNot Nothing AndAlso captureSource.State = CaptureState.Started Then
            captureSource.Stop()

            ' Connect the input and output of fileSink.
            fileSink.CaptureSource = captureSource
            fileSink.IsolatedStorageFileName = isoVideoFileName
        End If

        ' Begin recording.
        If captureSource.VideoCaptureDevice IsNot Nothing AndAlso captureSource.State = CaptureState.Stopped Then
            captureSource.Start()
        End If

        ' Set the button states and the message.
        UpdateUI(ButtonState.Recording, "Recording...")

        ' If recording fails, display an error.
    Catch e As Exception
        Me.Dispatcher.BeginInvoke(Sub() txtDebug.Text = "ERROR: " & e.Message.ToString())
    End Try
End Sub

次に、そのコレクションをクエリして、ユーザーがそのビデオを選択してリストビューで表示できるようにするにはどうすればよいでしょうか? 動画ファイルを整理しておくためのフォルダを指定する方法はありませんか?

これを行うためのベストプラクティスに関するアドバイスを探しています。ユーザーがフォト ロールからビデオを選択できるようにするビデオ チューザーを使用したかったのですが、Windows Phone では現在これが許可されていません。

4

1 に答える 1

1

さて、フォルダを使用する必要はありますか?誰もISOストレージを閲覧できないので、フォルダは必要ないと思います:)。

このチュートリアルを使用して、「CameraMovie.mp4」と「CameraMovie.mp4.jpg」の2つのファイルが作成されます(jpgは少なくとも私の電話で作成されます。ISEToolを使用してISOストレージのコンテンツを確認してください)。

複数のビデオを録画するには、毎回ファイル名の名前を変更する必要があります

private string isoVideoFileName = "CameraMovie.mp4";

// reset the name when the recording starts
isoVideoFileName = DateTime.Now.ToString("yyyy-MM-dd_HH_mm") + ".mp4";

録音を開始するときにその変数を変更するだけです。

各録画の最後に、ビデオの名前をリストに追加します。ビデオが追加されたら、リストを(ISOストレージにも)保存します。アプリの読み込み中に、ISOからリストを読み込み、jpgを使用してビデオタイルを作成します(または、それを使用したい場合;))

まだ解決策を見つけていない場合でも、これが少し前向きになることを願っています。

VBを使用しているのに対し、C#を使用して申し訳ありません。しかし、それは私がそれを自由にタイプするのに十分なほどVBを知らないということです;)

于 2013-01-24T00:39:56.643 に答える